feat: Added command palette for quick actions and switching between items (#2933) [skip e2e]

* wip: command palette

* use code instead of key

* show recent items above commands

* refactor

* fix command

* add placeholder

* Tab/Shift-Tab to switch tabs

* Fix test

* Add menu item to general account menu

* if shortcut_id is available, use that as the id

* make toggle fn more stable

* small naming changes

* fix name

* Close open modals and popovers when opening command palette

* use stable ids + make sure selectedNotesCount only changes when the count actually changes

* display all commands, even ones in recents list
This commit is contained in:
Aman Harwara
2025-09-25 18:36:09 +05:30
committed by GitHub
parent cb92c10625
commit efba7c682d
61 changed files with 1381 additions and 522 deletions

View File

@@ -220,6 +220,17 @@ export class ItemManager extends Services.AbstractService implements Services.It
this.itemCounter.setVaultDisplayOptions(options)
}
public getInteractableItems(): Models.DecryptedItemInterface[] {
return (this.systemSmartViews as Models.DecryptedItemInterface[]).concat(
this.collection.all([
ContentType.TYPES.Note,
ContentType.TYPES.File,
ContentType.TYPES.Tag,
ContentType.TYPES.SmartView,
]) as Models.DecryptedItemInterface[],
)
}
public getDisplayableNotes(): Models.SNNote[] {
assert(this.navigationDisplayController.contentTypes.length === 2)