Skip to content

feat: embed multi-resolution app icon#189

Merged
fuzzzerd merged 1 commit intomasterfrom
fuzzz/app-icon
Apr 23, 2026
Merged

feat: embed multi-resolution app icon#189
fuzzzerd merged 1 commit intomasterfrom
fuzzz/app-icon

Conversation

@fuzzzerd
Copy link
Copy Markdown
Owner

Summary

Avalonia's Window.Icon only sets the title bar (via WM_SETICON). The Windows taskbar, Explorer, and Start Menu shortcuts all read the icon embedded in the .exe's Win32 resources, which the apphost can only populate when <ApplicationIcon> is set on the project. Without it, the installed build shows a generic icon in the taskbar even though the title bar renders correctly.

Generated app.ico from the existing monster PNG with seven sizes (16, 24, 32, 48, 64, 128, 256) so the OS picks the appropriate resolution per context. Source PNG is 613x596 — padded to a square canvas with transparent background before downscaling so nothing is cropped.

Avalonia's Window.Icon only sets the title bar via WM_SETICON. The
Windows taskbar, Explorer, and shortcuts read the icon embedded in the
.exe's Win32 resources, which the apphost has no way to populate without
ApplicationIcon set on the project.

Add a multi-resolution app.ico (16, 24, 32, 48, 64, 128, 256) generated
from the existing monster PNG and reference it from the csproj.
@github-actions
Copy link
Copy Markdown

Test Results

✔️ Tests 1155 / 1155 - passed in 10s
✔️ Coverage 78.08% - passed with 70% threshold
📏 13104 / 15325 lines covered 🌿 4506 / 7229 branches covered
🔍 click here for more details

✏️ updated for commit be59671

@fuzzzerd fuzzzerd enabled auto-merge (rebase) April 23, 2026 22:50
@fuzzzerd fuzzzerd merged commit ace6c64 into master Apr 23, 2026
6 checks passed
@fuzzzerd fuzzzerd deleted the fuzzz/app-icon branch April 23, 2026 22:53
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