From 10781077762265f048b1c912b2c2e730670fd65b Mon Sep 17 00:00:00 2001 From: SiriusXT <1160925501@qq.com> Date: Thu, 1 Jan 2026 14:30:01 +0800 Subject: [PATCH] chore(window): initialize closed time of openNoteContents to 0 --- apps/client/src/components/tab_manager.ts | 4 ++-- .../0234__migrate_open_note_contexts_format.ts | 2 +- apps/server/src/services/options_init.ts | 4 ++-- apps/server/src/services/sql_init.ts | 2 +- apps/server/src/services/tray.ts | 10 ++-------- 5 files changed, 8 insertions(+), 14 deletions(-) diff --git a/apps/client/src/components/tab_manager.ts b/apps/client/src/components/tab_manager.ts index d0fa40730..47305b2a5 100644 --- a/apps/client/src/components/tab_manager.ts +++ b/apps/client/src/components/tab_manager.ts @@ -60,7 +60,7 @@ export default class TabManager extends Component { savedWindows.push({ windowId: appContext.windowId, createdAt: Date.now(), - closedAt: null, + closedAt: 0, contexts: openNoteContexts }); } @@ -154,7 +154,7 @@ export default class TabManager extends Component { savedWindows.push({ windowId: appContext.windowId, createdAt: Date.now(), - closedAt: null, + closedAt: 0, contexts: filteredNoteContexts }); } diff --git a/apps/server/src/migrations/0234__migrate_open_note_contexts_format.ts b/apps/server/src/migrations/0234__migrate_open_note_contexts_format.ts index fd51a00cd..15dba5d6f 100644 --- a/apps/server/src/migrations/0234__migrate_open_note_contexts_format.ts +++ b/apps/server/src/migrations/0234__migrate_open_note_contexts_format.ts @@ -34,7 +34,7 @@ export default () => { { windowId: "main", createdAt: 0, - closedAt: null, + closedAt: 0, contexts: parsed } ]; diff --git a/apps/server/src/services/options_init.ts b/apps/server/src/services/options_init.ts index a05fee0b0..eb7219ece 100644 --- a/apps/server/src/services/options_init.ts +++ b/apps/server/src/services/options_init.ts @@ -47,7 +47,7 @@ async function initNotSyncedOptions(initialized: boolean, opts: NotSyncedOpts = { windowId: "main", createdAt: 0, - closedAt: null, + closedAt: 0, contexts: [ { notePath: "root", @@ -266,7 +266,7 @@ function initStartupOptions() { { windowId: "main", createdAt: 0, - closedAt: null, + closedAt: 0, contexts: [ { notePath: process.env.TRILIUM_START_NOTE_ID || "root", diff --git a/apps/server/src/services/sql_init.ts b/apps/server/src/services/sql_init.ts index dc1adc11c..f203882fa 100644 --- a/apps/server/src/services/sql_init.ts +++ b/apps/server/src/services/sql_init.ts @@ -149,7 +149,7 @@ async function createInitialDatabase(skipDemoDb?: boolean) { { windowId: "main", createdAt: 0, - closedAt: null, + closedAt: 0, contexts: [ { notePath: startNoteId, diff --git a/apps/server/src/services/tray.ts b/apps/server/src/services/tray.ts index 72b90cd42..151479ccb 100644 --- a/apps/server/src/services/tray.ts +++ b/apps/server/src/services/tray.ts @@ -201,15 +201,9 @@ function updateTrayMenu() { const openedWindowIds = windowService.getAllWindowIds(); const closedWindows = savedWindows .filter(win => !openedWindowIds.includes(win.windowId)) - .sort((a, b) => { - // If closedAt is null, it indicates an abnormal closure and should be placed at the end - if (a.closedAt === null && b.closedAt === null) return 0; - if (a.closedAt === null) return 1; - if (b.closedAt === null) return -1; - // Otherwise, sort by time in descending order - return b.closedAt - a.closedAt; - }); + .sort((a, b) => { return b.closedAt - a.closedAt; }); // sort by time in descending order const menuItems: Electron.MenuItemConstructorOptions[] = []; + for (const win of closedWindows) { const activeCtx = win.contexts.find(c => c.active === true); const activateNotePath = (activeCtx ?? win.contexts[0])?.notePath;