Start in system tray opens the main window when the watchlist is empty
維護者通常 3 天內回覆
還沒有人認領這個 Issue。
評估
研究方向
閱讀 ApplicationHostService.vb 第48–62行和 MainWindowViewModel.vb 第84–100行,接著追蹤系統匣啟動和空的監看清單如何影響視窗可見性。啟用 StartInSystemTray 且沒有受監看的資料夾時重現啟動過程,再與有一個受監看資料夾時比較。完成標準是兩種情況啟動時視窗都隱藏在系統匣中,且現有的關閉至系統匣行為仍然正常。
由索引模型根據 Issue 內容生成。
描述
Tested on official v4.0.0-beta.12, Windows 11 25H2 (26200.9711), ASUS Vivobook S 15 / Snapdragon X Elite X1E-78-100 / 16 GB RAM, .NET 10.0.13. Both the native ARM64 application and the official x64 application were tested directly on this ARM laptop. Additional component checks used unchanged libraries extracted from the x64 release, with the release's embedded manifest. No Intel/AMD PC was tested. Only disposable files were used. Most testing was automated with Codex, with human assistance identified where applicable. Related build request: #556.
Reproduction
- Enable Settings -> Start CompactGUI in system tray.
- Have no watched folders.
- Exit the app and start it without folder arguments.
Expected: start hidden in the tray as requested.
Actual: the main Home window opens. Reproduced on two fresh launches at 13:40:50 and 13:41:31 BST on 21 October 2026. Saved StartInSystemTray was true and the watchlist had zero entries. The visible main window was enumerated before any activation.
ARM64 positive control: the same setting with exactly one disposable watched folder started hidden and stayed running. ARM64 tray Open, Exit/Cancel and Exit/Yes also passed separate human-assisted checks.
Source explanation
ApplicationHostService lines 48–62 shows the window, then calls ClosingCommand when tray startup is requested. MainWindowViewModel.Closing lines 84–100 only hides/minimizes it when WatchedFolders.Count is nonzero.
Startup visibility should be applied independently of the close-to-tray policy for watched folders.
Related #371 introduced the preference. The later #682 change concerns registry autostart registration; the tested behavior here is visibility on a manual launch with the saved preference. Master was not built or runtime-tested.
Direct x64 GUI follow-up (21 October 2026, BST)
The official x64 application also reproduced the empty-watchlist failure on two fresh launches. The saved StartInSystemTray preference was true, watcher.json contained zero folders, and no folder arguments were supplied. A visible main window was enumerated before any activation in both runs:
| Start time | Child environment | Observation before activating the app |
|---|---|---|
| 18:22:15 | IridiumIO omitted from this child only | Main window visible |
| 18:23:14 | Existing normal IridiumIO value present | Main window visible |
The normal-environment repeat shows that the separate Settings-button environment condition is not needed for this startup defect. This is now directly reproduced in both release builds on the same ARM laptop. The x64 positive control also passed at 18:48:14: with StartInSystemTray=true, exactly one disposable watched folder and no folder arguments, the process stayed running with no visible main window. A window inventory found no x64 main window and the process MainWindowHandle was 0 before any activation. This reproduces the same empty/nonempty watchlist distinction in both builds. Separate human-assisted x64 checks subsequently passed: tray Open restored the window; Home/Watcher/Settings and maximize/restore repainted normally; Exit/Cancel kept the app running; Exit/Yes closed it. The process exit was independently confirmed. These manual checks used the isolated x64 copy with DisableHardwareRendering=true; a later automated run after restoring default hardware rendering also showed updating Home/Watcher and maximize/restore. This does not alter the reproducible empty-watchlist startup defect. Native Intel/AMD hardware remains untested.
- 主要語言
- Visual Basic .NET
- 星號
- 8.9k
- 分支
- 343
- 平均合併
- 3 天 18 小時
- 30 天內合併 PR
- 7
環境準備
這個專案沒有提供開發容器、Dockerfile 或貢獻指南,環境需要你自己搭建:先看它的 README,通用步驟見我們的新手貢獻指南。
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
IridiumIO/CompactGUI 的其他 Issue
-
難度 2/5 1-3 小時 新手友好度 82/100
IridiumIO/CompactGUI#697 ·
維護者通常 3 天內回覆
-
難度 2/5 1-3 小時 新手友好度 78/100
IridiumIO/CompactGUI#696 ·
維護者通常 3 天內回覆
-
難度 2/5 1-3 小時 新手友好度 78/100
IridiumIO/CompactGUI#680 ·
維護者通常 3 天內回覆
-
難度 3/5 1-2 天 新手友好度 48/100
IridiumIO/CompactGUI#700 ·
維護者通常 3 天內回覆
-
難度 3/5 1-2 天 新手友好度 58/100
IridiumIO/CompactGUI#698 ·
維護者通常 3 天內回覆
查看 IridiumIO/CompactGUI 的全部 Issue
相似的 Issue
-
難度 2/5 1-3 小時 新手友好度 76/100
NanmiCoder/dsh-agent-teams#277 ·
維護者通常 1 天內回覆
-
難度 1/5 1 小時以內 新手友好度 85/100
-
難度 2/5 1-3 小時 新手友好度 87/100
Lakr233/vphone-cli#742 ·
維護者通常 1 天內回覆
-
[core-client] Remove unused hand-maintained transport helpers after the definition-table cutover未關閉doc-audit enhancement
難度 2/5 1-3 小時 新手友好度 88/100
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 85/100
維護者通常 1 天內回覆