62 Commits
Author SHA1 Message Date
Lu Fan(SonnyCalcr) 1b875267db refactor: 移除 WebView2,界面只保留 Direct2D (#1013)
* refactor(engine): 语音独立工具改用原生托盘菜单,移除 WebView2

托盘菜单改用 Win32 弹出菜单,设置项改为用关联编辑器打开 config.toml,关于页改为消息框。删除 window_webview2 与两份 HTML 资源,windows-app 特性不再依赖 webview2 端口。

* refactor(server): 移除 WebView2,候选窗、工具栏、托盘菜单与设置窗口只保留 Direct2D

删除 src/webview2 与 webview_utils,小窗口的置顶、皮肤重载和工具栏状态缓存移到 window/small_windows,presenter 成为唯一路径,D2D 下的置顶时序与 cloak 行为保持不变。设置进程去掉 WebView2 宿主、鼠标转发与启动图,只构建原生窗口;旧快捷方式传入的 --d2d / --webview2 被忽略。删除 appearance.ui_backend 与 appearance.settings_ui_backend(读取、写入、设置页下拉框与两份配置模板),升级时由模板合并丢弃旧值。设置窗口的图片资源移到 server/assets/settings,安装到数据目录的 assets\settings。不再链接 WebView2Loader,vcpkg 去掉 webview2 端口。

* build(installer): 打包与 CI 不再处理 WebView2 页面和运行时

Prepare-PackageFiles 去掉 -UiHtmlDirectory 与 html 暂存,改为暂存 server/assets/settings;安装器不再检查 WebView2 Runtime、不再创建 ProgramData 下的 WebView2 用户数据目录,升级和卸载时清理旧版留下的 webview2 / webview2-settings 与数据目录里的 html。CI 删除设置页构建、契约同步检查和候选窗 DOM 测试,release 的打包任务不再依赖网页产物;dependabot 去掉 npm。第三方声明去掉 WebView2Loader。

* refactor(ui-html): 删除 WebView2 页面与设置页前端工程

候选窗、工具栏、托盘菜单、设置页、主题和契约副本都已没有使用者;设置窗口用到的图片资源已移到 server/assets/settings。sync-contracts.py 与 pnpm/Vite/TypeScript 工程一并删除,契约仍以 engine/contracts/webview 为唯一来源。

* docs(server): 文档改为只描述 Direct2D 界面

仓库地图去掉 ui-html,组件边界、uiAccess 与置顶时序、设置窗口和配置读写的说明改写为 Direct2D 唯一界面;安装说明去掉 WebView2 Runtime 检查,打包命令去掉 -UiHtmlDirectory;engine/contracts/webview 的说明改为设置窗口是唯一使用者,名字是历史遗留。

* docs(skins): 皮肤说明不再区分 WebView2 与 D2D 渲染器

v2 字段去掉「仅 WebView2」,改为说明由 Direct2D 原生渲染、部分字段仍在补全;颜色必须带 # 改为清单格式约定。随包的 skins/niya-demo/skin.toml 不改,免得用户机器上的同名皮肤在升级时被当成已修改而改名备份。

* docs(ui): demo 说明文字不再提 WebView2
2026-10-17 02:48:02 +08:00
Evan 42238a2af6 style: 用 .clang-format 重排 server / windows / ui / log
一次性重排,无任何行为改动。四个目录各自的 .clang-format 放在仓库里已久,但全组织只有
MSIME-Linux 在 CI 里执行 clang-format 检查,这边 149 个文件里有 149 个不符合自己声明的风格。

已逐文件核对语义等价:去掉空白、注释与相邻字符串字面量拆分之后,全部 149 个文件与重排前逐字节
相同。差异只有三类——缩进与换行、clang-format 补的 } // namespace 结尾注释、以及长字符串被拆成
相邻字面量(C++ 保证自动拼接)。

这个提交会写进 .git-blame-ignore-revs。
2026-09-06 12:13:47 +09:00
fanlusky f0759db93e Optimize the rendering smoothness of strokes in the handwriting input area. 2026-07-20 01:37:15 +08:00
fanlusky 4e8e85afd8 Make handwriting recognize demo 2026-07-20 01:32:31 +08:00
fanlusky 548330b8cf Make a demo of an on-screen keyboard. 2026-07-15 18:22:50 +08:00
fanlusky 8bc914b258 Make the scrollbar of the emoji panel demo scrollable. 2026-07-15 18:09:32 +08:00
fanlusky cbeef9e147 Adjust font size and search box height 2026-07-15 17:19:45 +08:00
fanlusky 3a41372f24 Adjust font size and some layouts 2026-07-15 15:50:50 +08:00
fanlusky 59a73b8476 Optimize the emoji panel size. 2026-07-15 15:43:58 +08:00
fanlusky 05a4ada19d Optimize the emoji panel. 2026-07-15 15:34:53 +08:00
fanlusky 604cf987b1 emoji panel demo step01 2026-07-15 14:49:36 +08:00
fanlusky 4f62123699 Support image render 2026-07-15 14:39:55 +08:00
fanlusky e210c8eb4c Allow popups to scroll out of view 2026-06-19 13:00:35 +08:00
fanlusky 8330d7cf15 Narrow candidate header text slot 2026-06-19 12:06:52 +08:00
fanlusky b1a07ea3f2 Tighten candidate caret spacing 2026-06-19 12:04:06 +08:00
fanlusky 66b359e461 Fix candidate header caret visibility 2026-06-19 12:01:54 +08:00
fanlusky 946ebb1802 Add candidate header caret 2026-06-19 11:58:20 +08:00
fanlusky 6326e0f81d Remove candidate header bottom gap 2026-06-19 11:42:18 +08:00
fanlusky f015dbbb42 Set candidate header top gap to 2px 2026-06-19 11:40:15 +08:00
fanlusky 452b5c6aa0 Lower candidate header baseline 2026-06-19 11:37:10 +08:00
fanlusky 33350ab7c2 Trim candidate header text metrics 2026-06-19 11:34:30 +08:00
fanlusky d153fd0632 Tighten candidate header spacing 2026-06-19 11:29:24 +08:00
fanlusky fffcf648b2 Widen candidate highlight block 2026-06-19 11:24:32 +08:00
fanlusky abe110c6e1 Refine candidate preview weight 2026-06-19 11:14:22 +08:00
fanlusky 718d4f9559 Align candidate preview typography 2026-06-19 11:06:54 +08:00
fanlusky 9e7d1acdac Scale candidate preview back up 2026-06-19 10:59:29 +08:00
fanlusky eb6d49b7ea Compress candidate preview spacing 2026-06-19 08:12:20 +08:00
fanlusky 912cf30148 Align candidate bar to selection edge 2026-06-19 08:07:54 +08:00
fanlusky d35dd7b2de Tighten candidate preview toward reference 2026-06-19 08:00:25 +08:00
fanlusky 01612f3db3 Polish candidate preview shell 2026-06-19 07:52:08 +08:00
fanlusky a182e6a16f Tune candidate preview emphasis 2026-06-19 06:50:02 +08:00
fanlusky ddbfbabaec Match candidate preview to HTML styling 2026-06-17 20:36:17 +08:00
fanlusky 2953e2685a Fix compact candidate preview spacing 2026-06-17 20:31:59 +08:00
fanlusky 69fc8ca540 Tighten candidate preview layout 2026-06-17 20:28:02 +08:00
fanlusky 34ea7bf8cc Fix candidate preview text encoding 2026-06-17 20:23:29 +08:00
fanlusky 41f4571bd2 Add candidate popup keyboard navigation 2026-06-17 20:20:17 +08:00
fanlusky 10cfb70d66 Add candidate popup preview primitives 2026-06-17 19:08:27 +08:00
fanlusky 4c52750354 Move scene padding into demo root content 2026-06-16 21:30:16 +08:00
fanlusky c051b84946 Align TabControl page content padding 2026-06-16 21:19:43 +08:00
fanlusky 3aa1a650a6 Add centered text alignment for TextBlock 2026-06-16 18:28:50 +08:00
fanlusky 52b9108428 Fix centered layout for demo header 2026-06-16 18:24:25 +08:00
fanlusky 326d4a2497 Center demo title and subtitle 2026-06-16 18:18:40 +08:00
fanlusky 262fc10318 Fix accordion demo overflow when expanded 2026-06-16 18:05:01 +08:00
fanlusky 2a2dd48560 Enable multi-expand accordion demo 2026-06-16 18:01:15 +08:00
fanlusky 5c43fda18d Increase popup action spacing in demo 2026-06-16 17:49:12 +08:00
fanlusky a5cd7b6b48 Increase popup content spacing in demo 2026-06-16 17:47:06 +08:00
fanlusky f531201154 Fix popup spacing and scroll repositioning 2026-06-16 17:09:32 +08:00
fanlusky 8a8e7bf6db Fix TabControl overview content left padding in demo 2026-06-16 16:45:33 +08:00
fanlusky 8cd63e5bf4 Refine TabControl overview page spacing in demo 2026-06-16 16:41:22 +08:00
fanlusky 05662ea203 Tweak demo spacing for interactive control buttons 2026-06-16 16:33:26 +08:00