Repository navigation
Command jump to a place or an owned pad #254
Description
Parent
#249 Deepen the installed PWA. Sibling of #247–#253. Not blocked by them.
What to build
Add Command jump: a typed go-to list, like Notion’s jump palette. It is not Mac Spotlight. It does not search the computer, chat, or pad body.
A pick opens an existing place, or an owned pad. It does not insert a block. It does not run Filter or Find.
Acceptance criteria
- Desktop Home and pad:
Mod+Shift+Kopens and closes Command jump. -
Mod-kstill opens Hyperlink create on the pad.Mod-f,Mod+/,Mod+\, andMod-pstay as they are. - Escape closes the list. If another confirm dialog is open, the chord does nothing.
- The list is a named dialog. It uses no new hash. It does not sit on
GlobalDialog(that bus is App keyboard shortcuts: theme flip and a help dialog #175 help). - Typing filters place names and Pad title. A pick opens that place or pad and closes the list.
- Place rows, when that surface exists on the route: History, Documents, Profile, Appearance, Security, Settings, Filter, Find, Notifications, New document, Demo.
- Find opens the Find text in the open pad #250 bar when that bar exists. Hide Find until then. Do not open Filter for Find.
- Notifications opens the pad notification panel. It does not open Settings → Notifications.
- Documents and Settings tabs call the existing Settings openers. History writes
#historyon a live pad. - New document goes to
/new. Demo goes to/demo. - Signed-in: the list can show Owner live list pads from the existing owner GET. Favorites first, then Last opened. Search may send
title=. First page only. Favorite star is display only. - Pads the user does not own never appear. Trash never appears. No visit table.
- Signed-out Home: New document and Demo only.
- Signed-in Home: Settings rows, New document, Demo, owned pads. No History, Filter, Find, or Notifications.
- Signed-out pad: History, Filter, Find when it exists, New document, Demo.
- No host on
/privacy,/terms,/unsubscribe,/editor, or the Private gate. - Phone: no new toolbar or header control in this slice.
- Do not add this chord to the App keyboard shortcuts: theme flip and a help dialog #175 help table.
Agent Brief
Category: enhancement
Summary: Notion-style jump to a named place or an owned pad. Not Spotlight. Not find. Not slash.
Current behavior:
History, Settings, Filter, Notifications, and Documents each have their own button or hash. There is no typed jump list.
Mod-k is Hyperlink create. Chrome and Safari also use Mod-k for the location field. Mod-p is Print. #175 owns Mod+/ and Mod+\. #250 will own Mod-f.
#settings and #notifications are the only overlay hashes. #history is a view. Do not add a jump hash.
The Owner live list is GET /documents?ownerId= with the session token. Last opened is owner-only. There is no “pads I visited” API.
Desired behavior:
Open a dialog. Filter as the user types. A pick calls the opener that already exists for that place.
This is Notion jump, not Spotlight. Spotlight needs an index of the whole machine. docs.plus has none. Do not search pad text (that is #250). Do not insert (that is #251).
Owned pads reuse the same owner GET as Settings → Documents and #247. Empty search uses Last opened order. Typed search may use title=. Do not reuse Settings’ Last modified session sort. Do not list Last left.
Home has no History, Filter, Find, or notification panel. Hide those rows there.
Use a Dialog / Modal, not GlobalDialog. #175 help already occupies that bus. Result count, if spoken, is a polite live region outside the editor.
Phone users already reach every first place from the hamburger, avatar, or PWA shortcuts. Do not add a 32 by 32 header button.
Key interfaces:
- Command jump — typed go-to list
- Owner live list — owned pads only
- Last opened — owner-only sort
- Favorite — pins first; display only
- Filter — open the Filter UI; do not apply a term
- Find — open the Find text in the open pad #250 bar; not Filter
- Hyperlink — keeps
Mod-k - App keyboard shortcuts: theme flip and a help dialog #175 — keeps
Mod+/andMod+\
Out of scope
- Spotlight-style search of the computer or of every visited pad
- Caret find as this list’s job (Find text in the open pad #250)
- Slash insert (Slash menu to insert a block #251)
- Replace, AI, folders, a Drive
- Store apps or an application menu
file_handlers, inbound share, export save- A new REST route or a visit table
- Chat composer jump
- A phone toolbar control
- Adding the chord to the App keyboard shortcuts: theme flip and a help dialog #175 help table
Activity
HMarzban commentedon Sep 9, 2026
Parent is #249. Do not merge with #250 Find or #251 slash.
HMarzban commentedon Sep 9, 2026
Cohesion
The Documents row opens Settings → Documents. That tab keeps Search documents, sort, list/grid, and Trash. Command jump must not grow a second library (no sort, grid, Trash, or Date buckets).
Typing a Pad title jumps to that owned pad. It is go-to, not manage.
iOS and macOS Safari
Mod+Shift+Kopens the list.Mod-kstays Hyperlink./privacyand/termson Safari too.HMarzban commentedon Sep 9, 2026
Safari follow-up from iOS find slash jump:
Mod+Shift+Kon the mobile shell when Meta key events fire (iPad and a hardware keyboard). A desktop-only listener is a hole. Still no new 32 by 32 button.HMarzban commentedon Sep 10, 2026
UX cohesion (epic #249):
Command jump goes to a named place or an owned pad. It does not search pad text (#250) and does not insert (#251).
Use a named L2
Dialog/Modal. NotGlobalDialog(#175). Not a sheet. Not a Spotlight skin.Owned pads share #247’s Owner live list key: empty search,
lastOpenedAt_desc. Documents row opens Settings → Documents. Find row opens the #250 bar only after that bar exists — never Filter.No new phone toolbar control. Do not add this chord to the #175 help table.