Stop sepia-dimming the board while in analysis mode - #824
Merged
IongIer merged 2 commits intoSep 10, 2026
Merged
Conversation
Viewing a non-final history position dims the board with a sepia filter to signal it isn't live play. The piece-rendering branch right below it already carves out an `!in_analysis` exception for this (introduced in 77f1506, "Better gamestate prop (hiveboardgame#464)"), but the `history_style` sepia class was never given the same exception. Since GameStateStore (and its board_view field) is provided once at the app root and persists across client-side route navigation, whatever board_view was left at from browsing a completed game's move list carries straight into the Analysis page, where nothing resets it. That let the board visibly sepia-dim while stepping through analysis history with the arrow keys, even though analysis is always browsing non-live positions and should never get that treatment. Extracts the sepia logic into a pure `board_history_style` function (mirroring the existing `stack_expansion_reset_key` helper) and adds the missing `!in_analysis` check, with regression tests. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01U4Y2jNZLSGwpvfWXVxQfzP
IongIer
approved these changes
Sep 10, 2026
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.
Viewing a non-final history position dims the board with a sepia filter to signal it isn't live play. The piece-rendering branch right below it already carves out an
!in_analysisexception for this (introduced in 77f1506, "Better gamestate prop (#464)"), but thehistory_stylesepia class was never given the same exception.Since GameStateStore (and its board_view field) is provided once at the app root and persists across client-side route navigation, whatever board_view was left at from browsing a completed game's move list carries straight into the Analysis page, where nothing resets it. That let the board visibly sepia-dim while stepping through analysis history with the arrow keys, even though analysis is always browsing non-live positions and should never get that treatment.
Extracts the sepia logic into a pure
board_history_stylefunction (mirroring the existingstack_expansion_reset_keyhelper) and adds the missing!in_analysischeck, with regression tests.