Skip to content

Dark text on the green primary buttons - #50

Merged
SorcRR merged 5 commits into
masterfrom
claude/green-prominent-buttons
Oct 15, 2026
Merged

SorcRR merged 5 commits into
masterfrom
claude/green-prominent-buttons

Conversation

@SorcRR

@SorcRR SorcRR commented Oct 14, 2026 •

Copy link
Copy Markdown
Owner

Follow-up to #49. The bordered-prominent buttons tinted Razer green drew the system's white label on #44D62C, about 1.9:1 contrast. macOS gives no way to recolour that label, so this adds a shared RazerProminentButtonStyle in CardComponents.swift: a green rounded rect with onRazerGreen text, like the selected chips.

  • Sizes off the control size (regular or small). A font the caller sets still wins.
  • Pressed (darkened), disabled (dimmed), hover wash (hoverHighlight) and a focus ring for keyboard navigation.
  • keyboardShortcut(.defaultAction) still works.

Applied to Settings Install Now, Permissions Grant… / Relaunch / Done, Crash Report Send, Updated Done, What's New, and the popover's own green buttons (profile Save, Update & Restart / Download, Quit MacRazer). Permissions' not-yet-granted "Close" is now a plain .bordered button, matching the one beside it. The Send Report spinner is drawn dark so it shows on the green.

The plain default buttons that took the system accent (blue) are green too: Settings Done, About Done, Crash Report's post-send Done, and the device test's Start / Grant access / Run / Next / Done.

Also fixes the popover's add-profile plus button: only the glyph took clicks, because the circle was drawn outside the button's label. The circle is now part of the label with a circular hit area.

Checked: swift build, swift test (349 pass), changelog-test.sh. Hosted renders (NSHostingView) of Updated, Crash Report and What's New, plus Settings, About, the device test and Permissions.

Not checked: the focus ring, hover and the plus button's hit area in a live window.

🤖 Generated with Claude Code

The bordered-prominent buttons tinted Razer green drew the system's white
label on #44D62C, about 1.9:1 contrast, and macOS gives no way to recolour
it. A shared RazerProminentButtonStyle draws the green rounded rect with
onRazerGreen text instead, matching the selected chips, with pressed and
disabled states and sizing off the control size.
Draw a focus ring for keyboard navigation and the hover wash the app's other
custom buttons use. Permissions' Close stays a plain bordered button like its
neighbour, and the Send Report spinner draws dark so it shows on the green.
@SorcRR
SorcRR changed the base branch from claude/appearance-setting to master October 14, 2026 21:32
Settings, About, Crash Report's post-send Done and the device test's
Start/Run/Next/Done were plain default buttons, so they took the system
accent colour (blue) instead of the app's green.
The circle's frame, fill and stroke sat outside the plain button's label,
so only the plus glyph was hit-tested. Move them into the label with a
circular content shape.
@SorcRR
SorcRR merged commit 7143763 into master Oct 15, 2026
1 check passed
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.

1 participant