Repository navigation
Dock icon stays after launch on macOS 27.0: accessory demotion silently fails #4101
Copy link
Copy link
Closed
Labels
P2Normal priority bug or improvement with limited blast radius.Normal priority bug or improvement with limited blast radius.clawsweeper:fix-shape-clearClawSweeper found a clear likely implementation shape for this issue.ClawSweeper found a clear likely implementation shape for this issue.clawsweeper:queueable-fixClawSweeper marked this issue as an existing queue_fix_pr work candidate.ClawSweeper marked this issue as an existing queue_fix_pr work candidate.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:ux-frictionUser-facing flow adds avoidable confusion or support burden without fully blocking progress.User-facing flow adds avoidable confusion or support burden without fully blocking progress.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.no-staleExempts this issue from stale automation.Exempts this issue from stale automation.
Description
Activity
Metadata
Metadata
Assignees
Labels
P2Normal priority bug or improvement with limited blast radius.Normal priority bug or improvement with limited blast radius.clawsweeper:fix-shape-clearClawSweeper found a clear likely implementation shape for this issue.ClawSweeper found a clear likely implementation shape for this issue.clawsweeper:queueable-fixClawSweeper marked this issue as an existing queue_fix_pr work candidate.ClawSweeper marked this issue as an existing queue_fix_pr work candidate.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:ux-frictionUser-facing flow adds avoidable confusion or support burden without fully blocking progress.User-facing flow adds avoidable confusion or support burden without fully blocking progress.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.no-staleExempts this issue from stale automation.Exempts this issue from stale automation.
CodexBar shows up in the Dock on every launch since I'm on macOS 27.0 (26A428), and it stays there. CodexBar 0.68.0 (159), installed in /Applications,
LSUIElementis true and LaunchServices has it registered asui-element.It happens on a clean quit and relaunch, not only after a Sparkle update. Polling
NSWorkspace.runningApplicationsfrom a separate process right afteropen -a CodexBar:With
CODEXBAR_STATUS_ITEM_DIAGNOSTICS=1, the startup trace reportsactivationPolicy: 1on every line fromwill-finish-launchingtostartup-check, whilelsappinforeports the process astype="Foreground". The SwiftUI Settings placeholder ({{840, 580}, {900, 450}}) isvisible: truefromdid-finish-launchingthroughrendered, andfalseatstartup-check.So my reading is: the visible placeholder qualifies for promotion in
shouldPromoteForPresentedWindow, the app goes.regular, and the latersetActivationPolicy(.accessory)doesn't take effect.That last part looks like an OS bug rather than CodexBar's logic. A minimal AppKit app with
LSUIElement = truereproduces it on 27.0:The in-process getter never leaves
.accessory, and the switch back to.accessoryreturns false. I also tried re-setting.regularfirst, callingNSApp.activatefirst, and going through.prohibited(with and without a delay)..prohibitedtakes effect, but.accessorynever does. Peekaboo shows the same symptom for the same reason. I haven't compared against an older macOS, so I can't say for sure it's new in 27.0, but it only started for me after updating.Since the demotion can't be relied on, avoiding the promotion in the first place would sidestep it. For example, not counting the empty SwiftUI Settings placeholder as a presented Settings window at launch. Happy to test a build if that helps.