Skip to content

Fix/player controls mobile - #7172

Open
mateus3355 wants to merge 4 commits into
stashapp:developfrom
mateus3355:fix/player-controls-mobile
Open

Fix/player controls mobile#7172
mateus3355 wants to merge 4 commits into
stashapp:developfrom
mateus3355:fix/player-controls-mobile

Conversation

@mateus3355

@mateus3355 mateus3355 commented Aug 18, 2026

Copy link
Copy Markdown

Description

  • floating AB-loop start/end buttons on mobile, colored once set
  • icon toggle replacing the desktop text button on small screens
  • active-range + start/end markers on the progress bar, hidden until loop is on
  • AB-loop resets when skipping to another video via player controls/hotkeys
  • fix: full-video loop (nothing set) could jump to next scene instead of looping
  • fix: dragging the progress bar on mobile did a real seek on every touch move, not just on release
  • player breakpoints now key off actual player width (CSS container queries), not viewport width

Related Issue

#6526

Testing

  • AB-loop buttons show/hide correctly as loop toggled on/off
  • progress bar markers match actual start/end
  • skip next/previous clears an active loop
  • loop with nothing set plays full video, doesn't skip to next scene
  • progress bar drag on touch doesn't stutter/buffer mid-drag
  • sidebar collapse/expand triggers mobile layout at correct player width

Checklist

  • I have read and understood the Contributing document.
  • I have read and understood the AI Usage Policy document.
  • I have made corresponding changes to the documentation (if applicable).

AI Usage Disclosure

  • I have used AI tools to assist with this pull request, and I have disclosed the tools and how I used them below.

Used Claude (Claude Code) to design and implement the AB-loop UI components, the touch-seek fix, the container-query CSS refactor, and the loop/advance-scene fix.

Screenshots

Sidebar open — mobile layout activates at 1249px (player is already narrow even though the viewport isn't)
image

Sidebar closed, desktop layout — mobile layout activates at 769px, matching the container breakpoint
image

Small tablet width — 589px
image

Small phone width — 461px
image

Very narrow width — 320px
image

Add touch-friendly AB-loop controls for mobile, alongside the existing
desktop videojs-abloop control-bar buttons:

- Floating start/end buttons in the mobile jog-button overlay, colored
  to signal when their bound has been set
- Icon-only loop enable/disable toggle, replacing the vendor plugin's
  text button on mobile
- Active loop range and individual start/end markers highlighted on
  the progress bar
- Start/end buttons and progress-bar markers only show once the loop
  toggle is on

Also:
- Reset (disable + clear start/end) an active AB loop when manually
  skipping to another video, so it doesn't carry over onto the next
  scene's timeline
- Fix a full-video loop (no range set) occasionally advancing to the
  next queued scene instead of looping, by handling the loop
  ourselves on ended as a backstop for the vendor plugin's
  timeupdate-margin race against the real end of playback
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