Skip to content

feat: add cross-platform dock/taskbar icon visibility toggle#72

Open
yuler wants to merge 8 commits into
mainfrom
desktop-set-dock
Open

feat: add cross-platform dock/taskbar icon visibility toggle#72
yuler wants to merge 8 commits into
mainfrom
desktop-set-dock

Conversation

@yuler
Copy link
Copy Markdown
Owner

@yuler yuler commented May 19, 2026

Summary

  • Added show_dock_icon setting to the basic settings store with platform-specific defaults.
  • Implemented Rust backend command set_dock_icon_visible to dynamically toggle Dock (macOS) and Taskbar (Windows/Linux) icon visibility across all managed windows.
  • Optimized startup flow to synchronously load settings store and apply macOS activation policy prior to window creation, avoiding any dock icon flickering or blank icon issues.
  • Added a toggle switch in the "Basic Settings" UI and updated localizations (en, zh, jp).

Test plan

  • Open Settings -> Basic and toggle "Show icon in Dock / Taskbar".
  • Verify the icon appears/disappears in the system taskbar or dock.
  • Restart the application and verify the setting is persisted and applied correctly on startup.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a feature to toggle the visibility of the application icon in the Dock or taskbar, including cross-platform implementation for macOS, Windows, and Linux, and updates to the settings UI and store. The review identified a potential issue with the asynchronous loading of the settings store during the startup hook, which may lead to the store being unavailable or causing UI flickering on macOS. Additionally, a suggestion was made to improve the taskbar visibility logic on non-macOS platforms by iterating through all windows rather than targeting only the 'main' window.

Comment thread apps/desktop/src-tauri/src/lib.rs Outdated
Comment thread apps/desktop/src-tauri/src/windows.rs
…ctivation policy

- Synchronously load settings store on startup to determine macOS activation policy once.
- Set macOS activation policy before creating windows to avoid dock icon flickering.
- Iterate through all managed webview windows except "indicator" to skip taskbar on non-macOS platforms.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant