Say what was measured about the hidden icon, not what was inferred - #3
Merged
Conversation
Three corrections to the comments and README that shipped with the last change. The claim that placing the icon under one identity leaves it unplaced under the other was an inference, never tested. What was measured is the loop that keeps it hidden: both identity keys sat in Thaw's hidden section, and with "new items appear in hidden" set, an item it has no section for is cmd-dragged there and AppKit persists the drag as our own saved position — 430 rewritten to 5518. The exec-failure note said yap "cannot hold a place in the menu bar" without an identity. It can: the embedded __TEXT,__info_plist gives it a preferences domain either way, so a position still persists. What it falls back to is the process-name identity LaunchServices hands out, which is what it had before. The README told people to drag the mark out of the hidden section, which does not work as written: macOS needs Command held to move a menu bar item, and the section has to be revealed first.
Sourced from one function that matches on bundle identifier, then generalised into 'recognises only the bundled one' — which the measurement contradicts: Thaw persisted the yap:Item-0 fallback key in its saved layout alongside the bundled one. The two identities and the hidden-section loop are the measured facts and they carry the comment on their own.
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #2, documentation only. Four corrections, each replacing something I could not back with a measurement.
An inference stated as measurement. The comment claimed that placing the icon under one identity leaves it unplaced under the other. Never tested. The mechanism that was measured is the self-sustaining loop: both identity keys (
yap:Item-0andcom.terrifiedbug.yap:Item-0) sat in Thaw's hidden section, and with "new items appear in hidden" set, an item it has no section for is cmd-dragged there — AppKit then persists that drag as yap's own saved position, which I watched go from 430 to 5518. That is why it came back hidden on every launch.A claim about Thaw's relaunch tracking. "Matches on bundle identifier, recognises only the bundled one" came from reading one function and generalising. The measurement contradicts the generalisation: Thaw persisted the
yap:Item-0fallback key in its saved layout alongside the bundled one. Clause deleted; the two identities and the loop above carry the comment on their own.The exec-failure note was wrong. It said yap "cannot hold a place in the menu bar" without an identity. It can: the embedded
__TEXT,__info_plistgives the process a preferences domain whatever path it was started from, soNSStatusItem Preferred Positionstill persists. What it falls back to is the process-name identity LaunchServices hands out — the pre-Run the daemon from inside the app bundle so the icon keeps its place #2 behaviour.The README instruction did not work as written. It told people to drag the mark out of the manager's hidden section. macOS needs Command held to move a menu bar item, and the section has to be revealed first. Now says both.
Gate: release build, the CI smoke steps, the embedded-plist check, and swiftlint at 75 violations — same as main.