mirror of
https://gitee.com/spark-store-project/spark-store
synced 2026-09-20 21:50:11 +08:00
electron(titleBar): 添加窗口状态IPC通信与桥接器函数
This commit is contained in:
@@ -843,6 +843,14 @@ app.whenReady().then(() => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
ipcMain.handle('window:state', () => {
|
||||||
|
const win = BrowserWindow.getFocusedWindow()
|
||||||
|
if (!win) return 'normal'
|
||||||
|
if (win.isMaximized()) return 'maximized'
|
||||||
|
if (win.isMinimized()) return 'minimized'
|
||||||
|
return 'normal'
|
||||||
|
})
|
||||||
|
|
||||||
// New window example arg: new windows url
|
// New window example arg: new windows url
|
||||||
// ipcMain.handle('open-win', (_, arg) => {
|
// ipcMain.handle('open-win', (_, arg) => {
|
||||||
// const childWindow = new BrowserWindow({
|
// const childWindow = new BrowserWindow({
|
||||||
|
|||||||
@@ -51,6 +51,7 @@ type WindowControlBridge = {
|
|||||||
minimize: () => void;
|
minimize: () => void;
|
||||||
toggleMaximize: () => void;
|
toggleMaximize: () => void;
|
||||||
close: () => void;
|
close: () => void;
|
||||||
|
state: () => Promise<| 'normal' | 'maximized' | 'minimized'>;
|
||||||
};
|
};
|
||||||
|
|
||||||
type UpdateCenterStateListener = (snapshot: UpdateCenterSnapshot) => void;
|
type UpdateCenterStateListener = (snapshot: UpdateCenterSnapshot) => void;
|
||||||
@@ -110,6 +111,7 @@ contextBridge.exposeInMainWorld("windowControls", {
|
|||||||
minimize: () => ipcRenderer.send("window-control-minimize"),
|
minimize: () => ipcRenderer.send("window-control-minimize"),
|
||||||
toggleMaximize: () => ipcRenderer.send("window-control-toggle-maximize"),
|
toggleMaximize: () => ipcRenderer.send("window-control-toggle-maximize"),
|
||||||
close: () => ipcRenderer.send("window-control-close"),
|
close: () => ipcRenderer.send("window-control-close"),
|
||||||
|
state: () => ipcRenderer.invoke("window:state"),
|
||||||
} satisfies WindowControlBridge);
|
} satisfies WindowControlBridge);
|
||||||
|
|
||||||
contextBridge.exposeInMainWorld("updateCenter", {
|
contextBridge.exposeInMainWorld("updateCenter", {
|
||||||
|
|||||||
Reference in New Issue
Block a user