Commit Graph

245 Commits

Author SHA1 Message Date
Omar Roth 2b94975345 Fix playlist_thumbnail extractor 2019-08-16 20:06:21 -05:00
leonklingele e6b4e12689 js: add support for keydown events (#678)
* js: add support for keydown events

This will modify the player behavior even if the player element is unfocused.

Based on the YouTube key bindings, allow to

- toggle playback with space and 'k' key
- increase and decrease player volume with up / down arrow key
- mute and unmute player with 'm' key
- jump forwards and backwards by 5 seconds with right / left arrow key
- jump forwards and backwards by 10 seconds with 'l' / 'j'  key
- set video progress with number keys 0–9
- toggle captions with 'c' key
- toggle fullscreen mode with 'f' key
- play next video with 'N' key
- increase and decrease playback speed with '>' / '<' key

* js: remove unused dependency 'videojs.hotkeys.min.js'

Support for controlling the player volume by scrolling over it is
still retained by copying over the relevant code part from the
aforementioned library.
2019-08-16 16:01:14 -05:00
Dragnucs 7eaac995bd Change font family to better native selection (#679) 2019-08-16 15:59:05 -05:00
psvenk f54fbd057e Add prefers-color-scheme support (#601)
* Add prefers-color-scheme support

This should fix <https://github.com/omarroth/invidious/issues/559>.
The cookie storage format has been changed from boolean
("true"/"false") to tri-state ("dark"/"light"/""), so that users
without a cookie set will get dark mode if they have enabled the dark
theme in their operating system. The code for handling the cookie
state, along with the user's operating system theme, has been factored
out into a new function `update_mode`, which is called both at window
load and at the "storage" event listener, because the "storage" event
listener is only trigerred when a change is made to the localStorage
from another tab/window (for more info - see
<https://stackoverflow.com/a/4679754>).
2019-08-15 11:29:55 -05:00
Omar Roth f6f176afc1 Merge pull request #680 from leonklingele/add-player-styles
Add support for player styles
2019-08-09 13:49:51 -05:00
Omar Roth 3de37a61c5 Update videojs-http-source-selector 2019-08-09 10:36:41 -05:00
Leon Klingele 46577fb128 Add support for player styles
This currently includes the following styles:

- Invidious, the default
- YouTube, using a centered play button and always visible video control bar

Implements https://github.com/omarroth/invidious/issues/670.
Supersedes https://github.com/omarroth/invidious/pull/661.
2019-08-09 02:04:36 +02:00
Leon Klingele fe2cffb25b Fix jumpy page on search field focus 2019-08-01 09:35:57 +02:00
Omar Roth d034fecc89 Remove default arguments from function definitions 2019-07-20 20:33:44 -05:00
Omar Roth e8a56e0fea Add '1.75' playback speed 2019-07-14 10:13:40 -05:00
Omar Roth bcd239ac2b Add community page 2019-07-09 09:31:04 -05:00
Omar Roth aac240fe41 Resize comment thumbnails 2019-07-01 12:08:29 -05:00
Omar Roth 8fad0af935 Add caption styling 2019-06-30 22:46:08 -05:00
Omar Roth a3cc3c57fd Add cursor: none to player 2019-06-28 20:55:23 -05:00
Omar Roth 0d0d3edeae Add thumbnail and banners to channel page 2019-06-28 20:48:24 -05:00
Omar Roth cc6d6ddd66 Prevent firing _onStreamProgress after aborting 2019-06-22 20:08:37 -05:00
Omar Roth bbb40aef51 Fix event listener for notifications.js 2019-06-16 18:11:34 -05:00
Omar Roth 485a3e29e7 Optimize get_subscriptions AJAX 2019-06-16 17:33:24 -05:00
Omar Roth 1477f99c2c Add target="_blank" to embed titles 2019-06-16 14:49:00 -05:00
Omar Roth 2e1f9d5fa9 Fix title URL for embedded videos 2019-06-16 13:14:56 -05:00
Omar Roth 9dea251862 Fix typo in notifications.js 2019-06-16 12:57:56 -05:00
Omar Roth 17edfd6573 Shorten timeout for AJAX 2019-06-16 12:55:17 -05:00
Omar Roth 485459b8b2 Add clickable title for embedded videos 2019-06-16 09:41:33 -05:00
Omar Roth 552f616305 Fix retry on timeout for AJAX requests 2019-06-15 10:09:32 -05:00
Omar Roth 9122f8acee Add title overlay to embedded videos 2019-06-08 10:52:47 -05:00
Omar Roth ef8c9f093c Add premiere date to watch page 2019-06-08 10:18:45 -05:00
Omar Roth 8c944815bc Minor refactor 2019-06-07 21:13:50 -05:00
Omar Roth 8521f04087 Use short URL for sharing videos 2019-06-05 11:10:23 -05:00
Omar Roth e23bab0103 Only add notification event listener after onload 2019-06-01 17:38:49 -05:00
Omar Roth 0338fd42e1 Add support for Web notifications 2019-06-01 16:09:17 -05:00
Omar Roth efd54b7523 Add 'comments' as URL parameter 2019-05-29 14:24:30 -05:00
Omar Roth d68baf08cb Shrink h1 on mobile 2019-05-28 10:04:04 -05:00
Omar Roth a7578aa709 Update videojs-vtt-thumbnails version 2019-05-27 20:55:34 -05:00
Omar Roth de77c71042 Add "local" to "next video" URLs 2019-05-27 12:16:22 -05:00
Omar Roth 4345b1d930 Reset playbackRate once player has caught up to source 2019-05-20 12:15:48 -05:00
Omar Roth 7d2e1f63b5 Refactor watched_widget.js 2019-05-16 20:51:17 -05:00
Omar Roth e833ccf309 Fix comments for age-restricted videos 2019-05-14 08:18:57 -05:00
Omar Roth bb15dc57a4 Fix font color for captions button 2019-05-11 11:09:45 -05:00
Omar Roth bfa488f77d Add option to toggle theme without reload 2019-05-09 11:50:44 -05:00
Omar Roth 03be793930 Fix typo in player.js 2019-05-09 08:36:36 -05:00
Omar Roth 37d88d5ff7 Remove referer from XHR 2019-05-08 09:16:11 -05:00
Omar Roth 058711d3a8 Refactor player.js 2019-05-06 11:23:14 -05:00
Omar Roth 2ddc61fa5c Refactor embed.js 2019-05-06 10:37:22 -05:00
Omar Roth 2faa2ed1f4 Refactor watch.js 2019-05-06 09:48:33 -05:00
Omar Roth 5bda36fb28 Remove source map URL from videojs.hotkeys.min.js 2019-05-05 20:45:46 -05:00
Omar Roth 0099a9822e Refactor subscribe_widget 2019-05-05 08:38:55 -05:00
Omar Roth 716705aa15 Add mouse hover for video previews 2019-05-04 08:43:41 -05:00
Omar Roth 3f738cf905 Tweak styling for thumbnail video length 2019-05-04 08:43:34 -05:00
Omar Roth 6d92775ab5 Add video previews 2019-05-02 14:36:32 -05:00
Omar Roth 1a9360ca75 Minor formatting changes 2019-05-01 20:03:39 -05:00