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` 未提交,未启动或停止服务, +未操作真机。 +