Commit graph

1286 commits

Author SHA1 Message Date
Damontecres
808e379e02
Use neutral color for buffered & remaining seek bar 2025-10-28 21:49:43 -04:00
Damontecres
5682f61b02
Always scroll rows w/ overview to top 2025-10-28 21:47:46 -04:00
damontecres
d578dca0cf
Make watched indicator more clear (#102)
Closes #89

Updates the watched indicator to be more clear. The checkmark is filled
in and there's a slight border to add contrast.

Also this PR makes the location of the watched indicator consistent
between card types and makes child counts always use a semi-transparent
black background.

## Before
<img width="451" height="260" alt="watched_before 2"
src="https://github.com/user-attachments/assets/734d1bb7-4604-4ef1-bb40-fc08403d58fe"
/>

## After
<img width="458" height="272" alt="watched_after 2"
src="https://github.com/user-attachments/assets/d39c4e8e-e483-4843-9083-33209302feb1"
/>
2025-10-28 20:47:17 -04:00
damontecres
06f2c1260d
Add slf4j-simple (#101)
Fixes #99 

While not an actual error, it does look like a transitive dependency of
the Jellyfin Kotlin SDK may log using slf4j, so it would be good to
include an slf4j implementation just in case.
2025-10-28 19:28:54 -04:00
damontecres
f291a0ec04
Move focus from username to password field on enter (#96)
Closes #93
2025-10-28 17:35:26 -04:00
damontecres
3ab9eafc7c
Fix crash when changing seasons & improve error page (#94)
Related to #64 

If an error occurred while querying for a season's episodes, the app
would crash instead of display the error message.

This PR fixes the app crash, but not the underlying query issue. It also
changes the error page to show a button for sending logs to the server
immediately.
2025-10-28 17:04:15 -04:00
Damontecres
50b0b0a508
Release v0.2.1 2025-10-28 13:23:38 -04:00
damontecres
1db48334ab
Sort & format subtitle download options (#88)
Sorts the subtitle download options by community rating and downloads.

Also abbreviates the download count if it's large (eg 5133->5.1k).
2025-10-28 13:07:30 -04:00
damontecres
af0e853c21
Don't send crash reports as json (#84)
This is a workaround for jellyfin/jellyfin-web#7267 to ensure the client
logs are not valid JSON and can be rendered on the `10.11.x` web UI.

Related to #82
2025-10-27 21:22:44 -04:00
damontecres
f1f6b729aa
Fix several UI focus issues (#81)
Remembers the page position & focused item on both Movie & Series detail
pages

Only loads similar movies & series once so that if you click on one and
go back, it doesn't refresh the entire list

Remember the tab on the Favorite page (if remember tabs is enabled in
settings)
2025-10-27 20:44:04 -04:00
damontecres
c4df751918
Fallback to transcoding if direct play fails (#79)
If direct playing (or direct streaming) fails on device, attempt to fall
back to transcoding.

Also display more error information if available
2025-10-27 16:11:30 -04:00
damontecres
07a0db8e98
Add ability to search & download subtitles (#78)
Closes #74 

Adds an option to download subtitles from a remote source. This uses the
Jellyfin server's API, so you need to install a plugin on your server
that provides subtitle searching such as the [official OpenSubtitles
plugin](https://github.com/jellyfin/jellyfin-plugin-opensubtitles).

Initially it will search for subtitles in the device's current language,
but you can search for a different language if needed.
2025-10-27 15:53:58 -04:00
damontecres
4f5b0c7eee
Update bug.yml 2025-10-27 15:50:00 -04:00
damontecres
bafd635402
Add setting to change default content scaling (#77)
Closes #53 #71

Adds an advanced playback setting to set a different default global
content scaling. It can still be changed per playback as well.
2025-10-27 14:25:07 -04:00
damontecres
4269d27dad
Search page improvements (#76)
Update the search page results to indicate whether 1) the search is in
progress, 2) there are no results, or 3) the actual results. This makes
it clear when there's actually no results versus the search is just
running slowly.

Also search for collections as well
2025-10-27 10:28:27 -04:00
damontecres
1a7684b458
Minor UI changes (#75)
* Revert transparent cards from #61
* Don't show queue during playback if playing the final item
* Fix nav drawer collection page from showing everything recursively
* Immediately hide the skip intro button when pressed
2025-10-27 10:17:50 -04:00
damontecres
89b9364807
Dependency updates & removing unused code (#70)
Just bumping dependencies and deleting some unused code. No user facing
changes
2025-10-26 18:17:47 -04:00
damontecres
1c1e64a5b9
Fix focus on home page load defaulting to nav drawer (#68)
When the home page loaded, it would only try to focus on the "Resume"
row even if there were no items in that row (so it doesn't appear). This
resulted in the focus defaulting instead to the nav drawer.

This PR fixes focus so it always starts with the first item in the first
row of the home page.
2025-10-26 17:05:41 -04:00
Damontecres
a4dd404847
Release v0.2.0 2025-10-26 09:00:43 -04:00
damontecres
143fc03d9b
Add long click to home page (#66)
Add a popup when long clicking items on the home page

Also fixes a bug where the latest Recorded TV row would show non-Live TV
items if nothing has ever been recorded.
2025-10-26 08:50:24 -04:00
damontecres
2667090485
Send crash reports to the server (#65)
Adds ability to send app crash reports to the last connected server. The
app prompts you before sending. There is an advanced settings to disable
this as well.

Additionally, there is an advanced settings button to send the app logs
to the current server.

The resulting reports can be found on the server's web UI under
Dashboard->Logs

If sharing the logs, make sure there's no private information present!
2025-10-26 07:35:42 -04:00
damontecres
05f3811149
Add Live TV & DVR Support (#49)
Closes #1 

Adds support for Live TV & DVR functionality.

TODO:
- [x] EPG / TV Guide
- [x] View DVR schedule
- [x] Play live TV channel
- [x] Record program
- [x] Record Series
- [x] Cancel recordings
- [x] Access previously recorded content
2025-10-23 22:46:16 -04:00
damontecres
a35ecb6570
Fixing a few UI issues (#61)
Gathering a bunch of smaller changes into one PR

### Changes
* Changes the behavior of the "combine continue watching & next up" to
apply only to TV Shows which basically makes the 'Continue Watching'
just movies and 'Next Up' just TV episodes
* Banner card (Series & Home pages) will stretch images to fit
* Close the "more" nav item if navigating to a non-more one (from #60)
* Fix episodes not updating/marked played when returning to series page
after playing multiple episodes
* Don't show the Intro/Outro skip button the Next Up dialog is showing
* Always should black background for playback, even when loading
2025-10-23 22:10:41 -04:00
damontecres
fc4954b561
Add ability to customize the navigation drawer menu (#60)
Adds support for customizing the items listed on the left side
navigation drawer menu. Each item can be toggled on/off in settings.

The hidden ones are still accessible under "More" on the nav drawer,
which only appears if some items are hidden.

Additionally, if any of menu items are hidden, their "latest" content
will not appear on the home page.

The setting is stored per user profile.
2025-10-23 15:57:26 -04:00
damontecres
27d0a17a00
Support remote media control commands (#58)
Adds support for remote media controls (play, pause, etc) and displaying
messages.
2025-10-22 21:04:25 -04:00
damontecres
b5771db54e
Save remembered tabs per user (#57)
If the remember tab setting is enabled, tabs will be remembered per user
profile now
2025-10-22 19:24:17 -04:00
damontecres
f5ee5eceab
Add favoriting to the 'more' menus (#56)
Follow up to #55 & #38 

Adds the option to favorite/unfavorite from the "More" dialog menus for
movies & shows.
2025-10-22 18:12:14 -04:00
damontecres
b8202c06ff
Add favorites page (#55)
Closes #38 

Add a nav drawer link to a new favorites page which shows favorited
Movies, TV Shows, and Episodes.

Also adds a button to movies & tv shows to set/unset favorite status.
2025-10-22 16:49:27 -04:00
damontecres
298016b131
Show similar items on movie & tv show pages (#52)
Adds a row of similar items to the Movie & TV Show details pages
2025-10-21 23:30:18 -04:00
damontecres
177e009f8c
Format changelog in app (#51)
Formats the in-app changelog when updating

Also allows for force updating to allow for switching develop tags.
2025-10-21 19:48:19 -04:00
damontecres
6344cc77bf
Support remote movie trailers (#50)
Show remote trailers on movie details page. They play in a separate
compatible app such as YouTube.

Local trailers are shown first
2025-10-21 18:09:57 -04:00
Damontecres
2770ae1e4a
Release v0.1.2 2025-10-21 11:05:56 -04:00
Damontecres
9f3d83e831
Fix skip buttons not timing out 2025-10-20 21:26:11 -04:00
Damontecres
86d63f8b95
Check for updates when resuming 2025-10-20 21:25:53 -04:00
damontecres
e7a85f4f5f
Ensure suggested items are for the current user (#47)
Fixes #46

Makes sure that the suggested items fetched on Movies & TV Shows
recommended tab are for the current user which should respect content
restrictions and other permissions.
2025-10-20 19:10:36 -04:00
damontecres
77aaa87126
More bug fixes (#45)
Fixes:
* Issue from #39 where pressing back from playback went back two screens
instead of one
* Sometimes having to click on a server twice to switch to it
* Update UI when marking a single season as watched
* Fix needing to press back twice to hide skip segment buttons
* Fix skip intro/outro behaviors being swapped
* Always attempt to save playback progress when stopping playback
2025-10-19 22:35:47 -04:00
Damontecres
95a74b73ff
Fix playback issues from c3cc284 2025-10-19 19:37:29 -04:00
damontecres
a31cdc79e1
Better login page & Quick Connect error handling (#43)
Related to #18 

Ensures that when trying to auth via Quick Connect, the button to use a
username/password instead is always shown.

Additionally, errors that occur during the quick connect process are
displayed instead of just logging in the background.

This PR does not change the Quick Connect behavior or code, it's just UI
improvements for when an error occurs with Quick Connect.
2025-10-19 18:50:14 -04:00
damontecres
4c2a59a81c
Use singleTask launch mode (#44)
Fixes #40 

I believe this will fix the issue seen in #40
2025-10-19 18:39:01 -04:00
damontecres
8904360fb5
Suport passout protection (#41)
Adds a setting to configure pass out protection which, when enabled,
will stop auto playing next up episodes if the user hasn't interacted
with the app within the configurable 1-3 hours.
2025-10-19 18:21:23 -04:00
damontecres
c3cc284238
Few UI fixes especially backgrounding the app (#39)
Ensures playback (both theme song & video) is stopped when the app is
backgrounded, like hitting the home button.

Fixes a UI glitch when marking a series as played.
2025-10-19 17:24:08 -04:00
damontecres
63baf7f904
Support playing local movie trailers (#36)
Adds support for playing local movie trailers. External trailers, such
as ones on YouTube, are not yet supported.

Also fixes a couple issues with request handlers
2025-10-19 00:15:45 -04:00
damontecres
bb19ba316b
Various UI updates (#35)
Fixes and tweaks several UI issues
2025-10-19 00:08:21 -04:00
Damontecres
82111b99e4
Release v0.1.1 2025-10-18 21:48:35 -04:00
Damontecres
d86309f8f0
Fix multiple theme songs playing 2025-10-18 21:48:09 -04:00
damontecres
93f7abfa3b
Fix issue where theme songs played when the app is backgrounded (#34)
Previously if the app is playing a show's theme song and the app is
backgrounded, such as by pressing Home, the music would continue. This
PR fixes that.
2025-10-18 20:59:38 -04:00
Damontecres
5bb46bf34b
Fix uuid serialization 2025-10-18 19:56:15 -04:00
damontecres
dc3193e2dc
Various fixes (#33)
Fixes a few issues to prepare for a release.
2025-10-18 18:45:08 -04:00
damontecres
405e170750
Add a debug page (#32)
Click the version in settings 3 times to open this new debug page which
displays internal information such as settings, server info, app info,
and database info. It will also show recently logcat messages.
2025-10-18 15:48:04 -04:00
damontecres
f57fd25f8e
Support playing multiple file versions (#30)
Adds support for playing different versions of a media item.
Additionally, you can pick the audio or subtitle tracks for the chosen
version.

The file with the highest resolution is the default, but you can switch
versions or tracks in the "More" menu.

These choices are persisted across playbacks, just as in #26.
2025-10-18 14:11:06 -04:00