Skip to content

Fix held D-pad scrolling in nested rows#26

Merged
rovkinmax merged 1 commit into
masterfrom
PUB-3
Jul 7, 2026
Merged

Fix held D-pad scrolling in nested rows#26
rovkinmax merged 1 commit into
masterfrom
PUB-3

Conversation

@rovkinmax

Copy link
Copy Markdown
Owner

Task Summary

  • Fixes PUB-3 held D-pad scrolling stalls in season/episode lists by making dpadScrollOptimization axis-aware.
  • Existing LazyRow call sites now use horizontal mode, so repeated DPAD_UP/DPAD_DOWN no longer activates rapid-scroll suppression inside horizontal rows.
  • Rapid-scroll state still resets on key-up and on non-repeat or non-matching key-down events.

Compliance Review

Compliance Review passed with no violations. The reviewed diff is limited to:

  • app/src/main/java/com/kino/puber/core/ui/uikit/component/PositionFocusedItemInLazyLayout.kt
  • app/src/main/java/com/kino/puber/core/ui/uikit/component/moviesList/VideoGridUIState.kt
  • app/src/main/java/com/kino/puber/ui/feature/contentlist/content/SectionRow.kt
  • app/src/main/java/com/kino/puber/ui/feature/home/component/HomeScreenContent.kt

No project contracts, version catalogs, Compose stability config, or string resources were changed.

Verification

  • git diff --check: passed.
  • ./tools/agentw :app:compileDevDebugKotlin --console=plain: BUILD SUCCESSFUL.
  • Compliance review confirmed no remaining no-argument dpadScrollOptimization call sites under app/src/main/java.

Known Skipped Checks

  • Full visual device verification on a many-season series was not repeated in this PR shipping step. Earlier investigation verified the affected EpisodesPanel / VideoGrid code path and long-press input path, but the local authenticated navigation/search path did not reliably reach a larger series fixture.

@rovkinmax rovkinmax merged commit e300de3 into master Jul 7, 2026
3 checks passed
@rovkinmax rovkinmax deleted the PUB-3 branch July 7, 2026 07:23
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.

1 participant