docs(P5): 悬浮玻璃导航落地记录 + 视觉验收的**实测**阻塞(不是"还没做")
- §5.4 的 P5 行由「⬜ 未做」改为「✅ 主体完成」,并写明**未验项与原因**。 - 新增 §7.21:改了什么(NavItems.ts 放尺寸常量让判据判**数值**;内容按 index 挂载; 内容底部让位 76vp —— 不让位则最后一行压在条底下,看得见点不到)、判据 6 条、 4 种变异、以及**判据自己修的两处**(非贪婪正则撞对象字面量的 `}`;色值检查读了含注释的原文)。 - §7.21 末节把"观感验不了"逐层测清楚:①模拟器要写工作区外的 /root/.Huawei/…/Log/qemu.log,本会话 workspace-write 判 Permission denied; ②放宽权限需审批而**这条链上没有人类**,工具明确拒绝;③不需要权限的替代路 (HOME 挪进工作区,复制实例 + 符号链接镜像,2.7GB)过了写入这关却卡在**许可协议**, 重放 y 等于替用户同意法律协议 —— 不做,已停止模拟器并删除暂存副本。 → 要解除需人二选一:放行工作区外写入,或由人在本机起模拟器后把画面交回。 验证:hvigorw assembleHap BUILD SUCCESSFUL;npm test 14 个判据文件里 13 绿 (唯一红的 narrow-layout 由并发写作者的未提交 MailView.tsx 改动引起 —— 用 git stash 验过: 剥掉那个改动即 52 通过,与 P5 无关,未动他人的文件)。
This commit is contained in:
@ -175,7 +175,7 @@ WebUI 侧 `npm test` 在 **HEAD 上就是红的**(`test/background.test.mjs`
|
||||
| P2b ✅ | 发件箱页:`GET /me/mail/sent`,复用列表项 | 判据:接口路径、行上主角是收件人、空态有说明(主句与 WebUI 逐字一致) |
|
||||
| P3 ⚠️ 主体完成 | 授权页:`GET /permission/pending` + `POST /permission/decide` | 未决口径与 WebUI 一致(无 `permission_result`)✅;拒绝可填备注且备注送出 ✅;`expired` 当场说清"这次批准不会恢复原调用" ✅。**未验**:真机上点同意/拒绝后状态是否"立刻变"(判据只钉到"决策后重新拉列表"这一层) |
|
||||
| P4 ✅(P4c 上传除外) | 主题/壁纸(`/me/appearance`) | 换账号外观跟随 ✅(缓存键带账号);服务端无记录时以本地为准 ✅(§7.16);**预设 6 档都能画出来** ✅、图片壁纸渲染 ✅(§7.17 —— 这一版补的,第一版只有数据没有画面)。**未做**:P4c 上传入口。**未验**:真机观感(配色/对比) |
|
||||
| P5 ⬜ 未做 | 悬浮玻璃导航(取代系统 TabBar) | 模糊只由壁纸层负责;列表项每项一张卡;命中区 ≥44vp。现状:底栏仍是系统 `Tabs`,只有自绘的 tabBar builder 带了 `backgroundBlurStyle`(§7.10) |
|
||||
| P5 ✅ 主体完成 | 悬浮玻璃导航(取代系统 TabBar) | **已换**:自绘浮动玻璃条 `NavBar`(留白 + 胶囊圆角 + 系统材质),内容按 `currentIndex` 挂载;命中区 ≥44vp(数值在 `NavItems.ts`,判据直接 import);内容底部让出 76vp(不让位则最后一行压在条底下:看得见、点不到)—— §7.21。判据 6 条全绿、4 种变异都能红。**未验**:玻璃条在真机上的观感(材质浓度/圆角/阴影)、深色主题下的表现、字形图标渲染 —— **原因是环境硬约束**(模拟器要写工作区外 + 审批无人可送 + 许可协议不接受代签),见 §7.21 末节的「视觉验收的实测阻塞」 |
|
||||
| P6 ⬜ 未做 | 日历(`/calendar/events`,含 ics 导入导出) | 手势阈值与 WebUI 一致(水平 ≥40px、≥1.5× 垂直、<600ms)。**有意排序**:入口与内容一起上,不留空页签(§7.15) |
|
||||
|
||||
**视觉/交互怎么验**:本机有 `harmony-emu`(实例 `HarmonyPhone`,hdc 在
|
||||
@ -773,6 +773,47 @@ pi 指出"邻接不是结构"这条已经在同一个仓库露头**三次**(
|
||||
判据要点用户真正会点的那一层。另外补了一条本仓刚踩的:**验证要按真实入口跑**
|
||||
(`node --test test/run-all.mjs` 会把 runner 内部的 `process.exit(1)` 吞掉)。
|
||||
|
||||
### 7.21 P5 悬浮玻璃导航(dsh,2026-09-14):换条不换信息架构
|
||||
|
||||
**改了什么**:底栏从系统 `Tabs` 的 bar 换成**自绘的悬浮玻璃条**。
|
||||
|
||||
- 新增 `model/NavItems.ts`:平级项清单(通信/联系人)+ 归一化 `normalizeNavIndex`
|
||||
+ **尺寸常量**(命中区下限 44vp、条高 56、左右留白 16、离底 12、圆角 28、内容让位 76)。
|
||||
放 `.ts` 是为了让判据能 `import` 这些**数值**(判"命中区 ≥44vp"时判的是数,不是拿正则去源码里猜)。
|
||||
- `MainPage.ets`:内容改为 `if (this.currentIndex === 0) CommPage else ContactsTab`(不再 `TabContent`),
|
||||
`TabBarBuilder` → `NavBar`(`Row` + `ForEach` + 四周留白 + 胶囊圆角 + `backgroundBlurStyle(Theme.navMaterial)`)。
|
||||
- **内容底部让出 76vp**:条浮在内容之上,不让位则列表最后一行永远压在条底下 ——
|
||||
**看得见、点不到**。这是"点得到"的问题,不是美观问题。
|
||||
|
||||
**判据 6 条**(新增第 14 个判据文件 `test/harmony-nav.test.mjs`):点击**配对**(每项必须落到
|
||||
自己的 index 并过归一化 —— 不写"存在 onClick",那东西全赋 0 也能过)、index 决定挂载、
|
||||
命中区 ≥44vp、悬浮 + 让位、根导航里不再有系统 `Tabs`/`TabContent`/`tabBar`(旧 builder 不留死代码)、
|
||||
玻璃分工(壁纸层零材质 + 这一处是"背后有可变内容"的放行且指名 GLASS_REGISTRY)。
|
||||
|
||||
**变异 4 种都能红**:点哪项都落到第 0 项 / 点击改状态但内容写死挂第一个页面 /
|
||||
命中区降到 32vp / 内容不让位。
|
||||
|
||||
**判据自己也修了两处**(都是本仓规范里已经写过的老毛病复发):非贪婪正则切 `if/else` 时
|
||||
在**对象字面量的 `}`** 上收尾(改成按花括号配对切片);"条上无手写色值"读了**原文**,
|
||||
而注释里正好写着"原来那两个手写色值"(改成读剥注释的源码)。
|
||||
|
||||
#### 视觉验收的**实测阻塞**(这一条要人来解,不是"还没做")
|
||||
|
||||
P5 的观感(材质浓度、圆角、深色下的表现、字形图标渲染)现在**验不了**,原因已逐层测出来:
|
||||
|
||||
1. 模拟器需要写**工作区之外**的路径 —— `/root/.Huawei/Emulator/deployed/HarmonyPhone/Log/qemu.log`;
|
||||
本会话的文件策略是 workspace-write,实测报
|
||||
`Emulator: Error opening logfile …: Permission denied`。
|
||||
2. 放宽权限需要审批,而**这条链上没有人类**(全程是 Agent 之间的邮件),审批无法送达 →
|
||||
工具明确拒绝,并提示"换用不需要权限的方式,或让上游转达给人类"。
|
||||
3. 试了"把 HOME 挪进工作区"这条不需要权限的路(复制实例 + 符号链接系统镜像,2.7 GB 暂存):
|
||||
写入问题绕过了,但卡在**许可协议** —— 接受记录在原来的 HOME 里,重放 `y` 等于由我替用户
|
||||
同意一份法律协议,**这个我不做**。已停止模拟器、删除暂存副本。
|
||||
|
||||
→ 结论:**没有设备/模拟器可用是这个环境的硬约束**(`hdc list targets` 为空是它的表象)。
|
||||
要解除,需要人有二选一:给这条链放行工作区外写入(或提供可写的 HOME + 已接受许可的实例),
|
||||
或者由人在本机跑 `harmony-emu start` 后把画面/操作结果交回。在此之前,**所有观感类结论一律"未验"**。
|
||||
|
||||
### 7.20 接手 pi 的两个 WebUI 开项(dsh,2026-09-14):两个实缺陷 + 途中踩到的三个坑
|
||||
|
||||
pi 明确说他那条链上**没有 shell**,而挂着的两个开项虽然读得出精确修法却没人执行;
|
||||
|
||||
Reference in New Issue
Block a user