Adds "Bold Blue" and Black/OLED themes
Also tweaks Orange & Green a bit to make the borders stronger and
backgrounds darker/less colored
Related to #91
Fixes the nav drawer not being focused on when pressing back to open it
on the home page
Dev notes: I think the bug was introduced in #228 due to the new
`Column` not being focusable, but we don't need it to be since we want
to focus on the selected page.
## Details
This PR ended up being larger than I meant. It contains some UI changes
and code organization.
## TV & DVR
- Uses the "Recordings" library position to order "Recently added in
Recordings" instead of Live TV position
- The times at the top of the TV guide are more distinguishable from
each other
- Removes the duplicate title on the Live TV->Recordings tab
## Other libraries
- Bare-bone support for "Music Video" libraries. Full support for "Music
Video" is work-in-progress in #267, but the libraries should be
browseable now.
- Bare-bone support for "Other" (aka Mixed Movies & TV Shows) libraries.
Note: this type of library is considered [broken and
deprecated](https://jellyfin.org/docs/general/server/media/mixed-movies-and-shows),
so this won't be expanded any further
## Grids
Updates various grid types to use poster vs wide cards. For example,
Favorite TV Episodes will use episode images in a wide card now.
## Issues
Closes#249Closes#271
## Details
Adds support for a few more media remote buttons
Adds support for common controller buttons
### Dev notes
Lifts the playback dialogs to the top level allowing them to be called
from anywhere during playback
## Issues
Closes#260
If playing with transcoding, changing tracks during playback will
continue to transcode instead of possibly switching to direct play.
Also support embedded subtitles that are being delivered externally.
Fixes#256Fixes#257
Reduces the size of the rows on the TV guide allowing for 7-8 rows to
show. Also hide the tab row if scrolled down on the guide.
Move the "watch live" button to be initially focused
Channels are sorted with favorites appearing first
Back button behavior is tweaked to move to start of row first, then top
of the guide, then normal back behavior
Closes#259
Related to #250
`PlaybackViewModel` was becoming very unwieldy at over 1,300 LOC. This
PR breaks it up and simplifies some fields so it's easier to work with.
There are no user facing changes
Adds grid layouts specifically for playlists and collections/boxsets
instead of falling back to the generic grid.
In #238, the generic grid was updated to show 4 columns of 16x9 cards.
Now, collections will use 2x3 (poster) cards (like Movies) and playlists
will use square cards.
This also means collections & playlists have more relevant sort options.
Fixes#243Closes#226
A real implementation for combining the `Continue Watching` and `Next
Up` rows on the home page.
It requires a query for every next up item, so it could become slow
especially for many items and larger servers. The app makes a best
effort to cache the information.
The order is determined by querying each episode in next up to associate
it to its immediately previous episode's last played date. Then both
continue watching & next up items are reversed sorted by the last played
data. So this only makes sense if you watch series in order.
Closes#19
## Details
Adds the logo (if available) to the upper left corner of the playback
controls overlay.
I am still experimenting with how logos can be used on the details
pages. It's problematic because of the variety of colors, eg dark logos
can be hard to see on the dark background.
## Issues
Related to #92
## Screenshot
<img width="1280" height="771" alt="logo_playback Large"
src="https://github.com/user-attachments/assets/c6cb43fe-f3bc-42a4-9ef4-0397267e3073"
/>
- General video library grid now shows 16:9 cards
- Ensures the posters on Movie/TV show grid pages fill the bounds (TVDB
posters are often very slightly wider than 2x3)
- Always crossfade home page backdrop image
Related to #66
Fixes an issues where if the playback overlay is showing and there is a
queue of items, then holding the D-Pad down button would scroll down but
visually lose focus on the queue items.
On the series overview page, when moving off of the episode row, such as
to do the play/more buttons, the other episodes will now become dimmer
to indicate which episode you're interacting with.
Also, when moving back to the page from the nav drawer, focus is
restored to where it left from. This is useful when scrolling fast left
on the season tabs and you overshoot onto the nav drawer, moving right
once will always move back to the season tabs.
In this example screenshot, Episode 3 is selected, so the others are
darker.
<img width="1280" height="771" alt="dim Large"
src="https://github.com/user-attachments/assets/fa21ade4-3345-4e97-873f-d654123a1ae5"
/>
This is a follow up from #158
Experimental MPV player backend
Related to #14, #22, & #85
You can switch to MPV in advanced settings and toggle using hardware
decoding or not.
This uses code and buildscripts from
https://github.com/mpv-android/mpv-android, plus other third party
libraries to build MPV
## Description
Shows local extras (clips, interviews, etc) for movies and tv shows
Extras are grouped by type and clicking on the type will go to a grid
page listing all of the items. However, if there is just one of that
type, it is shown in-line.
Trailers still have on their own row. And theme songs & theme videos are
not shown.
## Issues
Closes#123