| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
chore: snapshot before size optimization Backup commit to preserve crash reporter and other in-flight changes before starting app size reduction work (webpack/forge config changes). | 2 个月前 | |
refactor(splash): 启动画面改用 BaseWindow + ImageView 位图,移除 HTML 渲染路径 启动画面此前是「内联 SVG + <text> 的静态 HTML」,首帧成本里仍含字体匹配与 字形 shaping(且仍要起一个渲染进程)。改为在主进程内直接绘制: - src/main/splashManager.js 重写为 new BaseWindow() + new ImageView(), nativeImage 两个 representation(2x/3x)挂同一个对象,各屏各取 1:1 位图; - scripts/generate-splash-image.js(新增,@napi-rs/canvas devDep)在构建期把 版面/亚克力卡片/版本号/构建时间烘进 PNG,src/splash@2x.png、@3x.png 为 构建产物(.gitignore),由 prestart / prepackage 生成; - scripts/generate-build-info.js 输出 buildDateDisplay / utcOffset / channel / buildYear 供位图直接拼接,不再做模板占位符替换;CI 在 release 分支导出 SXS_CHANNEL=stable,其余一律 Nightly; - webpack.main.config.js CopyPlugin 逐字拷两张 PNG 到 .webpack/main/, verify-build-assets.js 改为校验生成器(产物在其后才生成); - 删除 src/splash.html.template,src/preload.js 注释去掉 splash 窗口; - ImageView 属实验 API:类缺失或位图读不到时降级为「不显示启动画面」, 绝不阻断启动(test/splashAssets.test.js 守这条及窗口尺寸/倍率/CopyPlugin)。 窗口 480×272 transparent + hasShadow:false(圆角靠 per-pixel alpha), 尺寸必须等于生成器的 LOGICAL_W/H,否则 ImageView 会拉伸。 | 13 天前 |