Repository navigation
Welcome actions and sample download entry design (#291, #292) - #299
Conversation
Welcome: Create Archive is the prominent trailing action beside Open Archive at one width; Settings moves out of the drop zone to a quiet footer control. Tooltips name the shortcuts, keyboard focus starts on Create, a third fallback keeps both actions on a short window, and the actions fade in place while a drag is over the zone. Sample: Download Sample Archive moves from File (and its Shift-Command-O shortcut) to Help beside Sample Credits and Licenses; Welcome to Stow captions that the browser saves the ZIP. Routing is unchanged. DESIGN.md records both and supersedes the Try the Sample guidance. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
User feedback on #291: Settings suits the top-right corner, and a text label there felt uncoordinated. The footer "Settings…" control is gone; a quiet gear now sits in the top-trailing corner at the traffic lights' vertical centre, its glyph inset from the trailing edge as the close button is from the leading edge (measured from the window's own close button). The glyph matches a traffic light's 14 pt; the hover circle is 22 pt, with a hairline ring under Increase Contrast. It keeps the "Settings…" accessibility name, the ⌘, tooltip and a focus ring. Open and Create Archive are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
# Conflicts: # Resources/Localizable.xcstrings
skyswordw
left a comment
There was a problem hiding this comment.
Functional review completed with no blocking findings. Welcome Create and the menu routes share one guarded draft; Settings uses the existing router and retains its accessible name. The Help sample action remains explicit browser routing with the password-prompt gate. Removing the old Shift-Command-O sample shortcut is accepted as the explicitly documented behavior change; Command-O/Command-N remain unchanged.
The integrated tree passed 687 tests and complete zh-Hans export. CUA/AX confirmed Welcome Create reaches the real draft, and the combined Welcome snapshot was inspected. Catalog conflict resolution retained the new entries from both draft and Welcome designs. Full Keyboard Access/system-display refinements and signed lifecycle integration remain tracked in #38/#104; no VoiceOver test is claimed. Claude Code owns design/motion, Codex the routing/integration review.
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.Claude Code's visual design for #291 (Welcome hierarchy) and the secondary-entry presentation for #292 (sample download). Functional foundation: #295.
Ownership per AGENTS.md: Claude Code owns this layout, hierarchy, copy presentation and motion. Codex / Grok Bot own the routing, draft guards, packaging and tests underneath, which this PR does not change. No functional or native acceptance is claimed here.
Welcome (#291)
defaultFocus).Revision after user feedback: the first version of this PR put "⚙ Settings…" in a bottom-leading footer. The user preferred the top-right corner and found a text label there uncoordinated, so the footer is gone (
fc99348). Open Archive… and Create Archive… stay exactly as they were, as the user confirmed.Sample entry (#292)
Behaviour changes (please review)
AppState.downloadSample()) and its disable rule while a password prompt is up, now under Help. If you want the shortcut back, re-add.keyboardShortcut("o", modifiers: [.command, .shift])to the Help item.Routing, packaging,
beginNewArchive()(one draft on repeated clicks, no replacement of unsaved work), the Settings router (SettingsRouter.shared.show(.general)) and the Release sample exclusion are all unchanged.ArchiveDraftView/PackSheet, Tray settings and Browser search are untouched.Strings and docs
Screenshots
Welcome, no history
Welcome with Recent
Welcome to Stow (sample entry)
Increase Contrast + Reduce Transparency (Stow overrides)
Captured with
scripts/snapshot.shfrom the Debug build (-AppleLanguages "(zh-Hans)",-StowIncreaseContrast YES -StowReduceTransparency YES). The onboarding window is unchanged by the gear revision and shows inactive in its capture.Validation
ArchiveWindowModeTests,OpeningWindowTestsandSourceReadAccessTests— 29 tests passed. The later glyph-size changes are presentation constants only.scripts/check-localizations.sh zh-Hans: 0 of 1,237 strings missing.project.ymlchange.Not verified: a real drag-over (the fade is in code, not captured), Full Keyboard Access initial focus and tab order, the gear's hover state on screen, and a physically short window (Welcome is fixed at 640 × 600; the fallbacks are checked in the tightest populated-Recent state). System controls follow Increase Contrast / Reduce Transparency themselves. VoiceOver remains deferred under #93.
🤖 Generated with Claude Code