Skip to content

fix: preserve hidden Dock state on reopen - #774

Open
postoso wants to merge 1 commit into
altic-dev:mainfrom
postoso:fix/753-hide-dock-on-reopen
Open

fix: preserve hidden Dock state on reopen#774
postoso wants to merge 1 commit into
altic-dev:mainfrom
postoso:fix/753-hide-dock-on-reopen

Conversation

@postoso

@postoso postoso commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Description

Re-applies the saved Dock visibility preference when macOS externally reopens an already-running FluidVoice. LaunchServices can restore the bundle's default activation policy during reopen, which made the Dock icon remain visible even when Hide from Dock was enabled.

Type of Change

  • 🐞 Bug fix
  • ✨ New feature
  • 💥 Breaking change
  • 🧹 Chore
  • 📝 Documentation update

Related Issue or Discussion

Closes #753

Testing

  • Tested on Intel Mac
  • Tested on Apple Silicon Mac
  • Tested on macOS version: 15.7.7
  • Ran linter locally: swiftlint --strict --config .swiftlint.yml Sources
  • Ran formatter locally: swiftformat --config .swiftformat Sources
  • Ran tests locally: unsigned build and build-for-testing passed. After an external reopen, the patched app remained UIElement at 0.1, 0.3, 0.8, 1.5, and 3 seconds. The full suite was attempted: 154 tests passed and 11 tests aborted because of the known local Xcode 26.3/macOS 15.7.7 malloc/SIGABRT runner issue.

Screenshots / Video

The proof clip keeps the Dock visible while Codex reopens FluidVoice programmatically, so no mouse click is expected. The app window returns without a FluidVoice Dock icon.

Watch the 6-second Dock reopen proof

Notes

This reuses the existing applyDockVisibilityPolicy() path and preserves the reopen-suppression guard.

@github-actions github-actions Bot added the needs screenshots Pull request needs screenshot or video evidence. label Aug 4, 2026
@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown

The PR Policy check is blocking this PR because required template information is missing.

Please update the PR description with:

  • Screenshots / Video

Screenshots or video are required for UI, UX, settings, onboarding, overlay, menu bar, or visual behavior changes. If this PR has no visual changes, check the no-visual-change box in the template.

If this remains incomplete for 48 hours after opening, the PR may be closed.

@greptile-apps

greptile-apps Bot commented Aug 4, 2026

Copy link
Copy Markdown

Greptile Summary

Reapplies the saved Dock visibility preference when LaunchServices externally reopens an already-running app.

  • Preserves the existing reopen-suppression path.
  • Restores the preferred activation policy before foregrounding on ordinary external reopens.
  • Clarifies the activation-policy documentation.

Confidence Score: 5/5

The PR appears safe to merge with no concrete regressions identified.

The new call reuses the existing persisted-policy path on external reopen, retains the suppression guard, and continues through the established activation and window-foregrounding sequence.

Reviews (1): Last reviewed commit: "fix: preserve hidden Dock state on reope..." | Re-trigger Greptile

@github-actions github-actions Bot removed the needs screenshots Pull request needs screenshot or video evidence. label Aug 4, 2026
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.

[BUG] Dock icon reappears on reopen despite "Hide from dock" — also blocks the hide-menu-bar-icon workflow (#382)

1 participant