Commit Graph

232 Commits

Author SHA1 Message Date
be1c001942
Fix getPreferredSeason() (again)
fix selection of preferred season for languages other than english
2022-03-07 19:43:26 +01:00
30a5331bbc
load preferred sub/content language on startup 2022-03-06 18:57:55 +01:00
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
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
2016e03e56
Use ktor instead of fuel for http requests [Part 1/2] 2022-03-05 19:22:47 +01:00
4505f95309
don't show fully watched episodes in "Up next" 2022-03-04 20:42:21 +01:00
e8bf63a666
add preferred content language selection
followup to 0b5a8e69fb
2022-03-04 20:29:37 +01:00
a51001ec2e
replace MaterialDialog with MaterialAlertDialogBuilder in AboutFragment 2022-02-05 20:10:59 +01:00
0b5a8e69fb
add preferred content language selection to AccountFragment
this contains only gui work
2022-02-05 20:02:33 +01:00
61c96f5ce2
update playhead on manually selected next episode & start fully watched episodes from the beginning 2022-02-04 23:07:48 +01:00
9bf0ae2f63
refresh access token, if it is expired, before doing a request 2022-02-01 17:21:42 +01:00
f66fca7ebb
MediaFragment: update playhead progress/fully watched on resume 2022-02-01 17:21:42 +01:00
df4f43c0a2
Player: load media async and use playhead for initial episode 2022-02-01 17:21:42 +01:00
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
aa41884db5
the media type should not change while playing a media (tv show/movie) 2022-02-01 17:21:42 +01:00
bec0dc2628
implement playhead reporting to crunchyroll 2022-02-01 17:21:42 +01:00
4fed3ddb91
add upNextSeries
the MediaFragment will show the next episodes title instead for the series title and play the "next up" episode when the play button is clicked
2022-02-01 17:21:42 +01:00
e652c001d3
Update the onboarding process to support crunchyroll
* only save credentials during onboarding, if login was successful
* show onboarding, if login failed
2022-02-01 17:21:42 +01:00
2f78fbea73
add highlight (random of newly added (n=10)) 2022-02-01 17:21:42 +01:00
a1fe08840f
add newly added title to HomeFragment
* add support for season_list to crunchyroll parser
2022-02-01 17:21:42 +01:00
402fb06c9e
add playheads to crunchyroll parser
* show watched icon, if episode has been fully watched
* add seasonTag to browse()
2022-02-01 17:21:42 +01:00
188d0d9162
add up next to home screen
for now up next will show the series and not play the actual episode
2022-02-01 17:21:42 +01:00
d5d70e49d2
add watchlist to home fragment 2022-02-01 17:21:42 +01:00
f2a798d4f7
add watchlist support for media fragment 2022-02-01 17:21:42 +01:00
d427691f6e
update copyright/license notice 2022-02-01 17:21:42 +01:00
b4daac0814
replace tmdb multi search with type search (movie/tv)
multi search often retuns a wrong result, therfore use movie or tv show search
2022-02-01 17:21:42 +01:00
554af530e3
move TMDBApiCOntroller to Fuel and kotlinx.serialization
* add year and maturityRatings to MediaFragment
* don't show season selection if only one season is present
2022-02-01 17:21:42 +01:00
27e7f2a249
add subtitle selection to player 2022-02-01 17:21:42 +01:00
f97d07c2b8
implement season selection in MediaFragment 2022-02-01 17:21:42 +01:00
ecbbc5db7b
implement preferred season/languag choosing in MediaFragment 2022-02-01 17:21:42 +01:00
4fd6f9ca7e
add search for tv shows
media items are currently not selectable, the app will crash
2022-02-01 17:21:42 +01:00
63ce910ec5
implement lazy loading for LibraryFragment & code cleanup 2022-02-01 17:21:42 +01:00
7dc41da13c
add support for crunchyroll media playback in player 2022-02-01 17:21:42 +01:00
236ca9a6c9
Implement media fragment for tv shows 2022-02-01 17:21:42 +01:00
a46fd4c6d2
implement index call
index is needed to retrieve identifiers necessary for streaming
2022-02-01 17:21:42 +01:00
c4bc3c7ea2
add rudimentary parsing for browsing results 2022-02-01 17:21:42 +01:00
844ff41dd3
add crunchyroll login and browse (no parsing for now) 2022-02-01 17:21:42 +01:00
3935f37267
update libraries
* kotlinx-coroutines-android 1.5.1 -> 1.5.2
* exoplayer 2.14.2 -> 2.15.0
* jsoup 1.13.1 -> 1.14.2
* gradle agp 7.0.1 -> 7.0.2
2021-09-05 13:43:27 +02:00
eeb1c33e43
use the epsidoeId for the next epsiode in PlayerViewModel 2021-09-05 11:54:55 +02:00
8753d4f36f
fix tmdb episode description in player 2021-09-05 00:08:53 +02:00
5ea94b7ded
add numberStr to AoDEpisode type & show tmdb episode info in player
* use numberStr instead of index to display the correct episode number, allowing for number such as "12.5"
* show tmdb episode description in player if found and aod description is missing
2021-09-05 00:08:03 +02:00
062013489d
use notifyItem...() instead of notifyDataSetChanged() in MediaFragment 2021-09-05 00:04:59 +02:00
ed9eff433b
AoDParser Media handling rework [Part 2/2]
* move Player to new AoD media Implementation
* remove old AoD media Implementation from AoDParser
2021-09-04 13:33:46 +02:00
c2a5f768b8
AoDParser Media handling rework [Part 1/2] 2021-08-31 19:47:18 +02:00
a505315781
fix crash if media is not found in tmdb 2021-08-29 15:05:34 +02:00
d76538cf28
use locale instead of string for language in AoDPlaylist 2021-08-29 15:05:34 +02:00
309a991007
fix for AoDParser related code clean up 2021-08-29 15:05:34 +02:00
0340c83b47
clean up some AoDParser related code 2021-08-29 15:05:34 +02:00
9dfd2cf70b
added skip opening for tv shows
* available for tv shows, where metaDB has the needed information
2021-08-29 15:05:34 +02:00
26d2da923b
use Gson in TMDBApiController, adapt tmdb types to api documentation
* use gson fromJson() to parse tmdb response
* adapt tmd types to documentation (nullable/non nullable)
2021-08-29 15:05:34 +02:00
c66c725ee3
use tmdb data if missing on aod
*  episode description
2021-08-29 15:05:34 +02:00
44f99295e9
rework the tmdb controller
the tmdb interation now provides additional information:
* tv seasons & episodes
* movie & tv show (air date, status)
2021-08-29 15:05:34 +02:00
664959641f
fix tmdb search for movies
movies don't have name but titles
2021-07-04 13:01:49 +02:00
ba7d82bc2b
replace deprecated OnNavigationItemSelectedListener 2021-07-03 15:58:20 +02:00
e0a6485ed7
tmdb api improvements
* sort tmdb results by name
* remove season information in media title before searching
2021-07-03 15:51:52 +02:00
5555269877
sort tmdb results with String.compareTo 2021-07-03 13:46:13 +02:00
03e9c3dae5
fix crash on myList element not present in overall itemMediaList
fixes #42
2021-07-03 13:36:15 +02:00
8afbae1e1a
set pip source hint & update exo player
* exo player 2.14.0 -> 2.14.1
2021-06-17 19:36:13 +02:00
164db8ebd1
remove unneeded import 2021-06-12 21:03:19 +02:00
44d1825095
minor code clean up 2021-06-12 21:02:09 +02:00
1d071eafdb
add media session & update exo player to 2.14.0 2021-06-12 20:57:12 +02:00
5e48e724a7
update some libraries & coroutines 1.5.0
* androidx.core 1.3.2 -> 1.5.0
* androidx.appcompat 1.2.0 -> 1.3.0
* gson 2.8.6 -> 2.8.7
* coroutines-android 1.4.3 -> 1.5.0
  * don't use GlobalScope, use lifecycleScope and vieModelScope instead. This fixes a few issues when fragments where destroied befor the coroutine finished.
* gradle wrapper 7.0 -> 7.9.2
2021-06-06 17:54:19 +02:00
a3a89c6b64
don't use deprecated startActivityForResult() use registerForActivityResult() instead 2021-05-27 19:50:00 +02:00
7ce67f57cd
add export/import of my list
fixes #39
2021-05-26 19:46:46 +02:00
063b5405fc
add dev settings gui
enable dev settings by clicking the app icon in the about screen 5 times
2021-05-09 20:31:51 +02:00
be591a961a
update agp and kotlin
apg 4.1.3 -> 4.2.0
kotlin 1.4.32 -> 1.5.0
2021-05-09 19:32:31 +02:00
86dfd69b4b
add subscription info to settings fragment
* update androidx.navigation: 2.3.4 -> 2.3.5
2021-04-17 20:59:37 +02:00
0bb433b5cb
set timeout for laoding the playlist to 120 seconds
fixes #36
2021-03-13 22:08:53 +01:00
b05ecf64a6
minor code clean up 2021-03-11 19:11:12 +01:00
1a9de4124d
minor pip mode fixes 2021-03-04 20:19:54 +01:00
a07f291098
only update media title if there is one & update exoplayer to 2.13.2 2021-02-27 21:12:42 +01:00
9d3e9c5019
dsiable scrolling on appbar if no tabs where added to media fragment
fixes #33
2021-02-20 22:57:00 +01:00
09191f6732
fix possible and rare index out of bounds 2021-02-13 00:31:58 +01:00
e762745705
use CoordinatorLayout instead of NestedScrollView in media fragment 2021-02-08 00:22:50 +01:00
5bb51c9054 Add similar titles to media fragment (#28)
* update androidx navigation libraries
* add similar media to MediaFragment
* parse similar media in AoDParser

Reviewed-on: #28
Co-Authored-By: Jannik <seil0@mosad.xyz>
Co-Committed-By: Jannik <seil0@mosad.xyz>
2021-02-06 19:02:12 +01:00
67c1e2bfdc
minor clean up 2021-01-21 20:31:15 +01:00
373f5c56c9
rework the about fragment 2021-01-21 19:53:16 +01:00
4c5d6e6e24
add top ten to home screen & minor fixes
* use plural for runtime and episodes
* code clean up
2021-01-21 18:22:53 +01:00
c6874d0e54
move showFragment to ActivityUtils 2021-01-20 16:10:41 +01:00
8a22554846
add onboarding (login), change default theme to dark
closes #14
2021-01-16 00:16:47 +01:00
3f45d769d2
rework initial loading, don't crash on login timeout on app start
closes #25
2021-01-13 20:57:21 +01:00
7a95304ee1
fix episodes not showing, if scroll is not needed in MediaFragment 2021-01-11 22:12:21 +01:00
8e8db386a0
play new media if selected while player is in pip & minor code clean up
move some player avtivity stuff to ActivityUtils
2021-01-08 10:58:24 +01:00
86e07ba2cf
return to main activity if pip was launched before 2021-01-08 09:31:50 +01:00
e5037cf9ac
add pip support to player activity 2021-01-06 15:07:31 +01:00
e4ac01605f
fix crash after clicking on the highlight play button 2021-01-01 13:08:25 +01:00
75ecac6144
always visible next ep button fix
the always visible next ep button cloud be hidden, when playing the last ep of a tv show and changing to a previous ep via the episodes list
2021-01-01 12:15:17 +01:00
31197a5d44
minor fixes
* fix current language is set to preferred and not to actual language
* fix player episodes lists sometimes missing the play icon
2020-12-31 13:12:37 +01:00
489ef02a35
fix controls autohide not working when epsiodes list was shown
fixes #19
2020-12-30 20:08:19 +01:00
9705a752fb
don't crash if initial loading was not successful 2020-12-30 14:18:04 +01:00
7a5f90cb82
don't initialize exoplayer, if view model exists and player is ready
this prevents the media being reloaded, when the app is moved to the background and to the foreground again
2020-12-28 20:45:52 +01:00
800c2a144c
polish player episodes list ui
closes #16
2020-12-28 20:17:11 +01:00
6bec0512ba
minor player fixes
* fix exoplayer access on wrong thread
* fix remaining time calculation sometimes failed
2020-12-27 20:41:18 +01:00
b3ce43c614
release player in PlayerVIewModel onCleared()
this fixes playback after the activity has been destroyed, while being in background
2020-12-27 20:31:18 +01:00
7845770067
Clean up PlayerActivity and PlayerViewModel
* use Local instead of streamURL to save selected language, this allows nextEp/ selected Eps to use previously selected language
* hide episodes button, if media is a movie
2020-12-27 20:11:01 +01:00
94da8c6cee
player language settings [Part 2]
* move player object to PlayerViewModel
* minor code clean up
2020-12-26 20:09:35 +01:00
8a43567737
rework how different streams/languages per episode are handled
* potentially support more than 2 streams
* part of language settings in player
2020-12-26 14:39:35 +01:00
8f60a30d61
improve media parsing / loadStreams()
* fix #20, return 0 as episode number on NumberFormatException
* don't crash if a episode can not be parsed
* update material components: 1.3.0-alpha04 -> 1.3.0-beta01
2020-12-26 11:32:09 +01:00
00699aaec7
add language settings to player [Part 1] 2020-12-20 20:21:27 +01:00
bba642e9e3
use a random new title, if highlights is empty 2020-12-18 17:23:04 +01:00