From e9030a6dd25b98e069187cc977125d5acf033d15 Mon Sep 17 00:00:00 2001 From: Steve Cliff Date: Thu, 20 Aug 2026 10:11:36 +0100 Subject: [PATCH] fix: embed Windows executable icon --- BUILD.md | 14 ++++++++++++-- assets/fancywin.ico | Bin 0 -> 17014 bytes cmd/fancywin/main.go | 2 +- cmd/fancywin/rsrc_windows_amd64.syso | Bin 0 -> 17278 bytes cmd/fancywin/rsrc_windows_arm64.syso | Bin 0 -> 17278 bytes 5 files changed, 13 insertions(+), 3 deletions(-) create mode 100644 assets/fancywin.ico create mode 100644 cmd/fancywin/rsrc_windows_amd64.syso create mode 100644 cmd/fancywin/rsrc_windows_arm64.syso diff --git a/BUILD.md b/BUILD.md index 47f0b3a..d91a06d 100644 --- a/BUILD.md +++ b/BUILD.md @@ -21,7 +21,9 @@ The project uses pure Go and sets `CGO_ENABLED=0`. No C compiler, Windows SDK, ```text cmd/fancywin/ CLI entry point assets/fancywin.png Full-resolution generated icon source +assets/fancywin.ico Windows executable icon source internal/assets/ Embedded runtime image assets +cmd/fancywin/rsrc_windows_*.syso Embedded Windows executable icon resources internal/config/ YAML model, loading, and validation internal/layout/ Platform-neutral zone geometry internal/platform/platform_windows.go Win32 backend @@ -65,6 +67,12 @@ work without a second binary. Normal execution calls `FreeConsole` and operates through the notification-area icon. `--debug` retains the console, while startup failures in detached mode are shown with `MessageBoxW`. +The architecture-specific `.syso` files beside the `main` package embed the +same FancyWin artwork used by the notification-area icon as the executable's +Windows icon resource. The Go toolchain selects and links the matching resource +automatically, so Explorer and shortcuts display the FancyWin icon without any +additional build tools. + ## Cross-compiling The standard x64 build can be produced from the repository root with: @@ -158,10 +166,12 @@ Test both x64 and ARM64 where hardware is available: is used for subsequent moves. 12. Confirm the custom icon is crisp in the normal and overflow notification areas at 100%, 150%, and 200% scaling. -13. Select each named layout from the tray, confirm the check mark and overlay +13. Create a shortcut to `fancywin.exe` and confirm Explorer displays the same + FancyWin artwork instead of the default application icon. +14. Select each named layout from the tray, confirm the check mark and overlay change immediately, and verify `active_layout` changes without disturbing YAML comments or layout formatting. -14. Right-click the tray icon, select `Exit`, and confirm the process and icon +15. Right-click the tray icon, select `Exit`, and confirm the process and icon both disappear cleanly. ## Architecture diff --git a/assets/fancywin.ico b/assets/fancywin.ico new file mode 100644 index 0000000000000000000000000000000000000000..46542ee6911fde36f897a1f68c74b5f30f0dd721 GIT binary patch literal 17014 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

OVd*75HtafAAVd7-Y;83H-fK{{a4K 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 P;-CMg2K$@M3Nil+y^(^W literal 0 HcmV?d00001 diff --git a/cmd/fancywin/rsrc_windows_arm64.syso b/cmd/fancywin/rsrc_windows_arm64.syso new file mode 100644 index 0000000000000000000000000000000000000000..dc335fb6b7dde1ab2cdeb390725f24b4423aac14 GIT binary patch literal 17278 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 literal 0 HcmV?d00001