Commit Graph

63 Commits

Author SHA1 Message Date
Jannik 1a012cba7d
add support for dedicated subtitle and audio language settings 2023-07-21 21:42:55 +02:00
Jannik 4bceacf75c
make versions in DataTypes -> Episodes -> Episode nullable since it is in fact nullable 2023-04-16 16:24:28 +02:00
Jannik cf02bee7d4
minor fixes
* fix episode count in MediaFragement
* fix tmdb language tag
* update media type detection to use the episode field as episodeNumber may be messinging from certain episodes of tv shows
2023-04-16 13:49:22 +02:00
Jannik 5cf4527a92
clean up color and theme definitions
also use separate theme definition for light/dark
2023-04-15 22:35:19 +02:00
Jannik d40ab9519c
migrate playheads() to crunchyroll v2 api 2023-02-19 16:53:54 +01:00
Jannik 2e7db26d1d
migrate more api calls to v2 2023-02-19 15:13:31 +01:00
Jannik 8b7fb3ac5f
fix crunchyroll parser to work with the latest api changes 2023-02-19 14:21:46 +01:00
Jannik 097383a082
fix playback & update to agp 7.4.0
updated the crunchyroll parser to use the new streams endpoint to retrieve the media streams
2023-01-25 19:51:38 +01:00
Jannik 9380f98098
add watchlist to MyListsFragment 2022-12-26 19:43:40 +01:00
Jannik bbc819551b
disable platform diagnostics for exo player 2022-12-02 23:59:39 +01:00
Jannik 2004a3f483
replace runBlocking{} in setCurrentEpisode with suspend
this fixes the player frezzing for a few 100ms when loading a new episode
2022-11-26 18:34:32 +01:00
Jannik 0a31c2fd88
update dependencies
* exoplayer 2.17.1 -> 2.18.2
* security-crypto 1.1.0-alpha03 -> 1.1.0-alpha04
* androidx:junit 1.1.3 -> 1.1.4
* androidx:espresso-core 3.4.0 -> 3.5.0
2022-11-26 18:09:50 +01:00
Jannik f49b5a2730
rework the player activity starting behaviour
* add callbacks on player finish to update episode watch head progress in gui
* directly start the player from the fragment and not from MainActivity
2022-11-26 17:46:25 +01:00
Jannik 777c6e0212
add ScrollView to player language/subtitles selection 2022-11-05 11:24:16 +01:00
Jannik 71d5c58653
add crunchy intro metadata to parser and update the skip intro function, closes #66 2022-10-28 23:03:21 +02:00
Jannik 6624e71228
add more items to the shimmer layout on the home screen 2022-10-14 17:08:51 +02:00
Jannik ebd96f9849
compileSdkVersion 33 and library updates
* core-ktx 1.8.0 -> 1.9.0
* appcompat 1.5.0 -> 1.5.1
* navigation-fragment-ktx 2.5.1 -> 2.5.2
* navigation-ui-ktx 2.5.1 -> 2.5.2
2022-09-14 20:33:08 +02:00
Jannik 85b17d7a76
improve buttonNextEp hiding behaviour
* the button will be diabled on PlayerActivity.playNextEpisode()
* the button will only be enabled if PlayerViewModel.playNextEpisode() returns
* remainingTime will be set to 0, if duration < 0, this fixes the button reapring after a few 100 ms when beeing pressed

fixes #53
2022-08-27 13:59:30 +02:00
Jannik f128efea0d
set compileSdkVersion and targetSdkVersion to 32 2022-08-27 13:56:15 +02:00
Jannik f398c82f62
update ktor to version 2.0.3 2022-08-19 18:15:37 +02:00
Jannik 0028cb6dd7
fix EpisodesListDialogFragment current episode selection
fix EpisodesListDialogFragment not selecting the correct episode, if the episode number doens't start at 0, if episodes are count across seasons
2022-07-21 18:49:29 +02:00
Jannik 3cadaa5c7a
update playhead every 30 seconds while playback is active 2022-07-16 14:35:22 +02:00
Jannik 4c55bb771f
partially revert c34b95795f 2022-07-16 13:48:28 +02:00
Jannik 8eb737a831
use a separate scope to update playheads
viewModelScope will be cleard when the activity is stopped, but the playhead update should be done anyway

fixes #62
2022-07-10 13:50:53 +02:00
Jannik 69e0b6bcca
update kotlin and libraries
* kotlin 1.6.21 -> 1.7.10
* navigation-fragment-ktx 2.4.2 -> 2.5.0
* navigation-ui-ktx 2.4.2 -> 2.5.0
* lifecycle-runtime-ktx 2.4.1 -> 2.5.0
* lifecycle-viewmodel-ktx 2.4.1 -> 2.5.0
2022-07-10 13:19:59 +02:00
Jannik c34b95795f
fix rwd/ffwd button pos when animation is running, clean up rwd/ffwd animation handling 2022-07-10 12:53:03 +02:00
Jannik 12bbc2ef5f
add recommendations to home fragment 2022-05-22 11:21:49 +02:00
Jannik 69c9666d2b
fix crash if media is present in metadb, but season/episode are not present 2022-04-22 23:51:51 +02:00
Jannik 95c8a72c94
add playhead progress indicator to player episodes list 2022-04-15 17:47:17 +02:00
Jannik fc04e8e222
remove kotlin-android-extensions, use viewBinding in Player
also replace exo_progress_placeholder with exoplayer2.ui.DefaultTimeBar since the placehoder wont work with viewbinding
2022-04-15 17:25:31 +02:00
Jannik a898a70653
migrate player episodes list to DialogFragment; change hideBars() behaviour 2022-04-15 16:28:15 +02:00
Jannik 35157b78f5
migrate player language settings to DialogFragment; update hideBars()
* player language settings is now aDialogFragment
* update hideBars() to work with any window & view combination
* update hideBars() to use WindowCompat
2022-04-15 13:32:16 +02:00
Jannik 7a860a7270
update ExoPlayer
exoplayer 2.15.0 -> 2.17.1
2022-04-02 19:47:49 +02:00
Jannik 7fbf639a70
add metadb support for crunchyroll
also remove gson snice it's unused now
2022-03-29 22:39:16 +02:00
Jannik 72280f29d8
add option to disable playhead updates/reporting 2022-03-20 12:38:49 +01:00
Jannik 0797e9fa3d
Fix multiple language related issues
* fix playback for other  shows with no language set in cr API
* fix selection of preferred season for languages other than german
* add support for all content languages to TMDBApiController
* preferSecondary is now preferSubbed, this describes the function more clearly
* remove jsoup, not used anymore
2022-03-06 18:43:02 +01:00
Jannik 75204e522d
Use ktor instead of fuel for http requests [Part 2/2]
* update preferred locale in preferences, is is the actual locale implementation
* update token handling for crunchy (country via token)
* update TMDBApiController to use ktor
* add parsable dates to NoneTMDBTVShow and NoneTMDBMovie
2022-03-05 20:41:39 +01:00
Jannik 61c96f5ce2
update playhead on manually selected next episode & start fully watched episodes from the beginning 2022-02-04 23:07:48 +01:00
Jannik 9bf0ae2f63
refresh access token, if it is expired, before doing a request 2022-02-01 17:21:42 +01:00
Jannik df4f43c0a2
Player: load media async and use playhead for initial episode 2022-02-01 17:21:42 +01:00
Jannik 287ef57bdb
don't show next ep button or autoplay if the current ep is the last ep
next_episode_id can be non null, even if it's the last episode
2022-02-01 17:21:42 +01:00
Jannik aa41884db5
the media type should not change while playing a media (tv show/movie) 2022-02-01 17:21:42 +01:00
Jannik bec0dc2628
implement playhead reporting to crunchyroll 2022-02-01 17:21:42 +01:00
Jannik d427691f6e
update copyright/license notice 2022-02-01 17:21:42 +01:00
Jannik 27e7f2a249
add subtitle selection to player 2022-02-01 17:21:42 +01:00
Jannik ecbbc5db7b
implement preferred season/languag choosing in MediaFragment 2022-02-01 17:21:42 +01:00
Jannik 63ce910ec5
implement lazy loading for LibraryFragment & code cleanup 2022-02-01 17:21:42 +01:00
Jannik 7dc41da13c
add support for crunchyroll media playback in player 2022-02-01 17:21:42 +01:00
Jannik 236ca9a6c9
Implement media fragment for tv shows 2022-02-01 17:21:42 +01:00
Jannik eeb1c33e43
use the epsidoeId for the next epsiode in PlayerViewModel 2021-09-05 11:54:55 +02:00