From 792621d9822f3d805c95f70d84be7fc925c9fbce Mon Sep 17 00:00:00 2001 From: v0 Date: Sun, 5 Apr 2026 17:47:14 +0000 Subject: [PATCH] feat: use Electron's native Notification API for reliable alerts Replace custom 'showNotification' with Electron's 'Notification' for system-level alerts. Co-authored-by: Jason <159670257+Jasonzhu1207@users.noreply.github.com> --- electron/services/insightService.ts | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/electron/services/insightService.ts b/electron/services/insightService.ts index 1a314e8..138eb2b 100644 --- a/electron/services/insightService.ts +++ b/electron/services/insightService.ts @@ -18,10 +18,9 @@ import http from 'http' import fs from 'fs' import path from 'path' import { URL } from 'url' -import { app } from 'electron' +import { app, Notification } from 'electron' import { ConfigService } from './config' import { chatService, ChatSession, Message } from './chatService' -import { showNotification } from '../windows/notificationWindow' // ─── 常量 ──────────────────────────────────────────────────────────────────── @@ -666,12 +665,18 @@ class InsightService { const insight = result.slice(0, 120) insightLog('INFO', `推送通知 → ${displayName}: ${insight}`) - await showNotification({ - sessionId, - sourceName: `见解 · ${displayName}`, - content: insight, - isInsight: true - }) + + // 使用 Electron 原生系统通知,确保 Windows 右下角弹窗可靠显示 + if (Notification.isSupported()) { + const notif = new Notification({ + title: `见解 · ${displayName}`, + body: insight, + silent: false + }) + notif.show() + } else { + insightLog('WARN', '当前系统不支持原生通知') + } insightLog('INFO', `已为 ${displayName} 推送见解`) } catch (e) {