fix(menubar): unify action buttons across popovers - #7
Merged
Conversation
Both the combined popover and the per-metric popovers (CPU, GPU, Memory, Network, Disk, Sensors, Battery) used default system buttons that clashed with the dark monospaced card UI: uneven heights, a truncated "Check for Updates…" label, and a bulky full-width "Open Dashboard" next to small bordered buttons. Add a shared PopoverButtonStyle (Theme.swift): rounded panel fill, hairline border, monospaced label, fixed 28pt height, hover + press feedback, with a `prominent` accent variant for the single primary action. - Combined popover: Open Dashboard is primary; Settings and Quit split a row below at equal width. Drop "Check for Updates…" (already in Settings) and rename "Settings…" to "Settings". - Per-metric popovers: the shared OpenDashboardButton adopts the prominent style; the CPU dropdown drops its inline copy and reuses OpenDashboardButton. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
build-app.sh produced a bundle that crashed on launch with "dyld: Library not loaded: @rpath/Sparkle.framework": the SPM binary links Sparkle but the script never embedded the framework. Copy Sparkle.framework into Contents/Frameworks/, add the @executable_path/../Frameworks rpath, and ad-hoc sign the nested helpers, mirroring what scripts/package.sh does for Developer ID distribution. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Owner
|
Merged and shipped in v2.2.1 🎉 Thank you — lovely cleanup. The shared PopoverButtonStyle makes the whole menu-bar surface feel consistent, and catching the missing Sparkle embed in build-app.sh was a great bonus. Appreciate the thorough write-up and the before/after shots. Welcome, and thanks for your first contribution to SiliconScope! 🙏 |
kennss
added a commit
that referenced
this pull request
Jun 26, 2026
…d/Replay highlights, in all 6 languages - Replace hero image with the dashboard showing the Replay scrubber; refresh caption - Add inspector.png (Process Inspector — SpectaloWhispr, ANE 762 MB) - New 'New in 3.0' section (Process Inspector + Record & Replay) and Highlights bullets - English deep-dive #7: per-process metrics via proc_pid_rusage (incl. ri_neural_footprint) - Propagate hero caption + section + bullets to de/zh-CN/zh-TW/ja/ko
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.
What changed
Menu-bar popover buttons
The combined popover and the per-metric popovers (CPU, GPU, Memory, Network, Disk, Sensors, Battery) used default system buttons that clashed with the dark monospaced card UI: uneven heights, a truncated
Check for Updates…label, and a bulky full-widthOpen Dashboardsitting next to small bordered buttons.A shared
PopoverButtonStyleinTheme.swiftnow gives every button the card look: rounded panel fill, hairline border, monospaced label, fixed 28pt height, and hover + press feedback. Aprominentvariant adds an accent tint for the single primary action.MenuBarView.swift):Open Dashboardis the primary button;SettingsandQuitsplit a row below at equal width. DroppedCheck for Updates…from the popover since it already lives in Settings under Startup & alerts. RenamedSettings…toSettings.MenuBarMetric.swift): the sharedOpenDashboardButtonadoptsPopoverButtonStyle(prominent: true). The CPU dropdown dropped its inline button copy and reusesOpenDashboardButtonlike the others.Dev build script
scripts/build-app.shproduced a bundle that crashed on launch:The SPM binary links Sparkle, but the script never embedded the framework. It now copies
Sparkle.frameworkintoContents/Frameworks/, adds the@executable_path/../Frameworksrpath, and ad-hoc signs the nested helpers, matching whatscripts/package.shalready does for Developer ID distribution.Testing
swift buildis clean.dist/SiliconScope.appviascripts/build-app.shand launched it.OpenDashboardButtoncomponent.Screenshots