添加应用退出功能,支持通过长按触摸事件触发退出
This commit is contained in:
@@ -372,6 +372,14 @@ app.whenReady().then(() => {
|
||||
app.relaunch();
|
||||
app.exit(0);
|
||||
});
|
||||
ipcMain.on("quit-app", () => {
|
||||
try {
|
||||
app.quit();
|
||||
} catch (err) {
|
||||
// 最后手段:强制退出
|
||||
app.exit(0);
|
||||
}
|
||||
});
|
||||
|
||||
app.on("activate", () => {
|
||||
if (BrowserWindow.getAllWindows().length === 0) {
|
||||
|
||||
@@ -20,4 +20,5 @@ contextBridge.exposeInMainWorld("electronAPI", {
|
||||
ipcRenderer.removeAllListeners("idcard-error");
|
||||
},
|
||||
restartApp: () => ipcRenderer.send("restart-app"),
|
||||
quitApp: () => ipcRenderer.send("quit-app"),
|
||||
});
|
||||
|
||||
@@ -39,7 +39,8 @@ function App() {
|
||||
|
||||
const handleTouchStart = () => {
|
||||
restartTimerRef.current = window.setTimeout(() => {
|
||||
window.electronAPI.restartApp();
|
||||
// 长按 5 秒改为关闭应用
|
||||
window.electronAPI.quitApp();
|
||||
}, 5000);
|
||||
};
|
||||
|
||||
|
||||
1
src/electron.d.ts
vendored
1
src/electron.d.ts
vendored
@@ -28,6 +28,7 @@ interface ElectronAPI {
|
||||
log: (level: string, message: any) => void;
|
||||
removeIdCardListeners: () => void;
|
||||
restartApp: () => void;
|
||||
quitApp: () => void;
|
||||
}
|
||||
|
||||
interface Window {
|
||||
|
||||
Reference in New Issue
Block a user