From 668eb5f0b8f2d1b6801fd8993ff5bdd9aab95aed Mon Sep 17 00:00:00 2001 From: richblack Date: Tue, 28 Jul 2026 21:00:10 +0800 Subject: [PATCH] =?UTF-8?q?fix(t110=20=E4=BA=8C=E4=BF=AE):=20=E7=B5=90?= =?UTF-8?q?=E6=9D=9F=E9=A0=85=E5=8A=A0=E5=9B=9E=E2=80=94=E2=80=94=E3=80=8C?= =?UTF-8?q?fyne=20=E8=87=AA=E5=8B=95=E9=99=84=20Quit=E3=80=8D=E6=98=AF?= =?UTF-8?q?=E9=8C=AF=E8=AA=A4=E5=89=8D=E6=8F=90=EF=BC=88leo=20=E7=9C=9F?= =?UTF-8?q?=E6=A9=9F=EF=BC=9A=E5=85=A9=E5=80=8B=E9=83=BD=E6=B2=92=E4=BA=86?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 教訓:runtime 生成的 UI 元素驗收只能看真選單,grep binary 驗不到; 子 CC 的框架行為研究要求實證不採信註解。tray go test 綠。 --- cmd/arcrun-tray/main.go | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/cmd/arcrun-tray/main.go b/cmd/arcrun-tray/main.go index 65c7121..f4ab4ec 100644 --- a/cmd/arcrun-tray/main.go +++ b/cmd/arcrun-tray/main.go @@ -915,10 +915,14 @@ func main() { fyne.NewMenuItem("+ 新增帳號…", func() { showConnectWizard() }), fyne.NewMenuItemSeparator(), versionItem, - // t110:fyne v2.5.3 在 macOS/Windows 的 SetSystemTrayMenu 實作中會自動於底部附加 "Quit" - // 項(英文,fyne glfw driver 內部行為,無公開 API 可改);重複加自訂結束項會出現兩個。 - // 移除自訂項,改由 fyne 內建 Quit 觸發:a.Lifecycle().SetOnStopped 已設定 sup.Stop(), - // 行為等同。Windows 同樣有內建 Quit,不需要例外處理。 + // t110 二修(leo 真機:v0.14.1 拿掉自訂項後選單「兩個都沒有」= + // 「fyne 會自動附 Quit」是錯誤前提,桌面截圖才是權威):自訂結束項加回, + // 這是唯一的結束入口。若某環境 fyne 真的又附了 Quit(v0.14.0 曾見雙項), + // 屆時以抑制 fyne 端為方向,不能再拿掉這項。 + fyne.NewMenuItem("結束 Arcrun RAG", func() { + sup.Stop() + a.Quit() + }), ) desk.SetSystemTrayMenu(fyne.NewMenu("Arcrun RAG", items...)) }