Files
iceking2nd 133091a32e feat(ui): 首次启动加密引导 + 真窗口图标 (.syso)
首次启动:
- 配置文件不存在时弹欢迎对话框:选「启用密码保护」或「稍后再说」
- 选启用直接进 setPasswordDialog,OK 时 store.SetPassword 触发首次保存
- io/fs.ErrNotExist 检测新分支
- modalCard 抽出 modalShell 内核以便 welcomeDialog 自定义 footer

真窗口图标:
- tools/gen_ico 从 PNG 生成多分辨率 .ico(7 尺寸:16~256)
- 提交 rsrc_windows.syso(rsrc 通过 goproxy.cn 生成),go build 自动链入
- tray_windows.go 改用嵌入资源 ID=1,失败 fallback IDI_APPLICATION
- README 更新完整的图标生成流程
2026-06-12 10:07:13 +08:00

54 lines
1.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# UI assets
## vendor_icons/
Generated placeholder icons (64×64 PNG) used to identify each
authenticator vendor in the entry list. They are intentionally generic —
a coloured rounded square with a single white initial — so they carry no
third-party trademark.
To use real vendor logos, replace any individual file in place. The
filename is the lookup key (matches `authenticator.Authenticator.Name()`):
- `google.png`
- `microsoft.png`
- `okta.png`
- `hotp.png`
- `battlenet.png`
- `steam.png`
- `qr.png` — fallback for entries with an unknown vendor
The recommended size is 64×64 PNG with transparent corners. Files are
embedded at build time via `//go:embed` in `internal/ui/vendor_icons.go`.
## app_icon.png
A 256×256 placeholder for the application window/tray icon. Gio v0.7 has
no runtime API to set the window icon — for Windows you need to embed a
`.ico` resource via `rsrc` or `goversioninfo` at build time. The
workflow is:
```
# 1. Regenerate app_icon.png (optional — only if you change the source)
go run ./tools/gen_icons
# 2. Bake a multi-resolution app_icon.ico from the PNG
go run ./tools/gen_ico
# 3. Compile the .ico into a COFF .syso that Go auto-links
GOPROXY=https://goproxy.cn,direct go run github.com/akavel/rsrc@latest \
-ico internal/ui/assets/app_icon.ico \
-o internal/ui/assets/rsrc_windows.syso
```
`rsrc_windows.syso` lives next to other assets so `go build` picks it up
without any extra build-tag wiring. The tray runtime loads the icon by
resource id 1 (the first (and only) icon rsrc emits); if loading fails
it falls back to `IDI_APPLICATION`.
To regenerate the placeholders, run:
```
go run ./tools/gen_icons
```