Commit Graph

190 Commits (ec8fe21485ea446f2e76f12b234842dc6c7ab513)

Author SHA1 Message Date
TheFrenchGhosty 1ad4685bb7
Merge pull request #1629 from tenpura-shrimp/searchui
Add ui for search sort and filter
4 years ago
Andrew Zhao 15ba3325d9 add ui for searching 4 years ago
Andre Borie 3046350cb2 Fix DASH playback bug. 4 years ago
Perflyst c7e65ce795
Merge pull request #1619 from tenpura-shrimp/ignorevideoplayback
do not add local to xhr when in videoplayback
4 years ago
Andrew Zhao 5a08dfa72f fix incorrect use of setinterval in js 4 years ago
Andrew Zhao ac0ed14eae do not add local to xhr when in videoplayback 4 years ago
Perflyst eeeecf9763
Merge pull request #1572 from saltycrys/add-dash-quality-preference
Add DASH quality preference
4 years ago
saltycrys 75c6844b66 Improve storyboards
Instead of limiting the width of storyboards through CSS it is now done in the
VTT directly.
4 years ago
saltycrys eed78c960d Improve DASH quality preference
Besides `auto`, `best` and `worst` it is now possible to select a target height.
If the target height is not available the closest lower height is selected.
4 years ago
saltycrys eea7ca9b72 Add DASH quality preference
The options are `auto` (the current and default behavior), `best` and `worst`.

The UI is only updated once playback starts.
4 years ago
saltycrys fc67dd18d0 Increase color contrast of light theme links 4 years ago
saltycrys b3e9b92344 Fix pure-button hover color on a-tags 4 years ago
TheFrenchGhosty 5e8856e65b
Merge pull request #1551 from saltycrys/add-embed-link
Add embed link to watch page
4 years ago
Andrew Zhao 0cb442d40e do not proxy hls on supported browser 4 years ago
saltycrys 680dc1f962 Shuffle URL params
The `list` and `index` params are the most important and come first now.
4 years ago
TheFrenchGhosty fe73eccb90
Merge pull request #1479 from saltycrys/theme-flash
Apply dark theme immediately
4 years ago
saltycrys 5f932e9749 Fix CSS specificity issues 4 years ago
saltycrys ff46c18164 Move themes into default.css
Now that themes are controlled with a class instead of setting
media="none" on the stylesheet link and both themes already being
duplicated in default.css for the automatic themeing it makes sense
to have all theme related CSS in the same place.

This commit also fixes the missing dark theme on embeds.
4 years ago
saltycrys de777907f2 Apply dark theme immediately
Themes are now controlled with a class on the body element.

If a preference is set the body element will have either "dark-theme"
or "light-theme" class. If no preference is set or the preference is
empty the class will be "no-theme".

"dark-theme" and "light-theme" are handled by darktheme.css and
lighttheme.css respectively.

"no-theme" is handled by default.css where depending on the value of
"prefers-color-scheme" the styles corresponding to "dark-theme" or
"light-theme" are applied.

Unfortunately this means that both themes are duplicated, once in the
theme .css and once in default.css.
4 years ago
saltycrys 0530045536
Remove double empty line 4 years ago
saltycrys d3e4739745 Improve storyboard display 4 years ago
saltycrys 3379f3ef61 Update videojs-vtt-thumbnails to latest upstream version
Note that the latest version on NPM is over two years old so this was built from source.
4 years ago
Matthew McGarvey 5937e0289e Fix feed menu overlap at ipad screen widths 4 years ago
TheFrenchGhosty 3ab3a5a236
Merge pull request #713 from leonklingele/keydown-mediakeys-detection
js: add support to detect media keys in keydown handler
4 years ago
Omar Roth 3f97bebd69
Support adding video to playlist from watch page 5 years ago
Omar Roth 0e58d99f4e Fix player mouseover events 5 years ago
Omar Roth bd7950b757
Add toggle_parent to dynamic handlers 5 years ago
leonklingele 70cbe91776
Migrate to a good Content Security Policy (#1023)
So attacks such as XSS (see [0]) will no longer be of an issue.

[0]: https://github.com/omarroth/invidious/issues/1022
5 years ago
Kyle Copperfield a3045a3953
Use a MediaQueryListener to toggle on demand. Tested on OSX. (#925)
Closes #867.
5 years ago
Leon Klingele e3593fe197
js: add support to detect media keys in keydown handler
See [0] for all the relevant codes.

[0]: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values#Multimedia_keys

Fixes a regression introduced in e6b4e12689.
Fixes https://github.com/omarroth/invidious/issues/712.
5 years ago
Jorge Maldonado Ventura dd9f1024f4 Remove invalid HTML from embed player 5 years ago
Omar Roth 72bfdfd925
Merge pull request #975 from jorgesumle/embed
Change embed code
5 years ago
Omar Roth 0560d2cfb7
Bump video.js 5 years ago
Jorge Maldonado Ventura 58c1a68ad9 Change embed code 5 years ago
Omar Roth 23ccaea2ff
Fix comment event listener 5 years ago
Omar Roth be055d9dcb
Add support for custom playlists 5 years ago
Omar Roth 330ffb803f
Remove invalid source map directive for videojs-quality-selector 5 years ago
Omar Roth e03b4b7505
Hide scrollbar for player menus 5 years ago
Omar Roth e61c8046f4
Fix z-index, scrollbar in player 5 years ago
agony affeeb39de Fixed bug that made the whole 'Invidious' div clickable. Solves #691 5 years ago
Omar Roth 553d52a45e
Update silvermine quality selector 5 years ago
Omar Roth be2ee33273
Fix overflow for player controls 5 years ago
Omar Roth 9766322e99
Update videojs-quality-selector 5 years ago
Omar Roth 7d3ecd2297
Bump JS/CSS dependencies 5 years ago
leonklingele acaf7b969a js: add support to detect alt, meta and control key in keydown handler (#704)
This fixes a quite severe user experience issue where pressing the
'alt', 'meta' and/or 'ctrl' key along with one of the supported keys
(e.g. 'f' to enter video fullscreen mode) would overwrite the default
browser behavior. In the case of 'f+meta' we would enter fullscreen
mode, and not open the browser search panel as one might expect.

This change is required to stay consistent with the way YouTube
handles keydown events.
5 years ago
Omar Roth 2b94975345
Fix playlist_thumbnail extractor 5 years ago
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.
5 years ago
Dragnucs 7eaac995bd Change font family to better native selection (#679) 5 years ago
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>).
5 years ago
Omar Roth f6f176afc1
Merge pull request #680 from leonklingele/add-player-styles
Add support for player styles
5 years ago