Commit graph

258 commits

Author SHA1 Message Date
Jarne Demeulemeester
705151de71
Change all app preferences to getters
This should improve performance in situations where the AppPreferences class is created
2022-12-28 00:23:49 +01:00
Jarne Demeulemeester
d6650eb994
Run ktlint 2022-12-11 21:05:53 +01:00
Jarne Demeulemeester
c41387487b
Revert "Change default mpv hwdec to mediacodec"
This reverts commit 794e1368fb.
2022-12-11 14:59:05 +01:00
Jarne Demeulemeester
794e1368fb
Change default mpv hwdec to mediacodec
mediacodec-copy -> mediacodec
2022-12-11 01:20:18 +01:00
Jarne Demeulemeester
c712f05dda
Add search button to home fragment (#218) 2022-12-11 00:53:33 +01:00
renovate[bot]
fa5d73faa3
Update dependency org.jellyfin.sdk:jellyfin-core to v1.4.0 (#215)
* Update dependency org.jellyfin.sdk:jellyfin-core to v1.4.0

* Remove ACCESS_WIFI_STATE permission

* Fix adding server

* Remove server already added error

Add the address if server already exists in database but the address doesn't

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jarne Demeulemeester <jarnedemeulemeester@gmail.com>
2022-12-10 21:24:11 +01:00
Jarne Demeulemeester
65f4c2f639
Migrate to androidx media3 (#213)
* Migrate to media3

* Update docs

* Move display_extended_title to AppPreferences

* Move display_extended_title to AppPreferences p2

* Add MediaSession support to the player

* Fix mpv player

* Disable animations on tv player controls and rename the tv_control_view file

* New media3 decoder ffmpeg
2022-12-10 11:33:16 +01:00
Jarne Demeulemeester
6ed7e12035
Fix tv player showing subtitle tracks instead of audio tracks 2022-12-04 00:12:42 +01:00
Jarne Demeulemeester
bd2bf79bc8
Replace deprecated onBackPressed 2022-12-04 00:12:14 +01:00
Jarne Demeulemeester
6572d7e85b
Multiple server addresses (#208)
* Add multiple addresses per server

* Clean up

* Change icon to globe

* Fix AddServerAddressDialog crashing on tv

* Fix navigation to main activity on tv

* Hide nav bar in UsersFragment and ServerAddressesFragment

* Add hint for server address
2022-12-03 20:53:14 +01:00
Jarne Demeulemeester
6e9adca9d6
More mpv options (#205)
* Add mpv options: hwdec, hwdec-codecs, vo, gpu-api

* Add audio output option

* Use AppPreferences in companion object to set the vo

* Remove unused strings

* Use strings for mpv prefs

* Change default ao to audiotrack

* Clean up preferred language settings
2022-11-25 21:50:20 +01:00
renovate[bot]
530cb009e9
Update exoplayer to v2.18.2 (#202)
* Update exoplayer to v2.18.2

* Implement getSurfaceSize in mpv

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jarne Demeulemeester <jarnedemeulemeester@gmail.com>
2022-11-24 00:34:27 +01:00
Paul Woitaschek
e7299febd1
Handle audio focus (#198) 2022-11-19 22:52:37 +01:00
Jarne Demeulemeester
e914ee61f1
Set correct preference when switching server 2022-11-19 22:30:52 +01:00
Jarne Demeulemeester
471697b4ae
Fix user detection query 2022-11-19 22:30:22 +01:00
Jarne Demeulemeester
ebcd2a898d
Fix tv server_select_fragment and users_fragment 2022-11-19 22:29:39 +01:00
Jarne Demeulemeester
aeabb620ee
Multi-user support (#199)
* 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
2022-11-19 21:18:50 +01:00
Jarne Demeulemeester
5895b2c8d8
Add network settings (#192)
* Add new network settings with socket timeout option

* Add socketTimeout to AppPreferences

* Format with ktlint

* Add request timeout and connect timeout as options
2022-11-05 23:59:44 +01:00
Jarne Demeulemeester
2c4fb8d7fe
Upgrade libmpv
Fix #160, #176
2022-11-04 23:55:57 +01:00
Jarne Demeulemeester
0bd1bb30c8
Fix app crash on ErrorDialogFragment.kt configuration change 2022-11-02 11:25:33 +01:00
Jarne Demeulemeester
d3b4fe6ea3
Servers database v2 (#177)
* 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
2022-11-01 21:15:42 +01:00
Jarne Demeulemeester
ad5e722d44
Introduce klint (#186)
* Add ktlint plugin

* Make code ktlint compliant

* Make code ktlint compliant
2022-10-29 21:17:48 +02:00
Jcuhfehl
45ccea57af
Improve downloads management (#179)
* 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>
2022-10-29 15:08:43 +02:00
Jarne Demeulemeester
77de164538
Make headers in search and favorite fragments translatable 2022-10-15 00:22:15 +02:00
Jarne Demeulemeester
9e4c160265
Fix zoom gesture accidentally triggering swipe to seek 2022-10-01 23:13:43 +02:00
Jarne Demeulemeester
e40543c0f7
Add series name to episode sheet with navigation (#173)
Also limit the episode name to 3 lines
2022-09-25 23:58:50 +02:00
Yusuf
86ea79b0b4
Fix mpv subtitles cut off when zoomed in (#166)
* 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>
2022-09-25 15:40:01 +02:00
Jarne Demeulemeester
39f3bd2656
Clean up 2022-09-11 16:42:52 +02:00
Jarne Demeulemeester
0e3b42d8d1
[TV] Set correct navigation start destination (#161)
* [TV] Fix not loading to the addServerFragment on first launch

* Don't query the database when startDestination has already changed
2022-09-10 17:56:43 +02:00
Jarne Demeulemeester
385f097beb
Fix crash when setting empty image cache size or seek increments 2022-09-08 13:29:26 +02:00
Jarne Demeulemeester
b9874db1e1
Fix mpv external subtitles (#155)
* Fix external subtitles + new libmpv build

* Fix unable to go back to 1x speed
2022-08-30 23:41:55 +02:00
Jarne Demeulemeester
6ed2f2ff7b
Fix player crashing when no PlayerItems are passed 2022-08-30 10:13:02 +02:00
Jarne Demeulemeester
0399ac0bdb
Fix crash using swiping gesture if video is not loaded yet 2022-08-30 09:38:01 +02:00
Jarne Demeulemeester
09189e4f85
Add subtitles settings button to player settings (#153) 2022-08-28 11:48:41 +02:00
Jarne Demeulemeester
08ca3ef860
Fix only showing 1 discovered server 2022-08-27 19:31:04 +02:00
Jarne Demeulemeester
9ce2950ea1
Fix mpv subfont.ttf not loading (#147) 2022-08-23 20:16:45 +02:00
Jarne Demeulemeester
c19350fa36
Small layout improvements (#145)
* Remove unused code

* Ellipsize primary and secondary name in home_episode_item

* Fix play icon color
2022-08-22 23:56:03 +02:00
Yusuf
a5189eb4fa
Fix "pinch to zoom" for MPV (#144)
Closes #22
2022-08-22 19:08:35 +02:00
Jarne Demeulemeester
9813ff3ed7
Fix navigation reset on configuration change
For example when rotating
2022-08-21 22:01:38 +02:00
Jarne Demeulemeester
8f117ccacb
Disable input elements in LoginFragment and AddServerFragment when loading
Fix a bug when adding a server keeps loading
Fix "Invalid username or password" error message
2022-08-21 16:59:33 +02:00
Jarne Demeulemeester
7b85df6e69
Display discovered servers on AddServerFragment (#143) 2022-08-21 16:45:57 +02:00
Jarne Demeulemeester
5d2409c93e
Display public users on login fragment (#142)
* Add public users to login fragment

* Display user image and hide recyclerview if no public users
2022-08-21 14:22:07 +02:00
Jarne Demeulemeester
3b7473b7a5
Bring Android TV back (#141)
* 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
2022-08-20 14:41:38 +02:00
Jarne Demeulemeester
5eb101323b
Enable Material You Dynamic colors (#138) 2022-08-03 09:21:01 +02:00
Yusuf
53d1720ad0
Allow seeking video by swiping or tapping (#132)
* Allow seeking in players by tapping

* Allow seeking in players by swiping horizontally

* Small cleanup

Co-authored-by: Jarne Demeulemeester <jarnedemeulemeester@gmail.com>
2022-07-29 18:48:47 +02:00
Jarne Demeulemeester
cc0ab920fd
Move servers check to Activity (#136)
Remove MainViewModel
Change startDestination when no servers are found
2022-07-25 13:44:15 +02:00
Jarne Demeulemeester
8552f0c469
Refactor the lifecycle state (#135) 2022-07-25 12:57:09 +02:00
Jarne Demeulemeester
ec6366508b
Layout improvements for larger screens (#134)
* 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
2022-07-22 16:29:25 +02:00
Jarne Demeulemeester
6bb784b2fe
Add error handling to device name updating
This fixes a crash
2022-07-09 13:57:25 +02:00
Jarne Demeulemeester
e6add5d47c
Fix mpv crash 2022-07-05 09:08:30 +02:00