In order to support both a theme toggle and to automatically use the
user's selected theme based on browser/system defaults the stylesheets
has to be duplicated twice since the latter requires the css to be
wrapped around a media query.
This duplication is a painful experience to deal with when adding or
changing existing styles. Even more so when it involves jumping around
the behemoth default.css from and back to whatever sections you were
just working on.
I don't believe the we the Invidious team will be able to agree to a
proper solution anytime soon (eg css post-processor, modern css
light-dark feature, etc) so this commit is here as a stopgap measure.
The workaround is to move the theming styles to two separate files
which are read at runtime and used to generate a combined stylesheet
with the necessary duplication for the media query. This combined
stylesheet is then delivered on a new route added to Invidious,
bypassing the static file handler.
Remove explicit `self.` from #process of parsers
Remove explicit return tuple in get_issue_template
Fix formatting
Move inline issue template style to stylesheet
Use @id in ProblematicTimelineItem xml repr
Fix naming
This PR adds a configuration option to control the preloading of video data on
page load with the HTML5 'preload'[1] attribute on the `<video>` element.
The option is enabled by default, meaning that the `preload` attribute's value
will be 'auto'. If users want to prevent preloading of video data, they
can disable the option, which will set the attribute value to 'none'.
[1](https://www.w3schools.com/tags/att_video_preload.asp)
Closes issue 4110
Trying to watch an already watched video will make the video start 15
seconds before the end of the video. This is not very comfortable when
listening to music or watching/listening playlists over and over.
Force the thumbnails aspect ratio to 16/9 in order to prevent Cumulative Layout
Shifting (CLS) from hapenning during lazy loading.
It also fixes the problematic, taller thumbnails that Youtube returns for
playlists.
Closes issue 4002
Multiple users have reported that the fields parameter is slowing down API
response times significantly. As most API endpoints are already optimized to
make as few requests as possible to Youtube, there is no point in limiting the
output. Furthermore, the added processing might be part of the broader memory
leak problem (See 1438).
In addition, the small increase in data output is not much of an issue compared
to the huge video proxy that lies next to this API.
No related issue tracked