Video: Mobile UI + overlay for keyboard shortcut feedback #5119

Merged
infinite-persistence merged 19 commits from ip-vjs-overlay into master 2020-12-14 17:40:59 +01:00

19 commits

Author SHA1 Message Date
infiinte-persistence
53cb595f2a
Don't seek video on 'alt+left/right'
## Issue
4889: Alt-Left shouldn't impact video

... since that is the common combo for navigation in browsers. It ended up doing 2 things.
2020-12-13 23:02:36 +08:00
infiinte-persistence
3940b500d9
Control-bar visibility changes per review.
- Restored the control-bar when playback rate is changed via keyboard.
- Also show the control-bar when seeking via keyboard.

Aside: lint was complaining about a potentially-null 'player', so added the null check in front and removed the redundant ones below.
2020-12-13 23:02:36 +08:00
infiinte-persistence
2ecc9d9163
Update changelog 2020-12-13 23:02:35 +08:00
infiinte-persistence
2cb3830585
? - Don't enable mobileUi for iOS. 2020-12-13 23:02:35 +08:00
infiinte-persistence
3dabdcbacb
Sync the controlBar's visibility with TouchOverlay's 2020-12-13 23:02:34 +08:00
infiinte-persistence
941613a2c0
Don't auto-hide on idle the overlay if the video is not playing.
This makes more sense and also matches the controlBar's behavior.
2020-12-13 23:02:34 +08:00
infiinte-persistence
a20c50ad62
Mobile UI tweaks
- Since the whole overlay is now the control bar, the bottom control bar should no longer be black (too focused).
- Gray out the video when the overlay is up.
- The 'play/pause' is now at the middle of the overlay, so hide the one in the bottom controlBar. The bigger button is easier to tap in smaller mobile screens.
2020-12-13 23:02:33 +08:00
infiinte-persistence
97546b55ca
Initialize the mobile UI 2020-12-13 23:02:33 +08:00
infiinte-persistence
4e76643693
Fix touchOverlay being in front of everything (it should be behind controlBar), causing the controlBar to be unresponsive to touch.
For some reason, adding the "-1" to the logic places it 2 slots behind the desired array slot, plus the actual item ends up being at the bottom of the DOM.

Removing the "-1" places it exactly at that index and pushes all existing items down 1 slot (feels like correct behavior), plus the final DOM is also correct.

Perhaps it's just some changes in videojs upstream that videojs-mobile-ui haven't catch up on (it has been dormant since 2018).
2020-12-13 23:02:32 +08:00
infiinte-persistence
0e03efb5d2
videojs-mobile-ui: tweaks to compile with LBRY 2020-12-13 23:02:32 +08:00
infiinte-persistence
4de6183513
videojs-mobile-ui: fix lint 2020-12-13 23:02:31 +08:00
import
db62cbd55a
videojs-mobile-ui: add plugin
- v0.4.1
- https://github.com/mister-ben/videojs-mobile-ui
2020-12-13 23:02:30 +08:00
infiinte-persistence
4622b6cea9
Add overlay for "video +/-10s seek via keyboard" 2020-12-13 22:59:21 +08:00
infiinte-persistence
b02ec71cc0
Add overlay for "Video playback-rate keyboard shortcut"
This is an improvement to 28e7fec3, which back then I just made the video control-bar re-appear when the shortcut is pressed, so that user gets to see the latest playback rate value.

Now, it uses a transient overlay.
2020-12-13 22:59:21 +08:00
infiinte-persistence
4c245ed463
Added comment headers for visualization (to quickly find things). No functional change. 2020-12-13 22:59:20 +08:00
infiinte-persistence
87b6d2f7f0
videojs-overlay: add custom 'immediate' event to show an overlay directly without waiting for an event.
The plugin only supports event-based overlays. This change will provide the functionality of an "one-off" overlay, which will be display immediately upon the 'player.overlay({...})' call, and hides when the 'end' event hits.
2020-12-13 22:59:20 +08:00
infiinte-persistence
3125d55802
videojs-overlay: tweaks to compile with LBRY 2020-12-13 22:59:19 +08:00
infiinte-persistence
7553b8ccbe
videojs-overlay: fix lint 2020-12-13 22:59:19 +08:00
import
33a8e2e4a3
videojs-overlay: add plugin
- v2.1.4
- https://github.com/brightcove/videojs-overlay
2020-12-13 22:59:18 +08:00