The previous approach would always throw an Exception because
`SimpleDateFormat.format()` expects the input to be of type `Date` or
`Number`, not `String`.
(cherry picked from commit 97c81fadb426d71ac99c9443ab0e89f4089046ef)
* Backup/Restore Extension Repos
* Refactor
* Moving to Under App Settings
* Sort by URL, Check existing by SHA and Error Logging
Untested. Currently in a lecture and can't test if the changes really work.
* Changes to logic
* Don't ask me what's happening here
* Renaming Variables
* Fixing restoreAmount & changes to logic
Co-Authored-By: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
---------
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 31263084eca3ba98624d258a317d53094bba2256)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreator.kt
# app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupOptions.kt
# app/src/main/java/eu/kanade/tachiyomi/data/backup/models/Backup.kt
# app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt
# app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/RestoreOptions.kt
* Improve error message if restoring from JSON file
* Replace Exception with IOException
* Use more generic error message if protobuf fails
* fix lint
(cherry picked from commit de8ef6dad7c89afb7041ccb489d68539a4849cb5)
* Fix unsupported mime type error when saving images
Avoid using platform mime type map to get extensions as it may not have
all mime types we support.
* Fix jxl images downloading/reading
(cherry picked from commit daa47e049327c4d8b1fe4724ed1b84897d81fcf2)
# Conflicts:
# core/common/src/main/kotlin/tachiyomi/core/common/util/system/ImageUtil.kt
Non-dynamic themes need to be updated
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit 1df87eabf2b301cf6fc60cfa5f9391756984b790)
# Conflicts:
# app/src/main/java/eu/kanade/presentation/reader/ReaderPageActionsDialog.kt
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit e473c7f09fc009161145aca94bd70027f042b0bf)
# Conflicts:
# app/src/main/java/eu/kanade/presentation/browse/components/GlobalSearchResultItems.kt
# app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
- Extension being marked as not installed instead of untrusted after updating with private installer
- Extension update counter not updating due to extension being marked as untrusted
- Minimize `Key "extension-XXX-YYY" was already used` crash
(cherry picked from commit 21145144cdf550aa775047603e06e261951ebc42)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
* chore: don't log the access token from google.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
* chore: don't log the access token from google.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
* chore: forgot to add sy stuff.
The customInfo and readEntries wasn't taken into account, so when it was disabled it will always sync it because it's true by default in BackupOptions.kt. Should be fixed and now it doesn't reset the check mark.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
* fix: same device sync.
When same device is initiating the sync just update the remote that.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
* refactor: throw early.
When there is network failure or any sort during downloading just throw exception and stop syncing.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
* refactor(gdrive): stream the json.
People with over 3k library can't sync because we are hitting OOM ```java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Failed to allocate a 370950192 byte allocation with 25165824 free bytes and 281MB until OOM, target footprint 333990992, growth limit 603979776```. This should fix that for them but only gdrive.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
* feat: a demo for sync with new api
* refactor: perform early null checks
* feat: restore even if push failed
* feat: switch to protobuf
* chore: show error notification when sync fails.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
* fix: update order by merge
* fix: call pushSyncData twice
---------
Signed-off-by: KaiserBh <kaiserbh@proton.me>
Co-authored-by: Cologler <skyoflw@gmail.com>
* Work in progress upcoming feature
* Checkpointing WIP upcoming feature
* Functional Upcoming Screen
* Rename UpdateCalendar to UpdateUpcoming
* Converted Strings to resources
* Cleanup
* Fixed detekt issues
* Removed Link icon per @AntsyLich's suggestion.
* Detekt
* Fixed Calendar display on wide form factor devices
* Added Key to upcoming lazycolumn
* Updated tablet mode UI to support two column view
* Updated header creation logic
* Updated header creation logic... again
* Moved stray string to resources
* Fixed PR Comments and query refactor
* Tweaks to query, refactored to flow, comments on calendar
* Switched to Date Formatter
* Cleaned up date formatter
* More Refactor work
* Updated Calendar to support localized week formats
* Fixed year format
* Refactored Header animation
* Moved upcoming FAQ
* Completed YearMonth Migration
* Replaced currentYearMonth with delegate
* Even more cleanup
* cleaned up alignment modifiers
* Click Handler and other refactors
* Removed Wrapped Content Height/Size/extra clips
* Huge Refactor for CalendarDay
* Another cleanup attempt
* Migrated to new mihon.feature.* module pattern
* changed access modifier
* A Bunch of changes from the next round of reviews
* Cleanups
* Cleanup 2
---------
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 72222ad86d6fb328d20eead86c6357833d08c061)
# Conflicts:
# app/src/main/java/eu/kanade/domain/DomainModule.kt
# gradle/libs.versions.toml