Skip to content

feat(player): add two-finger subtitle jump gestures and edge swipe isolation - #3175

Open
nutine wants to merge 2 commits into
recloudstream:masterfrom
nutine:feat/player-gesture-navigation
Open

feat(player): add two-finger subtitle jump gestures and edge swipe isolation#3175
nutine wants to merge 2 commits into
recloudstream:masterfrom
nutine:feat/player-gesture-navigation

Conversation

@nutine

@nutine nutine commented Sep 13, 2026

Copy link
Copy Markdown

Summary

This pull request introduces gesture-based subtitle navigation and improves edge swipe ergonomics on fullscreen playback:

  • Two-Finger Subtitle Sentence Navigation:

    • Two-finger tap: Tap on the left half of the screen to jump to the previous subtitle cue; tap on the right half to jump to the next cue.
    • Two-finger horizontal swipe: Swipe left to jump to the next sentence; swipe right to jump to the previous sentence.
    • Smart Rewind Threshold: If playback is more than 1 second into the active dialogue cue, the previous action rewinds to the beginning of the current cue rather than jumping to the prior one.
    • HUD Feedback: Displays an on-screen preview text banner showing dialogue text snippet ( / ) and provides subtle haptic vibration.
  • Edge Swipe & System Bar Isolation:

    • Prevents player gestures (volume, brightness, seek, speedup hold) from accidentally triggering when swiping inward from the status bar or navigation bar to reveal system controls in fullscreen.
    • Fixes landscape touch clamping on devices using 3-button navigation.

Test Plan

  • Tested two-finger tap and swipe gestures while playing videos with external and embedded subtitle tracks.
  • Tested rewinding to sentence beginning vs prior sentence.
  • Tested edge swipes from top and sides without accidental video seek or volume/brightness changes.
  • Verified unit tests and clean build pass.

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