Skip to content

fix(timer): animate the dial at most one revolution - #63

Merged
Xitee1 merged 1 commit into
mainfrom
fix/dial-animation-one-revolution
Oct 2, 2026
Merged

Xitee1 merged 1 commit into
mainfrom
fix/dial-animation-one-revolution

Conversation

@Xitee1

@Xitee1 Xitee1 commented Oct 2, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • On launch the dial animation started at the 15-minute default and tweened to the persisted preset in 360 ms. With a preset of several hours, the ring visibly spun multiple rounds very fast.
  • If the target is more than 60 minutes away, the animated value now snaps to one revolution short of the target and animates only the last round.
  • Distances below 60 minutes animate as before. The same cap applies when the ring jumps back to a multi-hour preset after the timer ends.

Fixes #55

Test plan

  • ./gradlew :feature:timer:compileDebugKotlin :feature:timer:lintDebug
  • Set a preset above 1 h, restart the app and check the dial animates at most one round

🤖 Generated with Claude Code

When the dial first draws with a preset above one hour, the ring tweened
from the 15-minute default across several revolutions in 360ms. If the
target is more than 60 minutes away, snap to one revolution short of it
first and animate only the last round.

Fixes #55

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Xitee1
Xitee1 merged commit 2245979 into main Oct 2, 2026
1 check passed
@Xitee1
Xitee1 deleted the fix/dial-animation-one-revolution branch October 2, 2026 15:32
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.

Dial animation bug on launch with over 1h

1 participant