feat: implement tray functionality with status updates and localization support

This commit is contained in:
duanshuwen
2026-04-22 07:19:53 +08:00
parent 197f644d53
commit be8298af2f
6 changed files with 341 additions and 120 deletions

View File

@@ -47,18 +47,7 @@ export class AppUpdater {
}
private registerHandlers() {
ipcMain.handle(IPC_EVENTS.UPDATE_CHECK, () => {
if (app.isPackaged) {
return autoUpdater.checkForUpdates();
} else {
// 在开发环境下模拟
this.sendToRenderer(IPC_EVENTS.UPDATE_STATUS_CHANGED, { status: 'checking' });
setTimeout(() => {
this.sendToRenderer(IPC_EVENTS.UPDATE_STATUS_CHANGED, { status: 'not-available' });
}, 1500);
return null;
}
});
ipcMain.handle(IPC_EVENTS.UPDATE_CHECK, () => this.checkForUpdates());
ipcMain.handle(IPC_EVENTS.UPDATE_DOWNLOAD, () => {
if (app.isPackaged) {
@@ -78,6 +67,18 @@ export class AppUpdater {
return app.getVersion();
});
}
public checkForUpdates() {
if (app.isPackaged) {
return autoUpdater.checkForUpdates();
}
this.sendToRenderer(IPC_EVENTS.UPDATE_STATUS_CHANGED, { status: 'checking' });
setTimeout(() => {
this.sendToRenderer(IPC_EVENTS.UPDATE_STATUS_CHANGED, { status: 'not-available' });
}, 1500);
return null;
}
}
export const appUpdater = AppUpdater.getInstance();