Commit Graph

2976 Commits

Author SHA1 Message Date
480d31eb5e fix: ytInitialData parsing with regex 2020-11-26 07:22:47 +01:00
1973f93d4a Merge pull request #1482 from matthewmcgarvey/extract-playlist-routes
Extract playlist routes from global file
2020-11-20 21:48:34 +00:00
3a2f4d4def allow to set a custom anti-captcha api url (#1473) 2020-11-20 22:21:26 +01:00
192d2b86b6 Extract playlist routes from global file 2020-11-19 19:21:48 -06:00
6ca948ac3c Merge pull request #1477 from saltycrys/empty-preference-values
Fill empty preference values
2020-11-19 21:45:00 +00:00
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.
2020-11-17 22:53:45 +01:00
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.
2020-11-16 04:19:41 +01:00
72c4fd868a Fill empty preference values 2020-11-16 01:33:55 +01:00
c9c6c1f769 Remove duplicate Referrer-Policy 2020-11-15 10:02:45 +00:00
bb7d8735cb Merge branch 'master' into patch-1 2020-11-12 17:06:38 +01:00
557b0d76ab Merge pull request #919 from edumoreira1506/feature/add-buttons-top-page
Add Previous/Next page buttons at the top of the page
2020-11-12 17:00:23 +01:00
13073411cc Merge pull request #1465 from saltycrys/storyboards
Update videojs-vtt-thumbnails to latest upstream version and improve storyboard display
2020-11-12 16:54:28 +01:00
6d29e9c1b7 Fix missing videos tab on some channels (#1462)
* Fix missing videos tab on some channels

* Fixed formatting

Co-authored-by: Linux User <user@localhost.local>
2020-11-12 15:35:12 +00:00
d3e4739745 Improve storyboard display 2020-11-08 22:23:24 +01:00
38b617d848 Formatting 2020-11-07 08:22:44 -06:00
dda02f783f Extract embed routes into separate classes 2020-11-06 16:44:36 -06:00
cda322e311 Merge pull request #1449 from raycheung/master
Fix stale playlist video counting on add/drop (#1448)
2020-11-03 17:39:34 +01:00
2cded8dcac Extract /watch route from main file 2020-11-02 18:06:06 -06:00
babe0c31ad Fix stale playlist video counting on add/drop (https://github.com/iv-org/invidious/issues/1448)
The return of `cardinality()` is not affected by the `array_append()`
and `array_remove()` of the same statement.
2020-11-01 12:20:44 +08:00
9a8b81fcbe Fix storyboards 2020-10-25 09:35:16 +01:00
138f38aade more polish (#1437) 2020-10-24 03:26:17 +00:00
ec4a22687f Update get_about_info for polymer (iv-org/invidious#1423) (#1429)
Update get_about_info for polymer (iv-org/invidious#1423)
2020-10-23 01:40:07 +00:00
22d9d16a7a Update parsing of ytInitialData (#1427)
Update parsing of ytInitialData
2020-10-22 10:02:15 +00:00
0520e67303 [refactor] Finish converting jobs to new job setup (#1420)
[refactor] Finish converting jobs to new job setup
2020-10-17 12:25:57 +00:00
d571573e52 Set preferences before conditional breaks in before_all (#1412) 2020-10-16 10:23:18 +00:00
989317e5d3 Extract RefreshChannelsJob (#1403) 2020-10-15 14:22:41 +00:00
812a21bce6 Merge pull request #1372 from tleydxdy/patch-1
Add exponential backoff to refresh_channels
2020-10-10 14:01:47 +02:00
e02608edf8 Use channel API v3 2020-10-10 12:15:30 +02:00
1a7e160956 Merge pull request #1402 from matthewmcgarvey/feed-menu-overlap
Fix feed menu overlap at iPad screen widths
2020-10-08 08:35:50 +00:00
5937e0289e Fix feed menu overlap at ipad screen widths 2020-10-07 23:01:18 -05:00
85c212aee3 Provide rough draft of better project organization 2020-10-05 23:57:19 -05:00
1978c3d3bd Merge pull request #1379 from Rjevski/patch-1
Remove on-hover tooltip from player
2020-10-05 11:11:25 +00:00
f65e57ee82 Fix formatting 2020-10-03 15:19:12 +02:00
1595eaeb74 Fix #1382 : Playlists missing first video
The index was set to index - 1, causing the first video to be shifted in fetch_playlist_videos
(because of its index being -1 lower than it should) and thus not displayed on playlist page.
2020-09-25 14:26:07 +02:00
a54cbe896d Remove on-hover tooltip from player
Using the player on latest Safari, the tooltip appears and stays stuck for long even when switching to fullscreen which is annoying. You need to explicitly click anywhere to dismiss that stuck tooltip.

This doesn't seem to happen in Firefox so I am not sure whether this is a browser bug, but in any case I don't see any value in keeping this tooltip so maybe we can just remove it?
2020-09-15 18:50:17 +01:00
9995a8d53f Allow cookies from anti-captcha to be optional (#1371) 2020-09-09 23:04:08 +00:00
b88872d54b Fix sub refresh (#1370) 2020-09-09 23:03:27 +00:00
f02ac01f7e Add exponential backoff to refresh_channels
In practice with the patch I usually see backoff to 2 hours when blocked, so it should improve recovery time. The lim_thread is to work with multi-threading, not sure if it's the best way to do it.
2020-09-09 11:47:11 -04:00
4a6e920d0e Use new youtube API to fetch channel videos (#1355)
* Use new API to fetch videos from channels

This mirrors the process used by subscriptions.gir.st. The old API is
tried first, and if it fails then the new one is used.

* Use the new API whenever getting videos from a channel

I created the get_channel_videos_response function because now instead
of just getting a single url, there are extra steps involved in getting
the API response for channel videos, and these steps don't need to be
repeated throughout the code.

The only remaining exception is the bypass_captcha function, which still
only makes a request to the old API. I don't know whether this code
needs to be updated to use the new API for captcha bypassing to work
correctly.

* Correctly determine video length with new api

* Remove unnecessary line
2020-09-02 20:28:57 +00:00
13f58d602f Replace omarroth with iv-org where applicable (#1353)
Fixes #1353
2020-08-25 16:07:16 +00:00
62f015fc34 Fix playlist export for playlists with more than 100 videos 2020-07-28 17:21:39 -04:00
176ef19cca Update mixes link 2020-07-26 11:50:26 -04:00
db83ede73c Add missing default for ConfigPreferences 2020-07-26 11:09:45 -04:00
452d1e8307 Fix warnings with latest version of Crystal 2020-07-26 10:59:31 -04:00
92f337c67e Add playlist import/export 2020-07-26 10:59:31 -04:00
1e4022680a Fix playlists with one video 2020-07-26 10:59:31 -04:00
b5f79444f9 Fix optional value in data extractor 2020-07-21 20:11:13 -04:00
8ed1c77e47 Skip DASH streams segmented by URL 2020-07-04 14:17:46 -04:00
8c65b8c16f Update playlists to support polymer redesign 2020-06-24 22:19:36 -04:00
1f435522b4 Fix cast from nil in short_description 2020-06-17 19:22:28 -04:00