新增多标签页支持:Ctrl+T 新建、Ctrl+W 关闭、Ctrl+Tab 切换、拖拽多文件打开
This commit is contained in:
+6
-5
@@ -3,6 +3,7 @@ const { contextBridge, ipcRenderer } = require('electron');
|
||||
contextBridge.exposeInMainWorld('electronAPI', {
|
||||
// File operations
|
||||
openFile: () => ipcRenderer.invoke('dialog:openFile'),
|
||||
openFiles: () => ipcRenderer.invoke('dialog:openFiles'),
|
||||
readFile: (filePath) => ipcRenderer.invoke('file:read', filePath),
|
||||
saveFile: (data) => ipcRenderer.invoke('file:save', data),
|
||||
saveFileAs: (data) => ipcRenderer.invoke('file:saveAs', data),
|
||||
@@ -10,19 +11,19 @@ contextBridge.exposeInMainWorld('electronAPI', {
|
||||
getFileStats: (filePath) => ipcRenderer.invoke('file:stats', filePath),
|
||||
reloadFile: () => ipcRenderer.invoke('file:reload'),
|
||||
|
||||
// Tab management
|
||||
tabSwitched: (filePath) => ipcRenderer.invoke('tab:switched', filePath),
|
||||
|
||||
// Window control
|
||||
forceClose: () => ipcRenderer.invoke('window:forceClose'),
|
||||
|
||||
// Menu events
|
||||
// Events from main process
|
||||
onFileOpenInTab: (callback) => ipcRenderer.on('file:openInTab', (event, data) => callback(data)),
|
||||
onFileOpened: (callback) => ipcRenderer.on('file:opened', (event, data) => callback(data)),
|
||||
onMenuSave: (callback) => ipcRenderer.on('menu:save', () => callback()),
|
||||
onMenuSaveAs: (callback) => ipcRenderer.on('menu:saveAs', () => callback()),
|
||||
onViewModeChange: (callback) => ipcRenderer.on('menu:viewMode', (event, mode) => callback(mode)),
|
||||
|
||||
// File modification detection
|
||||
onExternalModification: (callback) => ipcRenderer.on('file:externallyModified', (event, filePath) => callback(filePath)),
|
||||
|
||||
// Window close confirmation
|
||||
onConfirmClose: (callback) => ipcRenderer.on('window:confirmClose', () => callback()),
|
||||
onClosing: (callback) => ipcRenderer.on('window:closing', () => callback()),
|
||||
|
||||
|
||||
Reference in New Issue
Block a user