feat: add a tab indicator to analysis bottom tabs to make them more discoverable#3090
Merged
Merged
Conversation
c732315 to
32334a2
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
This PR primarily moves analysis/broadcast/study tab discovery from an app-bar action into an inline tab strip rendered above the analysis TabBarView, with accompanying widget-test updates. It also includes an unrelated change to tournament list sorting and a small PGN tree divider tweak.
Changes:
- Add inline analysis tab-strip support in
AnalysisLayoutand wire it into analysis, broadcast, and study screens. - Update widget tests to target the new always-visible tab UI instead of the old app-bar action sheet.
- Adjust tournament list sorting for upcoming tournaments and tweak PGN tree divider rendering.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| test/view/game/game_screen_test.dart | Updates game-to-analysis UI tests for the new tab-strip navigation. |
| test/view/broadcast/broadcast_game_screen_test.dart | Updates broadcast test flow to tap the inline analysis tabs directly. |
| test/view/analysis/analysis_screen_test.dart | Updates analysis-screen tests to assert visible tabs and direct tab switching. |
| lib/src/widgets/pgn.dart | Tweaks top-border rendering for the first two-column PGN block. |
| lib/src/view/tournament/tournament_list_screen.dart | Adds view-mode-aware tournament sorting, especially for upcoming events. |
| lib/src/view/study/study_screen.dart | Removes the app-bar tab indicator and passes tabs into AnalysisLayout. |
| lib/src/view/broadcast/broadcast_game_screen.dart | Removes the app-bar tab indicator and passes tabs into AnalysisLayout. |
| lib/src/view/analysis/analysis_screen.dart | Removes the app-bar tab indicator and passes tabs into AnalysisLayout. |
| lib/src/view/analysis/analysis_layout.dart | Introduces the inline _AnalysisTabView/TabBar used by analysis-like screens. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
32334a2 to
1954a67
Compare
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.
Problem
For users, it's currently very hard to discover that the bottom view in the analysis board can be swiped. This leads to users not finding important features like server analysis or conditional premoves. A tour would help, but it's also a fact that users like to skip those and then complain anyway. Also, we have different tabs on different screens (e.g. conditional premoves is only on correspondence analysis board), making it hard to remember for the user which screen has which tabs available.
Solution
Add a small
TabBarabove theTabBarView. This way, it's immediately obvious which additional tabs are available.This takes away roughly one row from the PGN move list, so I'd say the UX benefits outweigh the loss of space here.
Demo
tabbar.webm