Skip to content

Conversation

@okmsbun
Copy link
Contributor

@okmsbun okmsbun commented Jan 24, 2025

Issue: #755
This PR adds a blink effect to the next button when the user is not at the latest move during game reviews.

before after lichess.org
Screenshot_1737730675 untitled Screen-Recording-2025-01-24-at-18 22 39

@ijm8710
Copy link

ijm8710 commented Jan 24, 2025

I'm sure others potentially would like this but from my perspective doesn't the greyed out when at latest move provide enough indication

@okmsbun
Copy link
Contributor Author

okmsbun commented Jan 25, 2025

The grayed-out button provides some indication, but this PR addresses the issue described in #755. In the old mobile app and website, the blinking forward button made it clear when you weren’t on the latest move. Currently, only the countdown timer acts as an alert. If a user is reviewing previous moves and their opponent plays a move, they might think they are still on the current position. The blinking effect helps prevent this confusion and offers a more noticeable visual cue.

I’d love to hear any additional suggestions you might have!

@ijm8710
Copy link

ijm8710 commented Jan 25, 2025

That's fair. Originally I was thinking not latest move as in you simply rewinded and were looking on a prior position

I didn't quite put enough thought on that a new move has actually been played

@okmsbun
Copy link
Contributor Author

okmsbun commented Jan 26, 2025

Should we also add the same blinking effect to the TV screen where users watch other people’s games live?

@veloce
Copy link
Contributor

veloce commented Jan 29, 2025

I understand the need for a more visible clue that you're not on the last position. I don't really like the blinking though, it is too distracting.

The blinking could be replaced with an inverted background color (with opacity) for instance.

But the best solution to this issue in my opinion, would be, during a live game, to make the button blink if and only if a new move is received when the user is replaying moves. This is the only moment it is useful because you can't know a new move is added when you're not on the last position.

The logic is a little more complex (need to store the move index when starting replaying backwards), but worth it imo.

I don't think we should add this logic on TV, it is important enough only when playing (to avoid losing time).

@tom-anders
Copy link
Collaborator

tom-anders commented Jan 29, 2025

I understand the need for a more visible clue that you're not on the last position. I don't really like the blinking though, it is too distracting.

The blinking could be replaced with an inverted background color (with opacity) for instance.

But the best solution to this issue in my opinion, would be, during a live game, to make the button blink if and only if a new move is received when the user is replaying moves. This is the only moment it is useful because you can't know a new move is added when you're not on the last position.

The logic is a little more complex (need to store the move index when starting replaying backwards), but worth it imo.

Agreed, I think it works on the website like this as well.

I don't think we should add this logic on TV, it is important enough only when playing (to avoid losing time).

What about broadcast though? Might be helpful there, especially for long time controls

@okmsbun
Copy link
Contributor Author

okmsbun commented Jan 29, 2025

I removed the blinking effect and replaced it with a background change using opacity. You can adjust the background color and transition duration as you like. A video demonstration is provided below.

I modified the logic as follows: If it's my turn and I am reviewing previous moves, the background will flash. In any other case, the background color will not change. Does this approach make sense?

Also, as you suggested, I didn’t store the move index. I believe it wasn’t necessary, and I managed to handle it without keeping track of the index. If I misunderstood your point, please correct me.

Regarding live TV, there's a bit of a dilemma: from whose perspective should we view it—Black or White? 😄 In what situation should the background flash? 😄 Since it's never our turn, we are just watching! 😄

That being said, could the background flash in live TV mode regardless of the perspective?

Screen.Recording.2025-01-29.at.16.30.07.mov

@veloce
Copy link
Contributor

veloce commented Jan 29, 2025

Thanks for the vid! It is much better now. If you managed to do it without an extra variable that is even better (I didn't really think about it so I guess I missed the simpler way to do it with checking it's my turn).

@veloce
Copy link
Contributor

veloce commented Jan 29, 2025

Regarding live TV, there's a bit of a dilemma: from whose perspective should we view it—Black or White? 😄 In what situation should the background flash? 😄 Since it's never our turn, we are just watching! 😄

We should not bother with TV imo.

@veloce veloce merged commit 7d44fcd into lichess-org:main Jan 29, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants