From 675b3aa2480cb38131eb7bcc6acf62825c6d480b Mon Sep 17 00:00:00 2001 From: Bryan Van Deusen Date: Thu, 23 Jul 2026 13:59:23 -0400 Subject: [PATCH] Capture UX: "+ New" header button + type-to-compose (two-mode board keys) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Live-pass feedback: the wide "Take a note…" bar showed through behind the compose modal and felt redundant. Per operator choice, remove the bar and make capture header-button + keyboard driven. - Removed the board's inline "Take a note…" trigger bar. - AppShell gains a "+ New" header button (next to search) — navigates to the board if needed, then opens the compose modal. The `c` shortcut now does the same (unified with newNote()). - Type-to-compose: on the board with no card focused, any other single printable key opens a new note SEEDED with that key (AppShell onKeydown fall-through, after the reserved / c ? g shortcuts). Seed travels via ui.composeSeed → NoteEditor's new `initialBody` prop; caret placed at end. - Two-mode board keyboard (BoardView): RESTING = arrows enter browse, letters type-to-compose; BROWSING (a card focused) = j/k move, e/x/# act, Enter opens, Esc exits to resting. ui.boardCardFocused tells the global handler to stand down while browsing so it doesn't swallow card keys. - Updated the shortcuts help + the empty-state copy ("Hit + New — or just start typing"). Co-Authored-By: Claude Opus 4.8 (1M context) Claude-Session: https://claude.ai/code/session_01FRgehjoz7Yv8LkUfADxACm --- frontend/src/components/AppShell.vue | 42 ++++++++++++++++++------- frontend/src/components/NoteEditor.vue | 10 ++++-- frontend/src/stores/ui.ts | 21 +++++++++++-- frontend/src/views/BoardView.vue | 43 +++++++++++++++++--------- 4 files changed, 83 insertions(+), 33 deletions(-) diff --git a/frontend/src/components/AppShell.vue b/frontend/src/components/AppShell.vue index e4d0168..eeee2d6 100644 --- a/frontend/src/components/AppShell.vue +++ b/frontend/src/components/AppShell.vue @@ -1,5 +1,5 @@