Repository navigation
feat(mac): add a text size menu and open the panel with a click on the bar - #90
Merged
dcolinmorgan merged 3 commits intoOct 16, 2026
Merged
Conversation
null1979
force-pushed
the
pr/mac-panel-size-click
branch
from
October 15, 2026 18:02
4ead1e8 to
9e25e2f
Compare
null1979
marked this pull request as ready for review
October 15, 2026 18:02
null1979
force-pushed
the
pr/mac-panel-size-click
branch
from
October 15, 2026 19:12
9e25e2f to
6b2946b
Compare
The status menu gets a Text Size submenu. It has Larger, Smaller, and presets from 100% to 200% in steps of 10%. The menu stores the value in herdi_ui_scale. Then it rebuilds the panel, so you see the change with no relaunch. reloadLayout() on the panel controller uses the same path as a screen change. It makes a new view tree and sets a new window frame. Each size that the scale touches gets measured again. When no value is stored, the scale is 120%.
A click on the bar opens the panel at once. A click while the panel is open closes it, and an open approval card closes as if waved away. Hover still opens the panel as before. The click cancels a pending hover timer, so the timer does not reopen the panel after the click closes it.
dcolinmorgan
force-pushed
the
pr/mac-panel-size-click
branch
from
October 16, 2026 09:27
6b2946b to
03d8b34
Compare
… stick The menu stored herdi_ui_scale and nothing read it: the panel kept its fixed 580x420 frame and its literal font sizes, so every percentage redrew the same panel. TextSize now owns the key, the clamp and the steps, the window grows with the scale, and the content below the notch is magnified as laid out. The notch bar is left alone so it still lines up with the hardware. Closing the session list with a click also marks what is blocked, or the one-second poll reopened the panel as an approval card straight away, and reloadLayout now replaces the root view in place rather than the hosting view, which used to drop the panel's state and leave a hover timer behind.
dcolinmorgan
force-pushed
the
pr/mac-panel-size-click
branch
from
October 16, 2026 09:29
03d8b34 to
4e56ce2
Compare
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.
Change
herdi_ui_scale, and the panel rebuilds with no relaunch. The default is 120%.reloadLayout()uses the same path as a screen change: a new view tree and a new window frame.Screenshot
The status menu with the Text Size submenu open.
Test:
herdi-mac/test.shandtests/run.shpass.Merge note: this PR and #89 both add items above "Launch at Login" in the status menu. The second one to merge needs a rebase there. Keep one separator between the two groups.
A bar click on an open approval card closes it the way main closes a dismissed card. #88 adds
collapse(dismissing:), which also gives the keyboard back. Whichever of #88 and #90 merges second must change the bar click to callcontroller.collapse(dismissing: agentId).