Commit graph

769 commits

Author SHA1 Message Date
lzyhenniu
e95ab8c4bf chore(translate): (Chinese (Simplified))
Currently translated at 100.0% (189 of 189 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/zh_Hans/
2023-05-19 08:27:50 +02:00
Ido
bde25f0826 chore(translate): (Hebrew)
Currently translated at 94.7% (179 of 189 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/he/
2023-05-16 21:27:51 +02:00
Rogério Mendes
f49665e28f chore(translate): (Portuguese (Brazil))
Currently translated at 100.0% (189 of 189 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/pt_BR/
2023-05-16 21:27:50 +02:00
Mario
7d5dca2b4c chore(translate): (Spanish)
Currently translated at 100.0% (189 of 189 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/es/
2023-05-16 21:27:50 +02:00
Jarne Demeulemeester
92c8314a6c
build: bump versionCode to 19 and versionName to 0.11.1 2023-05-14 19:46:20 +02:00
Jarne Demeulemeester
1c117d3c66
fix: catch NullPointerException in BaseItemDto to FindroidEpisode conversion
This error is caused by the seriesId or seasonId being null. Hide these episodes for now.

Closes #357
Closes #360
2023-05-14 18:39:35 +02:00
Jarne Demeulemeester
fd33d52bba
feat: add product flavors libre and huawei
Huawei requires a different app icon. They don't like the Android Robot :(
2023-05-14 18:32:46 +02:00
Jarne Demeulemeester
24faa1d9e3
fix: update fragment_add_server with policy text 2023-05-14 18:14:51 +02:00
Jarne Demeulemeester
b37532268c
chore: add privacy policy notice on AddServerFragment
This is required by Huawei... But I see no reason to not show it on any version.
2023-05-14 18:00:32 +02:00
Jarne Demeulemeester
8000601cab
fix: string format issue 2023-05-14 17:15:42 +02:00
Adorján
2e59d45cff chore(translate): (Hungarian)
Currently translated at 98.3% (184 of 187 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/hu/
2023-05-14 16:29:43 +02:00
Yash Garg
7d86f46fa3
feat: show movie size in extra info and improve size formatting (#367) 2023-05-14 16:29:40 +02:00
Pysta
815e338ddc chore(translate): (Slovak)
Currently translated at 100.0% (186 of 186 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/sk/
2023-05-14 11:19:34 +02:00
NeroPcStation
5c843adcd0 chore(translate): (Polish)
Currently translated at 100.0% (5 of 5 strings)

Translation: Findroid/player:video
Translate-URL: https://weblate.jdtech.dev/projects/findroid/playervideo/pl/
2023-05-14 11:19:34 +02:00
NeroPcStation
ef41247864 chore(translate): (Polish)
Currently translated at 100.0% (186 of 186 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/pl/
2023-05-14 11:19:34 +02:00
Yash Garg
69e3afc426
feat: add per app language for devices running Android 13+ (#353) 2023-05-14 11:19:31 +02:00
renovate[bot]
ac88455a35
fix(deps): update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.5.1 (#366)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-14 10:59:25 +02:00
renovate[bot]
3894846ada
chore(deps): update hilt to v2.46.1 (#365)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-14 10:58:07 +02:00
Yash Garg
1ac65ae817
fix: amoled theme not taking M3 colors (#362)
* fix: amoled theme not taking M3 colors

* fix: ktlint issue in `JellyfinRepositoryOfflineImpl`
2023-05-13 21:56:46 +02:00
renovate[bot]
28bcd492b9
fix(deps): update dependency androidx.core:core-ktx to v1.10.1 (#355)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-13 21:54:48 +02:00
Jarne Demeulemeester
219d0c033a
refactor: remove unused StorageViewModel and StorageItem 2023-05-13 21:49:48 +02:00
Jarne Demeulemeester
b816a2d460
perf: only request stream url when preparing player items 2023-05-13 21:34:05 +02:00
jarnedemeulemeester
765a31838e
fix: info text overlapping in movie and show fragments
Closes: #358
2023-05-13 11:27:24 +02:00
NickSkier
9bbf73d59c chore(translate): (Russian)
Currently translated at 100.0% (5 of 5 strings)

Translation: Findroid/player:video
Translate-URL: https://weblate.jdtech.dev/projects/findroid/playervideo/ru/
2023-05-12 02:27:51 +02:00
newton181
e2be590f0f chore(translate): (Spanish)
Currently translated at 100.0% (5 of 5 strings)

Translation: Findroid/player:video
Translate-URL: https://weblate.jdtech.dev/projects/findroid/playervideo/es/
2023-05-12 02:27:51 +02:00
NickSkier
bc6c1d4db2 chore(translate): (Russian)
Currently translated at 100.0% (186 of 186 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/ru/
2023-05-12 02:27:51 +02:00
newton181
6b83c6352d chore(translate): (Spanish)
Currently translated at 100.0% (186 of 186 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/es/
2023-05-12 02:27:50 +02:00
newton181
82f368a6cc chore(translate): (Spanish (Mexico))
Currently translated at 82.2% (153 of 186 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/es_MX/
2023-05-12 02:27:50 +02:00
newton181
1d1a45fcd5 chore(translate): (Spanish (Latin America))
Currently translated at 100.0% (186 of 186 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/es_419/
2023-05-12 02:27:50 +02:00
jarnedemeulemeester
82bbfee0a4
fix: text overflowing into "View all"
Closes #354
2023-05-11 17:22:15 +02:00
jarnedemeulemeester
9a3ed38fe6
feat: implement search for offline mode
Also fixes the crash when searching in offline mode
2023-05-11 17:11:55 +02:00
Jarne Demeulemeester
fa43b42b0d
fix: library fragment not navigating to collection (box set) 2023-05-11 00:46:01 +02:00
Weblate
2c32d318d8 Update translation files
Updated by "Remove blank strings" hook in Weblate.

Translation: Findroid/player:video
Translate-URL: https://weblate.jdtech.dev/projects/findroid/playervideo/
2023-05-11 00:27:51 +02:00
Weblate
1de8f4ffba Update translation files
Updated by "Remove blank strings" hook in Weblate.

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/
2023-05-11 00:27:50 +02:00
Mario
7a9796428b chore(translate): (Spanish)
Currently translated at 80.0% (4 of 5 strings)

Translation: Findroid/player:video
Translate-URL: https://weblate.jdtech.dev/projects/findroid/playervideo/es/
2023-05-11 00:27:50 +02:00
Rogério Mendes
e5a0cbefc9 chore(translate): (Portuguese (Brazil))
Currently translated at 100.0% (186 of 186 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/pt_BR/
2023-05-11 00:27:50 +02:00
Mario
00b34e38a7 chore(translate): (Spanish)
Currently translated at 97.3% (181 of 186 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/es/
2023-05-11 00:27:50 +02:00
Jarne Demeulemeester
6ed68f6b6e
build: bump versionCode to 18 and versionName to 0.11.0 2023-05-09 20:11:55 +02:00
jarnedemeulemeester
986c120806
lint: fix indent 2023-05-09 08:25:45 +02:00
renovate[bot]
f02f639ce9
fix(deps): update dependency dev.jdtech.mpv:libmpv to v0.1.2 (#351)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-09 00:01:23 +02:00
jarnedemeulemeester
8a96588a88
fix: show indexNumberEnd 2023-05-08 23:51:31 +02:00
Rogério Mendes
f074bb6e3c chore(translate): (Portuguese (Brazil))
Currently translated at 100.0% (184 of 184 strings)

Translation: Findroid/core
Translate-URL: https://weblate.jdtech.dev/projects/findroid/core/pt_BR/
2023-05-08 17:27:50 +02:00
Jarne Demeulemeester
22ac4bed49
fix: add okhttp proguard rules 2023-05-07 16:36:31 +02:00
renovate[bot]
3744a38246
fix(deps): update dependency com.google.android.material:material to v1.9.0 (#350)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-07 16:30:15 +02:00
renovate[bot]
1155596e20
chore(deps): update aboutlibraries to v10.6.3 (#349)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-07 16:26:07 +02:00
renovate[bot]
499c83816c
chore(deps): update android-plugin to v8.0.1 (#348)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-07 16:24:11 +02:00
renovate[bot]
b0583b8c7f
chore(deps): update hilt to v2.46 (#346)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-07 16:21:15 +02:00
renovate[bot]
18d2eb788b
fix(deps): update dependency org.jellyfin.sdk:jellyfin-core to v1.4.2 (#345)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-07 16:14:12 +02:00
renovate[bot]
e8ad4d1dca
chore(deps): update kotlin monorepo to v1.8.21 (#344)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-07 16:11:29 +02:00
Jarne Demeulemeester
00c84fa9d5
Items and downloads rework (#329)
* refactor WIP: stop using `BaseItemDto` but use custom items specific to Findroid

This will make it easier to support downloaded items

* refactor: split `MediaInfoFragment` into `MovieFragment` and `ShowFragment`

* feat: add download icons to items

* feat WIP: download movies

* feat: download movie and play local file

* fix: remove `VideoVersionDialogFragment` from `ShowFragment`

* feat: select which version you want to download

* feat: delete downloaded movie

* feat: download progress indicator

* refactor: rename JellyfinItems to FindroidItems

* feat: offline mode (movies only)

* feat: offline mode card

* feat: download external files

* feat: toggle played on downloads

* feat: convert intros to `FindroidIntro`

* refactor: add itemId and sourceId to external downloaded subtitle filenames

* refactor: simplify `onMediaItemTransition`

* refactor: clean up some player item logic

* feat: download trickPlay data

* refactor: downloading of item to only require the item and a source id

* fix: external subtitle title

* feat: add `DownloadsFragment`

* feat: download episodes

* fix: cascade deletion if last item

* feat: download intro timestamps

* feat WIP: add storage activity

* feat: user data in separate table

* feat: add buttons to season fragment

* fix: improve responsiveness of the watched and favorite buttons

* fix: move `ic_database.xml` to main

* perf: optimize home fragment by limiting the number of items

* fix: database improvements

- use compound primary key for FindroidUserDataDto instead of id
- set played to false when playback percentage is below 90%
- capitalize SQL keywords
- update favorite in userdata
- set primary key of TrickPlayManifestDto to itemId
- prepare to sync data back to server

* feat: sync playback progress

This includes playback position, played and favorite

* fix: use non-transitive r classes

* lint: ktlint fix

* refactor: centralize item buttons in `item_actions.xml`

* feat: show intermediate progress when progress is less than 5

Also remove delete button from item_actions.xml

* feat: remove intros

* feat: check available storage space before downloading

* fix: trailer button

* refactor: make indexNumberEnd nullable

* feat: add offline mode toggle in settings

* fix: download over mobile data and roaming

* feat: immediately show spinner when tapping download

* revert: season fragment buttons

* feat: snackbar in downloads fragment

This snackbar is displayed when there is no connection to the server but the app is not in Offline Mode (Offline Mode is required to play content when the server is unavailable)

* refactor: make onReceive arguments non nullable

* fix: handle download finished / failed when BroadcastReceiver does not work

* fix: download multiple episodes

* feat: download to external storage (SD card)

* fix: reset download button when dialog is dismissed

* feat(offline): show "continue watching" episodes on home

* fix: watch progress bar on episode item in season

* feat(offline): next up items

* lint: fix some linting issues

* lint: fix some linting issues

* lint: fix some linting issues

* feat: remove StorageActivity

StorageActivity is not ready yet and out of scope for this PR

* fix: collection types that are not known crash the media fragment

* fix: downloading trick play data

* fix: sort downloaded items

* fix: navigate back if item is deleted instead of showing error

Navigate back based on NullPointerException in loadData method of viewmodels. This may not be the best approach but it works well enough.

Navigating back from BottomSheetFragment does not trigger onResume of previous fragment which in turn does not refresh its contents.

* fix: play from local storage instead of server when downloaded

* fix: missing items

* fix: `SyncWorker` using the app JellyfinApi instance instead of it's own

* fix: only show downloaded items when navigating from `DownloadsFragment`

* fix: make chips horizontal scrollable

* feat: migrate database (retain) and downloads (wipe)

Also add indexes on seriesId and seasonId

* fix: remove temp testing in downloadsMigrated

* lint: fix some linting issues

* fix: add error handling to downloading item

* feat: add "Preparing download" dialog to make sure the user waits for the download to start

* refactor: first show dialog then start downloading

* fix: add error handling to user configuration in `PlayerViewModel`

* feat: allow downloads to be cancelled

* fix: "View details" is cut off when text is too long

* lint: fix indent
2023-05-07 16:05:40 +02:00