.tasks/interface/EXPL-004-file-opening-ui.md
Integrate file opening functionality into Explorer UI. When users double-click a file, it should open with the system's default application. The context menu should provide "Open" and "Open With" options showing available applications.
Requires CORE-014 (backend file opening system) to be completed first.
useOpenWith React hook for querying apps and opening filesCurrently there's a TODO at packages/interface/src/components/Explorer/hooks/useFileContextMenu.ts:82-83 that needs to be replaced with actual implementation.
See DESIGN-open-with.md for complete architecture details.
getAppsForPaths(paths: string[]): Promise<OpenWithApp[]>openPathDefault(path: string): Promise<OpenResult>openPathWithApp(path, appId): Promise<OpenResult>openPathsWithApp(paths, appId): Promise<OpenResult[]>useOpenWith hook created with:
openWithDefault(path) functionopenWithApp(path, appId) functionopenMultipleWithApp(paths, appId) functionFileCard.tsx)TableRow.tsx)Column.tsx)useFileContextMenu.ts:82-83 is removedTo be created:
packages/interface/src/hooks/useOpenWith.tsTo be modified:
apps/tauri/src/platform.ts (extend interface)packages/interface/src/components/Explorer/hooks/useFileContextMenu.tspackages/interface/src/components/Explorer/views/GridView/FileCard.tsxpackages/interface/src/components/Explorer/views/ListView/TableRow.tsxpackages/interface/src/components/Explorer/views/ColumnView/Column.tsxBefore:
After: