experiments in a post-browser web
10
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix(shortcuts): make extension shortcuts local, add local fallback for cmd

Most extension shortcuts (hud, editor, groups, tags, timers, feeds,
lists, pagestream, windows, tag-actions) were registered as global
OS hotkeys which fail silently on Linux Wayland. Changed them to local
shortcuts that work reliably when the app has focus.

Cmd palette shortcut (Option+Space) is now registered as both global
and local, so it works on Linux even when global registration fails.

+17 -20
+7
features/cmd/background.js
··· 397 397 const initShortcut = (prefs) => { 398 398 if (registeredShortcut) { 399 399 api.shortcuts.unregister(registeredShortcut, { global: true }); 400 + api.shortcuts.unregister(registeredShortcut); 400 401 } 401 402 api.shortcuts.unregister(LOCAL_SHORTCUT); 402 403 api.shortcuts.unregister(URL_MODE_SHORTCUT); ··· 405 406 api.shortcuts.register(prefs.shortcutKey, () => { 406 407 openPanelWindow(prefs); 407 408 }, { global: true }); 409 + 410 + // Also register as local so it works on Linux Wayland where global shortcuts may fail 411 + api.shortcuts.register(prefs.shortcutKey, () => { 412 + openPanelWindow(prefs); 413 + }); 408 414 409 415 // Local shortcut (Cmd+K) — works when a Peek window is focused 410 416 api.shortcuts.register(LOCAL_SHORTCUT, () => { ··· 431 437 432 438 if (registeredShortcut) { 433 439 api.shortcuts.unregister(registeredShortcut, { global: true }); 440 + api.shortcuts.unregister(registeredShortcut); 434 441 registeredShortcut = null; 435 442 } 436 443 api.shortcuts.unregister(LOCAL_SHORTCUT);
+1 -2
features/editor/manifest.json
··· 17 17 "shortcuts": [ 18 18 { 19 19 "keys": "Option+e", 20 - "command": "editor", 21 - "global": true 20 + "command": "editor" 22 21 }, 23 22 { 24 23 "keys": "CommandOrControl+E",
+1 -2
features/feeds/manifest.json
··· 25 25 "shortcuts": [ 26 26 { 27 27 "keys": "Option+Shift+F", 28 - "command": "open feeds", 29 - "global": true 28 + "command": "open feeds" 30 29 } 31 30 ] 32 31 }
+1 -2
features/groups/manifest.json
··· 51 51 "shortcuts": [ 52 52 { 53 53 "keys": "Option+g", 54 - "command": "groups", 55 - "global": true 54 + "command": "groups" 56 55 }, 57 56 { 58 57 "keys": "CommandOrControl+G",
+1 -2
features/hud/manifest.json
··· 16 16 "shortcuts": [ 17 17 { 18 18 "keys": "Option+H", 19 - "command": "hud", 20 - "global": true 19 + "command": "hud" 21 20 }, 22 21 { 23 22 "keys": "CommandOrControl+H",
+1 -2
features/lists/manifest.json
··· 16 16 "shortcuts": [ 17 17 { 18 18 "keys": "Option+f", 19 - "command": "lists", 20 - "global": true 19 + "command": "lists" 21 20 } 22 21 ] 23 22 }
+1 -2
features/pagestream/manifest.json
··· 16 16 "shortcuts": [ 17 17 { 18 18 "keys": "Option+p", 19 - "command": "pagestream", 20 - "global": true 19 + "command": "pagestream" 21 20 } 22 21 ] 23 22 }
+1 -2
features/tag-actions/manifest.json
··· 27 27 "shortcuts": [ 28 28 { 29 29 "keys": "Option+Shift+T", 30 - "command": "tag actions", 31 - "global": true 30 + "command": "tag actions" 32 31 } 33 32 ] 34 33 }
+1 -2
features/tags/manifest.json
··· 40 40 "shortcuts": [ 41 41 { 42 42 "keys": "Option+t", 43 - "command": "open tags", 44 - "global": true 43 + "command": "open tags" 45 44 }, 46 45 { 47 46 "keys": "CommandOrControl+T",
+1 -2
features/timers/manifest.json
··· 36 36 "shortcuts": [ 37 37 { 38 38 "keys": "Option+t", 39 - "command": "timers", 40 - "global": true 39 + "command": "timers" 41 40 }, 42 41 { 43 42 "keys": "CommandOrControl+T",
+1 -2
features/windows/manifest.json
··· 36 36 "shortcuts": [ 37 37 { 38 38 "keys": "Option+w", 39 - "command": "windows", 40 - "global": true 39 + "command": "windows" 41 40 } 42 41 ] 43 42 }