Repository navigation
fix: crisp taskbar icon, dark-mode tray icon and the refined Kōrero mark - #7
Merged
Merged
Conversation
…mark Taskbar: Tauri builds the Windows window/taskbar icon from the FIRST icon.ico frame. Ours was 16px, stretched to ~48px at 200% scaling. icon.ico is now written largest-first (Pillow's ICO writer sorts smallest-first, so scripts/gen-icons.py writes the container itself). Tray: the theme mapping was inverted (a dark taskbar got the dark-grey K) and keyed off the app theme, not the taskbar theme. Windows now reads SystemUsesLightTheme; a pixel-based test guards the mapping. Design: replaces the upstream Handy glove with the macron-K (white K, Kōrero-blue macron, dark tile) and redraws the tray K with heavier strokes and a cut-out state dot. All sizes come from scripts/gen-icons.py. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HWh12VTnfGzapQEG42Nzst
Owner
Author
Code reviewNo issues found. Checked for bugs and CLAUDE.md compliance. 🤖 Generated with Claude Code |
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.
Before Submitting This PR
Please confirm you have done the following:
If this is a feature or change that was previously closed/rejected:
Human Written Description
Nic's request, in his own words (26 Oct 2026): "Low res taskbar icon", "I want a dark mode task bar icon, and an improved design". He chose design A (refined K) with a matching app icon from three candidates.
Related Issues/Discussions
Fixes: blurry Windows taskbar icon; near-invisible tray icon on a dark taskbar. Kind: fix (plus the agreed icon redesign). No dependency, schema or workflow changes.
Community Feedback
n/a (Kōrero fork).
What changed and why
src-tauri/icons/icon.ico(tauri-codegen2.5.4,src/image.rs:icon_dir.entries()[0]). Ours was 16×16, stretched to ~48 px at 200% scaling.icon.icois now written largest-first (256 → 16). Pillow's own ICO writer sorts smallest-first, soscripts/gen-icons.pywrites the container itself.tray.rs::get_icon_pathwas inverted: the*_dark.pngfiles hold the white glyph meant for dark taskbars but were mapped to the light theme, so a dark taskbar got a dark-grey K. It also read the app theme (AppsUseLightTheme) rather than the taskbar's (SystemUsesLightTheme); Windows now reads the taskbar setting viawinreg, falling back to the window theme.#0A84FFmacron,#151517tile) replacing upstream Handy's glove in every bundled size. Everything is generated bypython scripts/gen-icons.pyfrom one definition.Not changed: Linux "coloured" tray icons,
icons/android,icons/ios. Known residual: a taskbar-only theme switch (apps unchanged) fires noThemeChanged; the tray updates on the next state change or restart.Testing
All on yoga-26 (Windows 11, fully dark theme, 200% scaling), at this branch's head:
tray::icon_contrast_tests::tray_icon_contrast_matches_theme: checks glyph luma by pixel for every theme/state (dark taskbar > 170, light < 110), not by file name. Shown to fail under the old mapping (glyph luma 60 on a dark taskbar).cargo test --lib --locked,cargo check --locked,bun test unit-tests,tsc --noEmit,eslint src: see the gate results in the comment below / CI.--config .github/ci-no-updater.json) installed on yoga: the six installed tray PNGs hash-match the generated ones; app starts with no icon-load warnings; Parakeet loads; Nic checked the taskbar and tray icons by eye and approved.Screenshots/Videos (if applicable)
Icon candidates and the chosen set were reviewed in the session (contact sheets at true tray size, 32 px at 200%, and 16 px).
AI Assistance
If AI was used:
🤖 Generated with Claude Code
https://claude.ai/code/session_01HWh12VTnfGzapQEG42Nzst