From db394ea1c013b1ea060eafcded02666018194c7b Mon Sep 17 00:00:00 2001 From: 1600822305 <1600822305@qq.com> Date: Thu, 10 Apr 2025 12:49:57 +0800 Subject: [PATCH] =?UTF-8?q?=E5=86=B2=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/shared/IpcChannel.ts | 5 -- src/main/ipc.ts | 12 ---- src/main/services/SearchService.ts | 100 ----------------------------- src/preload/index.d.ts | 5 -- src/preload/index.ts | 5 -- 5 files changed, 127 deletions(-) delete mode 100644 src/main/services/SearchService.ts diff --git a/packages/shared/IpcChannel.ts b/packages/shared/IpcChannel.ts index 017d550b5d..d07a0a5200 100644 --- a/packages/shared/IpcChannel.ts +++ b/packages/shared/IpcChannel.ts @@ -64,11 +64,6 @@ export enum IpcChannel { Aes_Encrypt = 'aes:encrypt', Aes_Decrypt = 'aes:decrypt', - // search window - SearchWindow_Open = 'search-window:open', - SearchWindow_Close = 'search-window:close', - SearchWindow_OpenUrl = 'search-window:open-url', - Gemini_UploadFile = 'gemini:upload-file', Gemini_Base64File = 'gemini:base64-file', Gemini_RetrieveFile = 'gemini:retrieve-file', diff --git a/src/main/ipc.ts b/src/main/ipc.ts index 566e514382..47c13b0ef7 100644 --- a/src/main/ipc.ts +++ b/src/main/ipc.ts @@ -24,7 +24,6 @@ import * as NutstoreService from './services/NutstoreService' import ObsidianVaultService from './services/ObsidianVaultService' import { ProxyConfig, proxyManager } from './services/ProxyManager' import { registerShortcuts, unregisterAllShortcuts } from './services/ShortcutService' -import { searchService } from './services/SearchService' import { TrayService } from './services/TrayService' import { windowService } from './services/WindowService' import { getResourcePath } from './utils' @@ -298,17 +297,6 @@ export function registerIpc(mainWindow: BrowserWindow, app: Electron.App) { NutstoreService.getDirectoryContents(token, path) ) - // search window - ipcMain.handle(IpcChannel.SearchWindow_Open, async (_, uid: string) => { - await searchService.openSearchWindow(uid) - }) - ipcMain.handle(IpcChannel.SearchWindow_Close, async (_, uid: string) => { - await searchService.closeSearchWindow(uid) - }) - ipcMain.handle(IpcChannel.SearchWindow_OpenUrl, async (_, uid: string, url: string) => { - return await searchService.openUrlInSearchWindow(uid, url) - }) - // 启动ASR服务器 ipcMain.handle('start-asr-server', async () => { try { diff --git a/src/main/services/SearchService.ts b/src/main/services/SearchService.ts deleted file mode 100644 index 4dcd85f648..0000000000 --- a/src/main/services/SearchService.ts +++ /dev/null @@ -1,100 +0,0 @@ -import { BrowserWindow } from 'electron' -import { join } from 'path' -import { is } from '@electron-toolkit/utils' -import { isMac } from '@main/constant' - -class SearchService { - private searchWindows: Map = new Map() - - /** - * 打开搜索窗口 - * @param uid 窗口唯一标识符 - */ - public async openSearchWindow(uid: string): Promise { - // 如果窗口已经存在,则激活它 - if (this.searchWindows.has(uid)) { - const existingWindow = this.searchWindows.get(uid) - if (existingWindow && !existingWindow.isDestroyed()) { - if (existingWindow.isMinimized()) { - existingWindow.restore() - } - existingWindow.focus() - return - } - // 如果窗口已销毁,则从Map中移除 - this.searchWindows.delete(uid) - } - - // 创建新窗口 - const searchWindow = new BrowserWindow({ - width: 800, - height: 600, - show: false, - autoHideMenuBar: true, - ...(isMac ? { titleBarStyle: 'hidden' } : {}), - webPreferences: { - preload: join(__dirname, '../preload/index.js'), - sandbox: false, - webSecurity: false - } - }) - - // 设置窗口标题 - searchWindow.setTitle(`搜索窗口 - ${uid}`) - - // 加载搜索页面 - if (is.dev && process.env['ELECTRON_RENDERER_URL']) { - searchWindow.loadURL(`${process.env['ELECTRON_RENDERER_URL']}/#/search?uid=${uid}`) - } else { - searchWindow.loadFile(join(__dirname, '../renderer/index.html'), { - hash: `/search?uid=${uid}` - }) - } - - // 窗口准备好后显示 - searchWindow.once('ready-to-show', () => { - searchWindow.show() - }) - - // 窗口关闭时从Map中移除 - searchWindow.on('closed', () => { - this.searchWindows.delete(uid) - }) - - // 存储窗口引用 - this.searchWindows.set(uid, searchWindow) - } - - /** - * 关闭搜索窗口 - * @param uid 窗口唯一标识符 - */ - public async closeSearchWindow(uid: string): Promise { - const window = this.searchWindows.get(uid) - if (window && !window.isDestroyed()) { - window.close() - } - this.searchWindows.delete(uid) - } - - /** - * 在搜索窗口中打开URL - * @param uid 窗口唯一标识符 - * @param url 要打开的URL - */ - public async openUrlInSearchWindow(uid: string, url: string): Promise { - const window = this.searchWindows.get(uid) - if (window && !window.isDestroyed()) { - try { - await window.loadURL(url) - return true - } catch (error) { - console.error(`Failed to load URL in search window: ${error}`) - return false - } - } - return false - } -} - -export const searchService = new SearchService() diff --git a/src/preload/index.d.ts b/src/preload/index.d.ts index 2261f75769..9e63498cf4 100644 --- a/src/preload/index.d.ts +++ b/src/preload/index.d.ts @@ -175,11 +175,6 @@ declare global { decryptToken: (token: string) => Promise<{ username: string; access_token: string }> getDirectoryContents: (token: string, path: string) => Promise } - searchWindow: { - open: (uid: string) => Promise - close: (uid: string) => Promise - openUrl: (uid: string, url: string) => Promise - } } } } diff --git a/src/preload/index.ts b/src/preload/index.ts index 673d85f31b..33db085287 100644 --- a/src/preload/index.ts +++ b/src/preload/index.ts @@ -169,11 +169,6 @@ const api = { decryptToken: (token: string) => ipcRenderer.invoke(IpcChannel.Nutstore_DecryptToken, token), getDirectoryContents: (token: string, path: string) => ipcRenderer.invoke(IpcChannel.Nutstore_GetDirectoryContents, token, path) - }, - searchWindow: { - open: (uid: string) => ipcRenderer.invoke(IpcChannel.SearchWindow_Open, uid), - close: (uid: string) => ipcRenderer.invoke(IpcChannel.SearchWindow_Close, uid), - openUrl: (uid: string, url: string) => ipcRenderer.invoke(IpcChannel.SearchWindow_OpenUrl, uid, url) } }