Commit Graph

329 Commits

Author SHA1 Message Date
1af82f8370
update playheads on season change
updated playheads are needed for the "completed ep" indicator
2022-03-30 20:12:04 +02:00
d31a19a4f1
update fastlane metadata 2022-03-30 00:05:20 +02:00
e76cbda04d
fix Onboarding not working; fix deprecation in Activity.hideBars() 2022-03-29 23:23:10 +02:00
7fbf639a70
add metadb support for crunchyroll
also remove gson snice it's unused now
2022-03-29 22:39:16 +02:00
ff63b3d7a4
update gradle wrapper & core-splashscreen
* wrapper 7.3.3 -> 7.4.1
* core-splashscreen 1.0.0-beta01 -> 1.0.0-beta02
2022-03-29 22:39:02 +02:00
7d32cecd89
hide unused dev settings 2022-03-20 12:56:01 +01:00
72280f29d8
add option to disable playhead updates/reporting 2022-03-20 12:38:49 +01:00
cd4cfb7a0c
update libraries & targetSdk; use core-splashscreen for splashscreen
* targetSdk 30 -> 31
* core-ktx 1.6.0 -> 1.7.0
* appcompat 1.3.1 -> 1.4.1
* constraintlayout 2.1.0 -> 2.1.3
* navigation-fragment-ktx 2.3.5 -> 2.4.1
* navigation-ui-ktx 2.3.5 -> 2.4.1
* lifecycle-runtime-ktx 2.3.5 -> 2.4.1
* lifecycle-viewmodel-ktx 2.3.5 -> 2.4.1
* material 1.4.0 -> 1.5.0
2022-03-19 22:09:47 +01:00
0ea2e5ee97
update version to 1.0.0-beta1 2022-03-19 20:38:23 +01:00
a092c5b8be
fix mosad/NonePublicIssues#1 2022-03-19 20:14:16 +01:00
ab660d0ae7
Show season number in MediaFragment 2022-03-19 13:10:36 +01:00
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
f100b4abf3
fix proguard for changes in 7491e7fd93056569a823b292483a114300ca86fb 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
d417181b70
update kotlin, gradle & libraries
* kotlin 1.5.21 -> 1.5.30
* gradle wrapper 7.0.2 -> 7.2
* gradle agp 7.0.0 -> 7.0.1
* constraintlayout 2.0.4 -> 2.1.0
2021-08-29 15:02:40 +02:00
9df5be003b
update agp, kotlin, appcompat and exoplayer
* agp 4.2.2 -> 7.0.0
* kotlin 1.5.20 -> 1.5.21
* appcompat 1.3.0 -> 1.2.1
* exoplayer 1.14.1 -> 1.14.2
2021-08-15 00:39:17 +02:00
cf3b1802d5
update kotlin coroutines
1.5.0 -> 1.5.1
2021-07-10 20:37:02 +02:00
4de97ca42e
version 0.4.2 2021-07-09 18:54:44 +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
3fcd1a96b2
update kotlin, some libs & agp
* kotlin 1.5.10 -> 1.5.20
* core-ktx 1.5.0 -> 1.6.0
* material-components-android 1.3.0 -> 1.4.0
2021-07-03 13:45:59 +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
0decf317d9
remove some unneeded resources 2021-06-06 18:06:59 +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
46e3d1f1b6
don't use "save" when selecting the media language, use "apply" instead 2021-06-04 00:18:33 +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
8160641b8f
update exoplayer and gradle wrapper
* exoplayer 2.13.2 -> 2.13.3
* gradle 6.7.1 -> 7.0
* remove jcenter repository (fixes #29)
2021-04-17 21:38:03 +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
e8ab11d5ff
version 0.4.1 2021-03-13 22:17:25 +01: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
7a2f3ad265
update some libraries
* coroutines-android 1.4.2 -> 1.4.3
* androidx.navigation 2.3.3 -> 2.3.4
2021-03-11 18:25:28 +01:00
06770559ee
version 0.4.0 2021-03-04 20:35:11 +01:00
1a9de4124d
minor pip mode fixes 2021-03-04 20:19:54 +01:00
6cc59a72fc
don't exclude player from history
Previously it was possible to exit the player without going into pip mode and having no option to open this player activity again.
2021-03-02 14:52:46 +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
fad64ad385
update exoplayer to version 2.13.1 2021-02-21 13:59:23 +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
f342d1a3f4
udpate some libraries
* kotlin 1.4.21 -> 1.4.30
* material components 1.3.0-rc01 -> 1.3.0
* glide 4.11.0 -> 4.12.0
2021-02-06 23:01:14 +01:00
b02fadaa89
fix unchecked single choice button in theme dialog beeing white 2021-02-06 22:45:28 +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
70aafb1a14
update gradle plugin to 4.1.2 2021-01-21 19:57:01 +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
a740ccfee1
update libs
* exoplayer 2.12.2 -> 2.12.3
* material components 1.3.0-beta01 -> 1.3.0-rc01
2021-01-16 00:22:31 +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
1efc108bd7
version 0.3.0 2020-12-31 13:43:57 +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
04893060e4
add episodes list to player [Part 2] 2020-12-15 23:15:14 +01:00
6fc7bb2c1e
add episodes list to player [Part 1] 2020-12-14 23:46:55 +01:00
ab180ddd89
add new simulcasts and new titles to home screen
* simulcasts and new titles
* update some libraries
* don't crash if AoDPraser fails to parse mediaId
2020-12-11 10:54:40 +01:00
98636d326e
make sure highlighted media has a valid mediaId
this also prevents non media from showing as highlights
2020-12-07 17:50:10 +01:00
6775a4da2e
show AoD highlights on home fragment 2020-12-06 15:18:15 +01:00
a390bc9686
update exoplayer to version 2.12.2 2020-12-05 22:17:54 +01:00
82bf34e4cb
update theme colors to better reflect material design guidelines
* dark primary: #000000 -> #121212
2020-12-05 21:51:12 +01:00
e34e5b2bbd
replace licenses dialog and about dialog with about fragment 2020-12-05 21:03:14 +01:00
77e657d37c
version 0.2.1 2020-12-02 11:25:36 +01:00
20407d9cac
add permanently visible next episode button & fix autoplay
* autoplay / play next episode could sometimes skip episodes
2020-12-02 11:14:09 +01:00
dbd4b26a65
minor text change 2020-11-29 20:25:22 +01:00
ac5aee20de
update material components to alpha 4 2020-11-29 18:23:02 +01:00
32844223fc
minor episodes ui improvements
* show 3 lines of episode description
* episodes title: Episode xy -> Ep. xy
2020-11-28 15:09:39 +01:00
d01e87bf14
use suspending functions for coroutines when possible
* fix crash, when media is selected, but MediaFragment is removed before AoDParser could load data
2020-11-27 11:06:16 +01:00
3ed55ca3c9
fix episodes without a streaming link make AoDParser crash 2020-11-26 17:32:15 +01:00
dfaf359952
fix poster not being scaled correctly
regression from 2de1419d36
2020-11-26 17:07:33 +01:00
78d9f3cfa5
version 0.2.0 2020-11-26 15:01:19 +01:00
db5758edf9
minor code clean up 2020-11-25 23:33:06 +01:00
2de1419d36
fix theme not applying to nav bar
regression from 7df99ea0cc
2020-11-25 23:26:46 +01:00
7df99ea0cc
use view binding wherever possible 2020-11-25 22:35:55 +01:00