docs(plans): 留痕 K41-A 登录页重设计

This commit is contained in:
Zhou Weidong committed 2026-10-20 16:21:39 +08:00
1 parent a92f903738
commit 2ed8f339db
2 files changed
+60 -11

No files matched your search

+29 -11
View File
@@ -1,19 +1,37 @@
## [已处理] 2026-10-20 | K40-B 评论需登录:未登录点输入框即引导登录(仅 App 端)
## [已处理] 2026-10-20 | K41-A 登录页:修复邮箱/密码输入不可见 + 视觉升级(仅 App 端)
**用户指令(2026-10-20,原文)**:
> 「还有评论也需要登录后才能评论」
> 「现在修改登录页面 邮箱登录输入框内容都看不见而且登录页面很素」
**现状**:`DramaCommentsSheet._post()` 已有 `ensureSignedIn`,但输入框可直接聚焦输入,用户输完点发送才被拦,体验上像「能评论」。
**根因(已定位)**:`lib/pages/auth/auth_form_widgets.dart` 中邮箱与密码 `TextField` 的 `style` 用了 `AppColors.onPrimary`(白色),而输入框填充是 `AppColors.bar`(近白 #FFFDFB),文字与背景同色导致「看不见」。
**口径(只改 Flutter,不动后端、不改接口)**
1. 未登录时点击评论输入框:不聚焦、不弹键盘,直接走 `ensureSignedIn` 登录闸;登录成功返回后自动聚焦输入框,取消则保持失焦。
2. 未登录时点发送:直接走登录闸,不放行空内容提示;已登录行为不变(空内容不提交)。
3. 未登录时输入框 hint 显示「登录后参与评论」(新增 l10n `commentLoginHint`:zh 登录后参与评论 / en Sign in to comment / id Masuk untuk berkomentar),已登录仍用 `writeComment`。
4. 回复、点赞、删除、举报等既有登录闸保持不变;评论列表匿名可读不变。
**口径(只改 Flutter,不动后端、不改接口;所有既有 Key 保留)**
### 一、输入可见性(必修)
1. 邮箱/密码输入文字颜色改 `AppColors.onSurface`(15 号),光标 `AppColors.blue`。
2. 输入框:白底 `AppColors.card`、1px `AppColors.border`、圆角 14、高 52;聚焦时描边 `AppColors.blue`(160ms),错误态红色描边;prefix 图标聚焦时为主题色。
3. hint 14 号 `AppColors.subtle`;密码可见性按钮保持。
### 二、登录页视觉升级(暖橙风,不再素)
1. 背景:`AppTheme.pageGradient` 暖色渐变 + 两个柔和光斑(顶部右上 `AppColors.surfaceTop`、底部左下 `AppColors.gold` 透明度 0.18,`BlurMask`/径向渐变),加一层极淡的斜向细纹(可选,透明度 ≤0.04)。
2. 落地页(Key `auth-landing`):
- Logo 72×72、圆角 20、主色→粉色渐变 + 白色播放图标 36 + 轻阴影;
- 品牌名 24 号 w900(Outfit),副标语 13 号 `AppColors.muted`;
- 主 CTA「手机号登录」(Key `auth-entry-phone`):高 50、圆角 25、主色实底、白字 15 w800 + 图标;
- 次 CTA「邮箱登录」(Key `auth-entry-email`):高 50、圆角 25、白底 + 1px 描边 + 深色字;
- 两个按钮间距 12,整体距品牌 28;底部法务文案保持 9 号 muted(Key `auth-legal`)。
3. 邮箱登录卡片(`_AuthCard`):
- 白卡、圆角 20、内边距 20、阴影 `AppTheme.cardShadow`;
- 顶部「登录 / 注册」分段切换(选中主色实底白字,未选中透明深色字,高 36 圆角 18),切换逻辑不变;
- 字段标签 12 号 w700 `AppColors.onSurface`、与输入框间距 6;两字段间距 14;
- 提交按钮(Key `auth-submit`)高 50、圆角 25、主色实底白字 15 w800,busy 时显示白色 18 圈;
- 错误文案保持红色 12 号,位于提交按钮上方。
4. 返回按钮(Key `auth-back`)改为 40×40 白色圆形 + 1px 描边 + 轻阴影、深色箭头(与二级页统一)。
5. 键盘弹出时不遮挡输入(保持现有 `viewInsets` 处理)。
**测试/门禁**
- 新增:未登录点输入框出现登录闸且焦点未获取;登录后点输入框可正常聚焦;未登录点发送不产生评论;
- 既有评论用例保持通过;
- 新增:邮箱/密码输入文字颜色为 `AppColors.onSurface`(不再是白色);登录落地页主/次 CTA 高度 50;卡片圆角 20;`auth-back` 40×40;
- 既有登录/注册、错误提示、可见性切换用例保持通过;
- `dart analyze lib test` 零告警 + `flutter test` 全过 + `flutter build apk --debug`。
**流程**:从 `develop` 拉 `fix/flutter-k40-comment-auth`;作者 `Zhou Weidong <502333560@qq.com>`;`--no-ff` 合回 develop 并 push;PROGRESS 留痕;真机验收由用户执行。
**流程**:从 `develop` 拉 `feature/flutter-k41-auth-redesign`;作者 `Zhou Weidong <502333560@qq.com>`;`--no-ff` 合回 develop 并 push;PROGRESS 留痕;真机验收由用户执行。
+31
View File
@@ -21385,6 +21385,37 @@ Running Gradle task 'assembleDebug'...
解读:静态检查零告警,444 条测试全部通过,debug APK 构建成功。工作区原有 `pubspec.lock` 变更未纳入本批提交。真机验收由用户执行。
## 2026-10-20 ReelShort:K41-A 登录页输入修复与视觉升级
- 前置状态:评论入口登录闸与详情页按钮修正均已合并,develop 最新合并提交为 `f72cb41`。
- 分支:`feature/flutter-k41-auth-redesign`
- 功能提交:`81bb154 feat(flutter): 修复登录输入并升级登录页`
- develop 合并提交:`7285a1c merge: 合并 K41-A 登录页重设计`,已推送。
- 修复邮箱/密码输入不可见:文字改为 `AppColors.onSurface` 15 号、光标主色;输入框白底、1px border、圆角 14、高 52,聚焦主色描边,错误态红色描边,hint 14 subtle。
- 落地页升级:暖色页面渐变 + 右上 surfaceTop / 左下 gold 0.18 光斑;72 Logo 渐变圆角 20 + 白色播放图标 36;品牌 24 w900、副标语 13 muted;手机号/邮箱 CTA 均高 50、圆角 25,主次样式与 12 间距符合口径。
- 邮箱卡片:白卡、圆角 20、内边距 20、轻阴影;登录/注册分段高 36;字段标签 12 w700、间距 6/14;提交按钮高 50、圆角 25,错误文案红 12。
- auth-back 改为复用公共 40×40 白底描边阴影返回按钮;键盘 viewInsets 处理与所有既有 Key 保持。
测试:新增输入文字颜色/光标、CTA 高度与主次样式、卡片圆角/内边距/阴影、错误字号、auth-back 40×40;既有登录、注册、错误提示、密码可见性、小屏键盘布局用例全部保持通过。
门禁原始输出:
```text
$ dart analyze lib test
Analyzing lib, test...
No issues found!
$ flutter test
00:45 +447: All tests passed!
$ flutter build apk --debug
Running Gradle task 'assembleDebug'...
13.4s
✓ Built build/app/outputs/flutter-apk/app-debug.apk
```
解读:静态检查零告警,447 条测试全部通过,debug APK 构建成功。工作区原有 `pubspec.lock` 变更未纳入本批提交。真机验收由用户执行。
## 2026-10-20 ReelShort:详情页顶部圆形按钮统一修正
- 前置状态:K40-B 评论入口登录闸已合并,合并提交 `230f16a`。