summaryrefslogtreecommitdiffhomepage
path: root/packages/desktop/src
diff options
context:
space:
mode:
authorAdam <[email protected]>2026-02-05 13:55:49 -0600
committerGitHub <[email protected]>2026-02-05 19:55:49 +0000
commitb738d88ec4c49efdf37ecf09058e70f1c3574b6b (patch)
tree524219619c6e5ce0159679073183e2c3930c4ce6 /packages/desktop/src
parent83646e0366c47a3bccb5135d40628176a6776f33 (diff)
downloadopencode-b738d88ec4c49efdf37ecf09058e70f1c3574b6b.tar.gz
opencode-b738d88ec4c49efdf37ecf09058e70f1c3574b6b.zip
feat(app): open in <app> button (#12322)
Diffstat (limited to 'packages/desktop/src')
-rw-r--r--packages/desktop/src/bindings.ts23
-rw-r--r--packages/desktop/src/index.tsx5
2 files changed, 17 insertions, 11 deletions
diff --git a/packages/desktop/src/bindings.ts b/packages/desktop/src/bindings.ts
index 440e138b4..eb5498fa6 100644
--- a/packages/desktop/src/bindings.ts
+++ b/packages/desktop/src/bindings.ts
@@ -1,19 +1,20 @@
// This file has been generated by Tauri Specta. Do not edit this file manually.
-import { invoke as __TAURI_INVOKE, Channel } from "@tauri-apps/api/core"
+import { invoke as __TAURI_INVOKE, Channel } from '@tauri-apps/api/core';
/** Commands */
export const commands = {
- killSidecar: () => __TAURI_INVOKE<void>("kill_sidecar"),
- installCli: () => __TAURI_INVOKE<string>("install_cli"),
- ensureServerReady: () => __TAURI_INVOKE<ServerReadyData>("ensure_server_ready"),
- getDefaultServerUrl: () => __TAURI_INVOKE<string | null>("get_default_server_url"),
- setDefaultServerUrl: (url: string | null) => __TAURI_INVOKE<null>("set_default_server_url", { url }),
- parseMarkdownCommand: (markdown: string) => __TAURI_INVOKE<string>("parse_markdown_command", { markdown }),
-}
+ killSidecar: () => __TAURI_INVOKE<void>("kill_sidecar"),
+ installCli: () => __TAURI_INVOKE<string>("install_cli"),
+ ensureServerReady: () => __TAURI_INVOKE<ServerReadyData>("ensure_server_ready"),
+ getDefaultServerUrl: () => __TAURI_INVOKE<string | null>("get_default_server_url"),
+ setDefaultServerUrl: (url: string | null) => __TAURI_INVOKE<null>("set_default_server_url", { url }),
+ parseMarkdownCommand: (markdown: string) => __TAURI_INVOKE<string>("parse_markdown_command", { markdown }),
+};
/* Types */
export type ServerReadyData = {
- url: string
- password: string | null
-}
+ url: string,
+ password: string | null,
+ };
+
diff --git a/packages/desktop/src/index.tsx b/packages/desktop/src/index.tsx
index b54e1f79f..30cb7ba7a 100644
--- a/packages/desktop/src/index.tsx
+++ b/packages/desktop/src/index.tsx
@@ -4,6 +4,7 @@ import { render } from "solid-js/web"
import { AppBaseProviders, AppInterface, PlatformProvider, Platform } from "@opencode-ai/app"
import { open, save } from "@tauri-apps/plugin-dialog"
import { getCurrent, onOpenUrl } from "@tauri-apps/plugin-deep-link"
+import { openPath as openerOpenPath } from "@tauri-apps/plugin-opener"
import { open as shellOpen } from "@tauri-apps/plugin-shell"
import { type as ostype } from "@tauri-apps/plugin-os"
import { check, Update } from "@tauri-apps/plugin-updater"
@@ -87,6 +88,10 @@ const createPlatform = (password: Accessor<string | null>): Platform => ({
void shellOpen(url).catch(() => undefined)
},
+ openPath(path: string, app?: string) {
+ return openerOpenPath(path, app)
+ },
+
back() {
window.history.back()
},