Skip to content

fix(tray): draw the macOS menu bar mark 14 pt tall, as large as its neighbours - #511

Merged
GeiserX merged 1 commit into
mainfrom
fix/tray-mark-bigger
Nov 5, 2026
Merged

GeiserX merged 1 commit into
mainfrom
fix/tray-mark-bigger

Conversation

@GeiserX

@GeiserX GeiserX commented Nov 5, 2026 •

Copy link
Copy Markdown
Owner

The akou mark in the macOS menu bar was smaller than the icons around it. The template drew the brand mark, which fills only 20 of its 32 units. At 16 pt that makes the glyph 10 pt tall, and its neighbours are about 14 pt.

The macOS idle template now draws the same mark larger: 28 of 32 px, so 14 pt, with a slightly heavier stroke. The ring, its counter and the stem all start and end on whole pixels at 32 px, so the 2x image has no grey half-pixel columns and stays sharp on a Retina display. The item width is unchanged: the image still loads at 16 pt, and the DK-T1 width test still passes.

The Windows and Linux icons, the brand mark, and the recording template (a disc that was already 15 pt) are unchanged.

A new test, [DK-T1] A small mark, checks that the glyph spans 28 px and that the stem's edges change from full ink to clear across one pixel boundary. Its positive control is the brand mark, which spans 20 px. Run against the 1.7.5 icon, the test fails.

Summary by CodeRabbit

  • Style
    • Updated the macOS idle menu-bar icon with a larger ring and stem and a heavier stroke, making it visually distinct from the recording icon.
    • Refined the icon’s cutout rendering while preserving the recording icon’s existing brand mark.

…eighbours

The idle template drew the brand mark, which fills 20 of its 32 units, so the glyph was 10 pt tall beside menu bar icons of about 14 pt. The macOS idle template now draws the mark on its own geometry, 28 of 32 px with a 5-unit stroke. Every straight edge stays on a whole pixel, so it is as sharp as before. The Windows, Linux and recording icons are unchanged.
@coderabbitai

coderabbitai Bot commented Nov 5, 2026 •

Copy link
Copy Markdown

Explain Change →

No actionable comments were generated in the recent review.

Walkthrough

Tray icon rendering now accepts parameterized mark geometry. The macOS idle template uses a larger, heavier MENU_BAR_MARK, while recording cutout logic continues to use the brand MARK. Shell tests check glyph ink, transparency, dimensions, and stem alpha.

Changes: Tray Mark Rendering

Layer / File(s) Summary
Mark rendering and geometry checks
scripts/tray-icons.ts, tests/shell.test.ts
The renderer accepts a Mark shape and uses it for drawing and pixel sampling. The macOS idle template selects MENU_BAR_MARK; recording cutout checks still use MARK. Shell tests check recording and idle glyph pixels, dimensions, and stem alpha.

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Bug fix

Possibly related PRs

  • GeiserX/akou#479: Changes the macOS tray-image renderer and recording-template geometry.
  • GeiserX/akou#509: Records a preceding macOS menu-bar sizing change that this PR follows.
Merge Risk: Minimal · up to d42de

The macOS idle mark is enlarged while recording and other platform icons retain their existing geometry. No concrete merge-blocking issue is established; merge after normal checks pass.

Pre-merge checks: Passed 5

Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title names the main change: the macOS menu bar mark is drawn 14 pt tall to match its neighbours. The summary confirms a larger ring, stem, and heavier stroke for MENU_BAR_MARK, used for the macOS…
Docstring Coverage Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentat…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Title check

Explanation

The title names the main change: the macOS menu bar mark is drawn 14 pt tall to match its neighbours. The summary confirms a larger ring, stem, and heavier stroke for MENU_BAR_MARK, used for the macOS idle template. The title is concise, specific, and free of file lists or vague terms. The 'fix(tray):' prefix follows conventional commit style.

Full details: Docstring Coverage

Explanation

Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 3 functions across 2 files.

Finishing Touches

Generate docstrings

  • Commit to this branch
  • Create a new PR
Generate unit tests (beta)

  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Warning

Some tools did not complete. Review the errors below.

Biome (2.5.15)

scripts/tray-icons.ts

Biome could not lint this file: configuration resulted in errors. Check the repository's Biome configuration and plugins.

tests/shell.test.ts

Biome could not lint this file: configuration resulted in errors. Check the repository's Biome configuration and plugins.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

Recent review info

Run configuration

Commits

Reviewing files that changed from the base of the PR and between 7397234 and d42de5a.

Files ignored due to path filters: 1

  • src/main/window/tray/akou-template.png is excluded by !**/*.png
Files selected for processing: 2

  • scripts/tray-icons.ts
  • tests/shell.test.ts

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.

@GeiserX
GeiserX merged commit ee68cbc into main Nov 5, 2026
30 checks passed
@GeiserX
GeiserX deleted the fix/tray-mark-bigger branch November 5, 2026 12:01
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