mirror of
https://github.com/videojs/video.js.git
synced 2025-01-02 06:32:07 +02:00
57d6ab65ea
## Description On desktop, a user can hover over the progress bar while content plays, which makes it possible to seek to a relatively precise location without disrupting playback. On mobile there is no hovering, so in order to seek during inline playback the user can only tap a location on the progress bar (very hard to do precisely on a small screen) or scrub to try to hone in on a specific location (can be very clunky because seeks are constantly being executed). This PR adds a feature to treat scrubbing on mobile more like hovering on desktop-- while scrubbing, seeks are disabled and playback continues, only when the user finishes scrubbing is a single seek executed to the desired location. One key use-case for this feature is thumbnail seeking integrations on mobile, where the user can scrub through different thumbnail images until they find their desired seek location. ## Specific Changes proposed This behavior is similar to the existing `enableSmoothSeeking` behavior in that the `PlayProgressBar` slider visibly updates with the scrubbing movements, but differs in a few ways: - Playback continues while scrubbing, no seeks are executed until `touchend`. - The seek bar's `TimeTooltip` component displays the target seek time while scrubbing, rather than the `CurrentTimeDisplay` (which continues to show the current time of the playing content). |
||
---|---|---|
.. | ||
control-bar | ||
mixins | ||
tech | ||
tracks | ||
utils | ||
autoplay.test.js | ||
button.test.js | ||
clickable-component.test.js | ||
close-button.test.js | ||
component.test.js | ||
controls.test.js | ||
error-display.test.js | ||
event-target.test.js | ||
events.test.js | ||
live-tracker.test.js | ||
loading-spinner.test.js | ||
media-error.test.js | ||
menu.test.js | ||
modal-dialog.test.js | ||
play.test.js | ||
player-breakpoints.test.js | ||
player-fullscreen.test.js | ||
player-loadmedia.test.js | ||
player-play.test.js | ||
player-user-actions.test.js | ||
player.test.js | ||
plugin-advanced.test.js | ||
plugin-basic.test.js | ||
plugin-static.test.js | ||
poster.test.js | ||
reset-ui.test.js | ||
resize-manager.test.js | ||
seek-to-live.test.js | ||
setup.test.js | ||
sourceset.test.js | ||
spatial-navigation.test.js | ||
test-helpers.js | ||
title-bar.test.js | ||
transient-button.test.js | ||
video.test.js | ||
videojs-hooks.test.js | ||
videojs-integration.test.js |