* Add multiple users per server
* Remove unnecessary longClickListener
* Check if user is selected on startup
* Still create JellyfinApi even if no user is selected
* Already fill in the username when needing to re-login
* Add new network settings with socket timeout option
* Add socketTimeout to AppPreferences
* Format with ktlint
* Add request timeout and connect timeout as options
* New server db schema
Adds support for multiple addresses and users per server
* Fix crash when the only available server is deleted and app is restarted
* Set serverId as foreign key in User and ServerAddress
* Format using ktlint
* Bump ServerDatabase version to 2
* Fix deleted downloads
This commit fixes downloads getting deleted after a few weeks by android's cleanup system. This is fixed by downloading the files under the .download extension and renaming them when the download is completed.
* Add retry download feature
* Add indicator when download is ongoing
* Refactor download code
* Disable button on retry and clean up
Co-authored-by: Jarne Demeulemeester <jarnedemeulemeester@gmail.com>
* Fix MPV subtitles zoom in
Closes#162
Some .ass subtitles will still be broken due to their forced stylings unless stripped.
* Move everything in a single if statement
Co-authored-by: Jarne Demeulemeester <jarnedemeulemeester@gmail.com>
* Merge MainActivity and MainActivityTv
* Merge AddServerFragment and TvAddServerFragment
* Merge LoginFragment and TvLoginFragment
* Add new focus effect
* Add libraries to tv home
* Fix home empty when navigating back on mobile
* Add loading indicator to home fragment
* Add empty LibraryFragment
* Add focus outline to settings button
* Use DiffCallback for updating home fragment
* Visually upgrade MediaDetailFragment
* Make all home items focusable in touch mode
* Add new focus border to person item
* Add LibraryFragment layout for TV
(Whilst also making a clusterfuck of the navigation)
* Add missing try-catch in HomeViewModel
* Don't show CancellationException on AddServerFragment
* Fix a few crashes plus errors
* Allow seeking in players by tapping
* Allow seeking in players by swiping horizontally
* Small cleanup
Co-authored-by: Jarne Demeulemeester <jarnedemeulemeester@gmail.com>
* Use NavigationRail on tablets
Width 600dp+
* Add next up item next to the description on tablets
Width 600dp+
* Add tv banners for debug and staging
* Clean up tv add server fragment
* Clean up tv login fragment
* Upgrade ExoPlayer to 2.18
* Change the position polling from every 2 to every 5 sec
* Make internalMediaItems non-nullable
* Clean up mpv track names
* Reduce explayer ffmpeg extension size by not including all decoders
Removed decoders vorbis, opus, flac, pcm_mulaw, pcm_alaw, mp3, aac because these are already supported by Android.
* Clean up preferredLanguage preferences
* Add support for external subtitles in exoplayer
* Enable ASS/SSA external subtitles
* Enable VTT external subtitles
* Clean up
* Fix srt and vtt
Jellyfin currently converts vtt to srt without changing the codec tag. This makes the player unable to decode the subs because it thinks the file is vtt while in fact it is srt.
* Fix for vtt subs
Jellyfin return a srt stream when it should return a vtt stream
* Display downloaded episodes by series
* Add offline playback to readme
* Remove accidentally commited changes
* Remove duplicate movie section in downloadviewmodel
* Fix issues with merging upstream
* Notify on download completion
* Fix trash icon color
* Update DownloadSeriesFragment to use new UiState system
* Clean up unused code
Co-authored-by: Jarne Demeulemeester <jarnedemeulemeester@gmail.com>
* Provide better error messages with stacktrace
+ clean up
+ fix error details popup in MediaInfoFragment
* Simplify exception passing by sending complete exception to the dialog
* Use viewLifecycleOwner with repeatOnLifecycle