feat: add desktop quick open workflow (#925)

Introduce a dedicated Quick Open dialog, wire it to Cmd+P and the macOS app menu, and show file-type icons in quick-open results so file navigation matches the rest of the app.
This commit is contained in:
Jinwoo An (안진우)
2026-04-16 23:24:58 +03:00
committed by GitHub
parent 5bc52a15ad
commit 2fbfd803f7
9 changed files with 325 additions and 1 deletions
+12
View File
@@ -483,6 +483,7 @@ interface UIStore {
pendingFileFocusPath: string | null;
isMobile: boolean;
isKeyboardOpen: boolean;
isQuickOpenOpen: boolean;
isCommandPaletteOpen: boolean;
isHelpDialogOpen: boolean;
isAboutDialogOpen: boolean;
@@ -603,6 +604,8 @@ interface UIStore {
navigateToDiff: (filePath: string) => void;
consumePendingDiffFile: () => string | null;
setIsMobile: (isMobile: boolean) => void;
setQuickOpenOpen: (open: boolean) => void;
toggleQuickOpen: () => void;
toggleCommandPalette: () => void;
setCommandPaletteOpen: (open: boolean) => void;
toggleHelpDialog: () => void;
@@ -722,6 +725,7 @@ export const useUIStore = create<UIStore>()(
pendingFileFocusPath: null,
isMobile: false,
isKeyboardOpen: false,
isQuickOpenOpen: false,
isCommandPaletteOpen: false,
isHelpDialogOpen: false,
isAboutDialogOpen: false,
@@ -1235,6 +1239,14 @@ export const useUIStore = create<UIStore>()(
set({ isMobile });
},
setQuickOpenOpen: (open) => {
set({ isQuickOpenOpen: open });
},
toggleQuickOpen: () => {
set((state) => ({ isQuickOpenOpen: !state.isQuickOpenOpen }));
},
toggleCommandPalette: () => {
set((state) => ({ isCommandPaletteOpen: !state.isCommandPaletteOpen }));
},