Repository navigation
Design: Search Close reads apart from Clear (#294) - #298
Conversation
Clear stays the system field's filled circle inside the text, shown only with a query. Close sits past a hairline at the capsule's trailing end in every state, so it never moves and never reads as a second Clear. Both share a quiet icon style (secondary until hovered, 18 x 22 pt hit area, no hover animation). Close/Clear/focus behaviour from #295 is unchanged. Adds the `search-open` demo scene (Search opened by Command-F, nothing typed). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
# Conflicts: # README.md
skyswordw
left a comment
There was a problem hiding this comment.
Functional review completed with no blocking findings. Clear/Close remain separate controls with distinct names and glyphs; the background-only focus gesture, existing IME Escape guard and focus cancellation remain intact. README merge resolution preserves both this PR’s search-open scene and #297’s draft scenes.
In the integrated ad-hoc app, Command-F opened Search, a no-result query filtered the list, Clear kept Search focused, and Close on a nonempty query restored files and allowed arrow-key selection. The Search snapshot was also inspected. Full suite: 687 passed, no skips/failures; localization complete. Actual Pinyin/Kana composition remains a bounded follow-up in #38, not a claimed test. Claude Code owns control treatment/motion; Codex owns functional semantics.
Integrated validation
Merged into
mainin sequence #295–#300. Final main commit7c5393672d028f31bc76f83911a02e1407a53cf7has the same file tree as tested integration commit8fb4dda. Full local validation passed 687 tests in 102 suites with zero failures/skips, 0/1,261 missing zh-Hans strings, unchanged generated plists and clean diff checks. Bounded native CUA/AX draft creation and Search Clear/Close checks passed, including independent ZIP byte verification; this is not VoiceOver testing. See the review comment for scope and remaining native checks. Final main CI and the integrated #300 snapshot run supersede cancelled intermediate reruns.Refs #294 (parent #286). Functional foundation: #295.
What changed
#295 added a working Close Search control, but with a query the field showed two × glyphs side by side (Clear's filled circle and Close's plain ×), and Close was drawn heavier than Clear.
SearchWidthMotion; Esc and Reduce Motion close at once, as before.search-open(Search opened by ⌘F, nothing typed). DESIGN.md › Title bar describes the two controls.No behaviour change. Close/Clear/focus semantics, the background-only refocus gesture, the IME Escape guard, the explicit Search name and accessibility labels from #295 are untouched. No new strings.
Screenshots
Checks
scripts/check-localizations.sh zh-Hans: 0 of 1,232 strings missing.searchandsearch-open, light/dark; a narrow window keeps the text room.Ownership: Claude Code owns this treatment and placement. Codex / Grok Bot keep the close/clear/focus semantics and race tests from #295. #294 stays open for its functional owner.
🤖 Generated with Claude Code