Fix rapid-navigation misclicks and speed up screen transitions - #60
Merged
Conversation
navigation-compose 2.8.5's default transition is a 700ms crossfade during which both the outgoing and incoming screens stay composed and clickable, so a fast double-tap (e.g. Home -> Reviews -> back -> Backlog) could land on the screen still fading out underneath instead of the intended destination. Replace the default crossfade with explicit 300ms directional slide+fade transitions, and gate every navigate()/popBackStack() call in ThePatientGamerHelperNavGraph behind a check that the triggering NavBackStackEntry has reached RESUMED (its own transition fully settled) before firing. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MRCs4kTRXqukszUoU8XrrW
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.
Summary
navigation-compose2.8.5's default transition is a 700ms crossfade during which both the outgoing and incoming screens stay composed and clickable at the same time.ThePatientGamerHelperNavGraph.ktnow declares explicit, faster (300ms) directional slide+fade transitions instead of the default crossfade, addressing the general "navigation feels slow" complaint too.navigate()/popBackStack()call is gated on the triggeringNavBackStackEntryhaving reachedRESUMED(the officially documented signal that its own transition has fully settled), so a stray tap on a screen still mid-transition is ignored instead of misrouted.CHANGELOG.mdentry under[Unreleased]and a newREG-15entry (+ update-history line) indocs/test-plan.md, per this repo's documentation policy.Test plan
docs/test-plan.mdREG-15): repeatedly and quickly chain navigation actions across Home/Library/Backlog/Stats/Settings (drawer and in-screen buttons) and confirm the tap always lands on the intended destination.android-ci.yml) — this sandbox has no Android SDK to build locally; relying on CI perCLAUDE.md.Generated by Claude Code