From b00d21df0effbde70222ebc1ee9ec277777633cd Mon Sep 17 00:00:00 2001 From: Jannis Braun <151788261+TheZwiss@users.noreply.github.com> Date: Wed, 29 Apr 2026 22:07:26 +0200 Subject: [PATCH] feat(desktop): preload exposes setConnectedOrigins + onOpenInternalRoute --- packages/desktop/src/preload.ts | 10 ++++++++++ packages/web/src/platform/electron.d.ts | 4 ++++ 2 files changed, 14 insertions(+) diff --git a/packages/desktop/src/preload.ts b/packages/desktop/src/preload.ts index dbdd5fa4..ee48b765 100644 --- a/packages/desktop/src/preload.ts +++ b/packages/desktop/src/preload.ts @@ -51,6 +51,16 @@ contextBridge.exposeInMainWorld('backspace', { ipcRenderer.on('deep-link', (_event, url) => callback(url)); }, + // Instance-origin-aware URL routing + setConnectedOrigins: (origins: string[]) => { + ipcRenderer.send('set-connected-origins', origins); + }, + onOpenInternalRoute: (callback: (path: string) => void) => { + const handler = (_evt: Electron.IpcRendererEvent, path: string) => callback(path); + ipcRenderer.on('open-internal-route', handler); + return () => { ipcRenderer.removeListener('open-internal-route', handler); }; + }, + // Screen share picker coordination onScreenShareSources: (callback: (sources: unknown[]) => void) => { ipcRenderer.on('screen-share-sources', (_event, sources) => callback(sources)); diff --git a/packages/web/src/platform/electron.d.ts b/packages/web/src/platform/electron.d.ts index 09fdd82d..add4bca8 100644 --- a/packages/web/src/platform/electron.d.ts +++ b/packages/web/src/platform/electron.d.ts @@ -35,6 +35,10 @@ interface BackspaceElectronAPI { // Deep linking (Task 2.3) onDeepLink: (callback: (url: string) => void) => void; + // Instance-origin-aware URL routing + setConnectedOrigins: (origins: string[]) => void; + onOpenInternalRoute: (callback: (path: string) => void) => (() => void); + // Screen share picker coordination onScreenShareSources: (callback: (sources: ElectronScreenSource[]) => void) => void; selectScreenSource: (sourceId: string | null, shareAudio?: boolean) => void;