Repository navigation
fix(windows-tray): 左键显示独立状态浮层 - #60
Draft
mel0nyrame wants to merge 1 commit into
Draft
mel0nyrame wants to merge 1 commit into
mel0nyrame wants to merge 1 commit into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #59
背景
#59 的 Windows 实机结果表明,托盘左键仍打开完整“网络概况”窗口。#37 的托盘交互目标与 #40 的浮层实现要求左键显示贴近图标的简短状态,完整详情由明确操作打开。
变更轮廓
托盘左键的窗口归属改为:
test/windows_tray_contract_test.dart核对原生托盘事件、独立窗口入口、主窗口与浮层的接线;test/windows_status_popup_test.dart核对状态区、简短信息行、按钮和小视口布局。原生 C++ 源码已通过 MinGW 语法检查。这些证据不代替 Windows Shell 实机点击验证。认证状态及操作保持由主运行时拥有:
test/windows_status_popup_test.dart核对状态投影不携带运行时自由文本或设备资料,并核对浮层命令回传;test/windows_tray_contract_test.dart核对两侧通道、单实例认证调用链和右键菜单。浮层收到真实快照并完成首帧后才显示,避免展示默认状态;该顺序有通道/widget 测试和接线断言,仍待 Windows 实机确认。ADR-0012 记录了两个 UI engine、唯一认证运行时的所有权及取舍。验证汇总
tool/flutter_sdk.sh flutter pub get:通过,使用仓库声明的 Flutter 3.47.5。tool/flutter_sdk.sh dart format --output=none --set-exit-if-changed .:通过,76 个 Dart 文件无格式漂移。tool/flutter_sdk.sh flutter analyze --no-fatal-infos:通过,无 error/warning;报告 96 条既有 info。tool/flutter_sdk.sh flutter test --reporter compact:通过,210 项测试。flutter_window.cpp、tray_popup_window.cpp、win32_window.cpp执行 C++17 语法检查:通过。git diff --check:通过。评审注意事项
Windows 验收安装包已发布为预发布版,SHA-256 与 CI 产物已核对。请在 Windows 10/11 x64 安装包上核对托盘左键、再次点击、失焦、右键菜单、详情窗口、未配置及在线等真实状态;覆盖托盘折叠区、多屏与高 DPI,并附左键浮层、右键菜单、详情窗口截图。完成这些检查前,#59 保持 open,本 PR 保持草稿且不合并。按照用户要求,本次未委派独立只读 reviewer;仓库交付文档要求的多调用链 PR 正文预审尚待完成。
风险与回滚
浮层首次打开会启动第二个仅用于 UI 的 Flutter engine,增加进程内存;认证协调器仍只有主运行时一份。Windows Shell 的焦点、位置和 DPI 行为需要上述实机证据。无需数据迁移;若出现回归,可回退提交
87c06e1。