From 0b519b8ca1fb024345d31b8ba12f6b434267d5d6 Mon Sep 17 00:00:00 2001 From: Zhou Weidong <502333560@qq.com> Date: Thu, 22 Oct 2026 16:22:07 +0800 Subject: [PATCH 1/2] =?UTF-8?q?docs(nav):=20=E5=9B=9E=E5=A1=AB=E5=AE=A2?= =?UTF-8?q?=E6=88=B7=E7=AB=AF=E5=9B=9B=20Tab=20=E5=AF=BC=E8=88=AA=E8=AE=B0?= =?UTF-8?q?=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/plans/PROGRESS.md | 50 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/docs/plans/PROGRESS.md b/docs/plans/PROGRESS.md index 1a3b603..d9b834e 100644 --- a/docs/plans/PROGRESS.md +++ b/docs/plans/PROGRESS.md @@ -25751,3 +25751,53 @@ $ mvn -q -DskipTests=false test \ 提交:`91b621f fix(media): 清理旧 rendition 并确保失败状态落库`。 +## 2026-10-22 ReelShort 客户端四 Tab 底部导航 + +- 仓库:ReelShort Flutter 客户端 +- 分支:`feature/client-bottom-nav-4tabs` +- 基线:`develop` / `origin/develop` = `ec3cb8f` +- 计划:客户端仓库 `docs/plans/2026-10-22-client-bottom-nav-4tabs.md` +- 实现提交:`91e869d feat(nav): 底部导航改为首页推荐追剧我的` +- 留痕提交:`729c226 docs(nav): 回填四 Tab 底部导航记录` +- 客户端合并:`667fdc5 merge: 合并四 Tab 底部导航` + +### 问题 + +原底栏为首页 / 剧场 / 创作 / 我的,选中态使用品牌橙;追剧若通过 push 收藏页, +会叠加第二层底栏并产生返回栈。 + +### 改动文件 + +- 导航基础:`lib/core/widgets/app_root_tab.dart`、 + `lib/core/widgets/app_bottom_nav.dart`、`lib/core/theme/app_colors.dart`、 + `app_dimens.dart`、`app_theme.dart`。 +- 根页面:`home_view.dart`、`home_logic.dart`、`discover_view.dart`、 + `discover_types.dart`、`mine_view.dart`、`mine_types.dart`、 + `player_logic.dart`。 +- 收藏嵌入:`favorites_page.dart` 抽出 `FavoritesContent`;独立 + `FavoritesPage` 保留 Scaffold,首页 `IndexedStack` 第三槽直接嵌入内容。 +- 文案:三份 ARB 与重新生成的 `app_localizations*.dart`。 +- 测试:导航、发现、我的、播放器及主题相关测试。 + +首页、推荐、追剧、我的均使用同一根 `IndexedStack` 和同一底栏。追剧内容内嵌, +无返回按钮、无嵌套 Scaffold、无第二层导航且 `Navigator.canPop == false`; +创作从底栏移除,但“我的”页 `mine-creator-center` 入口保留。 +底栏纯黑,选中图标和文字均纯白 `#FFFFFF`,未选中 `#8A8A8E`。 + +### 门禁命令与原始输出 + +```text +$ dart analyze lib test +Analyzing lib, test... +No issues found! +``` + +```text +$ flutter test --no-pub +04:38 +644: All tests passed! +``` + +解读:四 Tab 顺序与文案、追剧当前页切换、单一底栏、无返回栈、创作入口保留 +均有测试覆盖;全量 644 项通过。`pubspec.lock` 未提交,未启动或停止服务, +未操作真机。 + From 60a87a8d1597d66bdacd2a8ffcf4d347b28aed47 Mon Sep 17 00:00:00 2001 From: Zhou Weidong <502333560@qq.com> Date: Thu, 22 Oct 2026 17:08:05 +0800 Subject: [PATCH 2/2] =?UTF-8?q?docs(client):=20=E5=9B=9E=E5=A1=AB=E9=A6=96?= =?UTF-8?q?=E9=A1=B5=E4=B8=8E=E6=88=91=E7=9A=84=E8=A7=86=E8=A7=89=E6=94=B9?= =?UTF-8?q?=E7=89=88=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/plans/PROGRESS.md | 100 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) diff --git a/docs/plans/PROGRESS.md b/docs/plans/PROGRESS.md index d9b834e..4c22cb8 100644 --- a/docs/plans/PROGRESS.md +++ b/docs/plans/PROGRESS.md @@ -25801,3 +25801,103 @@ $ flutter test --no-pub 均有测试覆盖;全量 644 项通过。`pubspec.lock` 未提交,未启动或停止服务, 未操作真机。 +## 2026-10-22 ReelShort 客户端底栏布局补充修复 + +- 分支:`feature/client-bottom-nav-layout` +- 基线:`develop` / `origin/develop` = `667fdc5` +- 实现提交:`81787dc style(nav): 对齐四 Tab 底栏布局规格` +- 留痕提交:`5362f97 docs(nav): 回填底栏布局规格记录` +- 客户端合并:`6dea9d4 merge: 对齐四 Tab 底栏布局规格` + +补充收敛 `AppRootBottomNav`,四个根 tab 不再由页面各自拼装 item。 +内容高度 56 + SafeArea,图标 26,图标/文字间距 4,文字 11、字距 0, +选中 w600、未选中 w400;纯黑背景无分割线,选中 `#FFFFFF`, +未选中修正为 `#8E8E93`。四列均为 `Expanded` 等分。 + +```text +$ flutter analyze +Analyzing reelshort-bottom-nav... +No issues found! (ran in 5.2s) + +$ flutter test +04:43 +645: All tests passed! +``` + +解读:底栏尺寸、安全区、颜色、无分割线和共享导航实例均有测试覆盖。 +`pubspec.lock` 未提交,未操作真机。 + +## 2026-10-22 ReelShort 客户端首页三列网格 + +- 分支:`feature/home-grid-layout` +- 基线:`develop` / `origin/develop` = `6dea9d4` +- 实现提交:`dd96792 feat(home): 首页改为三列探索网格` +- 留痕提交:`1bb227e docs(home): 回填首页网格改版记录` +- 客户端合并:`47bf645 merge: 首页切换三列探索网格` + +### 参考图对照 + +- 顶部:深灰搜索框 + 皇冠 VIP + 礼物钱包入口;钱包角标仅使用真实余额。 +- 一级分类顺序:精选、新剧、分类、榜单;古装/社群仅在 `/app/categories` + 名称匹配时追加,匹配不到隐藏。 +- 二级标签:热门、爽剧、甜宠、打脸虐渣、虐恋;按分类/题材可用性显示, + 右侧三横线进入现有 `FilterPage`。 +- 内容:三列、间距 8、封面 5:6、圆角 8;卡片包含热剧/新剧/漫剧角标、 + 播放量、两行标题和最多两个题材标签。 +- 分页继续使用 `HomeFeedController` 的 10 条游标分页、下拉刷新和底部加载。 +- 原 `PlayerPage(homeMode: true)` 保留并迁到推荐 tab,播放器代码与测试未删除。 + +### 改动文件 + +`home_view.dart`、`widgets/home_grid_header.dart`、`widgets/home_feed_grid.dart`、 +`widgets/home_feed_card.dart`、`widgets/home_drama_classification.dart`、 +`widgets/home_failure_view.dart`、`Drama` 模型、`AppColors/AppDimens`、三语 ARB +及对应生成的 l10n 文件、首页/导航/发现/播放器测试。 + +```text +$ flutter analyze +Analyzing reelshort-bottom-nav... +No issues found! (ran in 2.7s) + +$ flutter test +02:32 +651: All tests passed! +``` + +解读:三列网格、分类顺序、动态隐藏、角标、卡片元数据、分页大小、 +下一页追加、搜索入口和卡片播放均有测试覆盖。`home_view.dart` 为 478 行, +其余新增组件均低于 500 行。`pubspec.lock` 未提交,未操作真机。 + +## 2026-10-22 ReelShort 客户端「我的」视觉统一 + +- 分支:`feature/mine-visual-style` +- 基线:`develop` / `origin/develop` = `47bf645` +- 实现提交:`83129ac feat(mine): 统一我的页深色视觉风格` +- 留痕提交:`e40f477 docs(mine): 回填我的页视觉统一记录` +- 客户端合并:`0ef2438 merge: 统一我的页深色视觉风格` + +### Token 说明 + +- 复用首页:`appBackground #000000`、`contentCard #171717`、 + `contentSurface #1C1C1E`、`contentBorder rgba(255,255,255,0.10)`。 +- 新增:`textPrimary #FFFFFF`、`textSecondary #8E8E93`、 + `mineCardRadius 16`、`mineRowHeight 52`、页头标题 21、区块标题 15。 +- 橙色仅保留充值、加入 VIP 等主操作。 + +### 改动与行为 + +`mine_view.dart`、`widgets/mine_header.dart`、`widgets/mine_menu.dart` 及公共 +`AppColors/AppDimens`、测试完成视觉收敛。页面底色纯黑,头像卡、三宫格、 +金币卡、会员卡、菜单统一深灰 16 圆角、1px 描边、无阴影/渐变/发光; +菜单 52 行高且仅行间分割。区块顺序、全部入口、跳转和交互保持不变。 + +```text +$ flutter analyze +Analyzing reelshort-bottom-nav... +No issues found! + +$ flutter test +00:56 +651: All tests passed! +``` + +解读:背景、卡片 token、描边/圆角、三宫格等宽、菜单行高、入口保留及收藏页 +跳转均有测试覆盖。`pubspec.lock` 未提交,未操作真机。 +