arkon
bff98ca768
Clean up chapter item composables a bit
...
Might help with #9043 ?
2 years ago
arkon
32b9b261f0
Rename Security settings to Security and privacy
...
Closes #9049
2 years ago
arkon
23432e4405
Prioritize finding selected chapter when deduping reader chapters
...
Fixes #9054
2 years ago
Ivan Iskandar
34a586ce48
Scaffold: Fix snackbar bottom inset ( #9052 )
2 years ago
Ivan Iskandar
ad762f8303
Remove FAB extra padding in DownloadQueueScreen ( #9053 )
2 years ago
arkon
389b039679
Update version check for library update job migration
...
Forgot to bump as part of fixing merge conflict for last commit.
2 years ago
Ivan Iskandar
ef9dacde79
Fully utilize WorkManager for library updates ( #9007 )
...
No more trampolining, and stuff.
It's pretty much straight copy-paste from the service, with
some changes related to cancellation handling. Manual updates
will also runs with workman job so auto update work
scheduling need some adjustments too.
Bumped version code to re-enqueue auto update job with the
new spec.
Co-authored-by: arkon <arkon@users.noreply.github.com>
2 years ago
0x7673
13bb45b4be
Fix crash in library when selected category is deleted ( #9044 )
2 years ago
Two-Ai
bd2cb97179
Replace RxJava in DownloadQueue ( #9016 )
...
* Misc cleanup
- Replace !List.isEmpty with List.isNotEmpty
- Remove redundant case in MoreScreenModel
- Drop no-op StateFlow.catch
- From lint warning:
> SharedFlow never completes, so this operator typically has not
> effect, it can only catch exceptions from 'onSubscribe' operator
* Convert DownloadQueue queue to MutableStateFlow
Replace delegation to a MutableList with an internal
MutableStateFlow<List>.
In order to avoid modifying every usage of the queue as a list, add
passthrough functions for the currently used list functions. This
should be later refactored, possibly by inlining DownloadQueue
into Downloader.
DownloadQueue.updates was a SharedFlow which updated every time a
change was made to the queue. This is now equivalent to the queue
StateFlow.
Simultaneous assignments to _state.value could cause concurrency
issues. To avoid this, always modify the queue using _state.update.
* Add Download.statusFlow/progressFlow
progressFlow is based on the DownloadQueueScreenModel implementation
rather than the DownloadQueue implementation.
* Reimplement DownloadQueue.statusFlow/progressFlow
Use StateFlow<List<T>>.flatMapLatest() and List<Flow<T>>.merge() to
replicate the effect of PublishSubject.
Use drop(1) to avoid re-emitting the state of each download each time
the merged flow is recreated.
* fixup! Reimplement DownloadQueue.statusFlow/progressFlow
2 years ago
stevenyomi
0d8f1c8560
Tweak Response.parseAs() to utilize intrinsics ( #9047 )
2 years ago
arkon
477e3d9b94
Release v0.14.4
2 years ago
arkon
3c16082636
Don't show SourceNotInstalledException name in error snackbar
2 years ago
arkon
29aee68ec7
Revert "Show no pinned sources message when attempting to migrate/search"
...
This reverts commit 6bb3070c57
.
This doesn't quite work correctly, so reverting for now.
We'll have to have more robust states or something to deal with this in the
future.
2 years ago
arkon
75e23299b4
Bump desugaring libs
2 years ago
Weblate (bot)
935ff1ee98
Translations update from Hosted Weblate ( #8960 )
...
Weblate translations
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/ar/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/de/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/es/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/fa/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/fr/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/gl/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/hr/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/id/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/ko/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/nl/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/pl/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/pt/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/th/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/uk/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/zh_Hans/
Translation: Tachiyomi/Tachiyomi 0.x
Co-authored-by: Abou <aboozar.gh.r@gmail.com>
Co-authored-by: Alba Paz <albapazpi@gmail.com>
Co-authored-by: Ali Aljishi <ahj696@hotmail.com>
Co-authored-by: Blue <bluestuffish@gmail.com>
Co-authored-by: Dan <denqwerta@gmail.com>
Co-authored-by: FTDaily <farrell05june2005@gmail.com>
Co-authored-by: Gabriel Lebis <gableb@hotmail.fr>
Co-authored-by: J. Lavoie <j.lavoie@net-c.ca>
Co-authored-by: Lyfja <yassinelaoud@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Shippo <Shipox@users.noreply.hosted.weblate.org>
Co-authored-by: Swyter <swyterzone@gmail.com>
Co-authored-by: The Ghost <marcc2018@gmail.com>
Co-authored-by: ZiomaleQ <r.partyka30@gmail.com>
Co-authored-by: altinat <altinat@duck.com>
Co-authored-by: jinu147 <nesqea20@gmail.com>
Co-authored-by: stevenlele <stevenlele@outlook.com>
2 years ago
renovate[bot]
c672cb81ec
Update dependency com.android.tools.build:gradle to v7.4.1 ( #9024 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2 years ago
stevenyomi
7559c133c0
Call.await(): copy exception message when preserving error stack ( #9013 )
2 years ago
stevenyomi
589bdba0b1
Show exception class in snackbar message ( #9006 )
...
* Show exception class in snackbar message
* omit IOException too
2 years ago
Two-Ai
aca65f13bb
Misc Service cleanup ( #9005 )
...
* Simplify DownloadService wake lock handling
_isRunning is only modified in onCreate/onDestroy, so the listener
job is redundant.
* Drop superclass calls to Service.onCreate/onDestroy
From https://developer.android.com/guide/components/services
> Note: Unlike the activity lifecycle callback methods, you are not
> required to call the superclass implementation of these callback
> methods.
2 years ago
renovate[bot]
7bf30a094a
Update dependency androidx.compose.material:material to v1.4.0-alpha05 ( #8997 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2 years ago
renovate[bot]
5454279a8e
Update dependency com.google.android.material:material to v1.8.0 ( #8999 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2 years ago
renovate[bot]
006bcdf934
Update dependency androidx.core:core-ktx to v1.10.0-alpha02 ( #8998 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2 years ago
Andreas
b00f00730d
Set InsertPage status to Ready ( #9001 )
...
Fixes insert page just loading
2 years ago
arkon
f2c48480b6
Move some interactors to domain module
2 years ago
arkon
1730dd6af1
Move more things around
2 years ago
Andreas
2501fef9e4
Split UpdatesGridGlanceWidget into smaller bits ( #8991 )
...
- Renamed Composables
- Moved Constants to core module
2 years ago
Andreas
12e41b6e6f
Move Glance Widget to seperate module ( #8989 )
...
Move Widget to seperate module
- Create a core module for presentation. Widget and App will share some resources and hopefully composables
2 years ago
beerpsi
c892c793a8
[BackupRestorer] Handle uncompressed backups ( #8988 )
...
[Backups] Handle uncompressed backups
2 years ago
Two-Ai
3a82b4d924
Don't crash on timeout in renewCache() ( #8986 )
...
Fixes #8962 .
withTimeout throws a TimeoutCancellationException if the timeout
expires. To avoid crashing renewalJob when there are no extensions,
use withTimeoutOrNull which does not throw on timeout.
2 years ago
Two-Ai
b4b3a4d286
Fixup HttpPageLoader _loadPage ( #8984 )
...
Fixup for e4bc8990
(#8955 )
HttpSource.fetchImage() uses Call.asObservableSuccess(), which
cancels the call on unsubscribe. This causes the call to be cancelled
before it is used, leading to a "java.net.SocketException: Socket is
closed" when trying to use the response in putImageToCache().
To fix this, use Call.awaitSuccess() via a new HttpSource.getImage()
suspending function. This addition to source-api is only intended for
app use, so it will not be added to the extensions-api stubs.
2 years ago
stevenyomi
448702e5be
OkHttp Call: split await() and awaitSuccess() ( #8980 )
2 years ago
Two-Ai
2ef1f07aae
Replace PageLoader.getPage() with PageLoader.loadPage() ( #8976 )
...
* Follow page status via StateFlow
Keep getPage subscription since it's needed to load the pages
* Replace PageLoader.getPage with PageLoader.loadPage
2 years ago
stevenyomi
1a319601de
Fix extension search query cursor and debounce ( #8972 )
...
* Fix extension search query cursor
* debounce
* extract debounce constant
2 years ago
Andreas
cdf242e8c8
Move more to data and domain modules ( #8973 )
2 years ago
Andreas
aee785a8bb
Move more implementation to data module ( #8971 )
2 years ago
arkon
d45fc1e245
Move more models to domain module
2 years ago
arkon
14500ba4f8
Move more repositories to domain module
2 years ago
arkon
345e9c2a9a
Move more models to domain module
2 years ago
arkon
b53e24e0db
Move more models to domain module
2 years ago
Andreas
d3a73fc228
Move Category `model` and `repository` to domain and data layer ( #8967 )
...
To keep the commit from being 100+ files the interactors wasn't moved.
The domain module like the data module uses `tachiyomi` instead of `eu.kanade.tachiyomi` for package names
2 years ago
renovate[bot]
c2812fca24
Update sqldelight to v1.5.5 ( #8966 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2 years ago
renovate[bot]
856847a60a
Update dependency io.github.fornewid:material-motion-compose-core to v0.10.4 ( #8964 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2 years ago
renovate[bot]
748e2480d3
Update dependency com.google.gms:google-services to v4.3.15 ( #8963 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2 years ago
arkon
2ebc8d9ae5
Save current page state on configuration change
...
Fixes #8881
The actual issue is that the ViewModel migration actually differs between what the current `init` block
and previous `onSave` methods did; where the `init` block does not get triggered on saving the
instance on config changes.
Not entirely sure why onSaveInstanceState was explicitly avoided for config changes before, but we
just do it all the time now and end up updating the requestedPage with the current page.
2 years ago
zbue
e28b015580
MangaScreenModel: Make download function follow reader preference ( #8920 )
...
* Make download function more clearer in manga screen
Maybe resolves #8879
* Minor cleanup
* Minor cleanup 2
2 years ago
Two-Ai
e4bc8990fb
Replace RxJava in HttpPageLoader downloader ( #8955 )
...
* Convert downloader Observable to flow
Uses `runInterruptible` to turn the blocking call to `queue.take()`
into a cancellable call.
Flow collection is ended by cancelling the scope in `recycle`. This
means the `HttpPageLoader` can't be reused after calling `recycle`,
but this was true with the `Observable` as well.)
* Convert load Observables to suspending function
Inlining the Observables allows for some simplification of the error
handling. Behavior should be otherwise identical.
* Convert cleanup Completable to coroutine
Uses global `launchIO`, not ideal but similar to previous behavior.
Can't be scheduled on the local `scope` as this runs after `scope` is
cancelled.
2 years ago
Weblate (bot)
a179327d9d
Translations update from Hosted Weblate ( #8855 )
...
Weblate translations
Co-authored-by: Ajeje Brazorf <lmelonimamo@yahoo.it>
Co-authored-by: Alessandro Jean <alessandrojean@gmail.com>
Co-authored-by: Dan <denqwerta@gmail.com>
Co-authored-by: DarKCroX <DarKCroX@users.noreply.hosted.weblate.org>
Co-authored-by: Dexroneum <Rozhenkov69@gmail.com>
Co-authored-by: Eduard Ereza Martínez <eduard@ereza.cat>
Co-authored-by: FTDaily <farrell05june2005@gmail.com>
Co-authored-by: Giorgio Sanna <sannagiorgio1997@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: ID-86 <id86dev@gmail.com>
Co-authored-by: Kornelijus Tvarijanavičius <kornelijus@tvaria.com>
Co-authored-by: Lyfja <yassinelaoud@gmail.com>
Co-authored-by: Lzmxya <lzmxya@gmail.com>
Co-authored-by: Madddog1997 <madddog1997@gmail.com>
Co-authored-by: Marvash Magalli <antorunese96@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: M͜͡edRAM <mohammad7ram@gmail.com>
Co-authored-by: Nepx <anandabaskara@outlook.com>
Co-authored-by: Osyx <ofalkman@gmail.com>
Co-authored-by: Oğuz Ersen <oguz@ersen.moe>
Co-authored-by: Pitpe11 <giorgos2550@gmail.com>
Co-authored-by: Ricardo <contatorms7@tutamail.com>
Co-authored-by: Rostyslav Haitkulov <info@ubilling.net.ua>
Co-authored-by: Shippo <Shipox@users.noreply.hosted.weblate.org>
Co-authored-by: Swyter <swyterzone@gmail.com>
Co-authored-by: Tahsin Gökalp <tahsinsaan@gmail.com>
Co-authored-by: TheKingTermux <achmadmaulana0233@gmail.com>
Co-authored-by: Uzuki Shimamura <hzy980512@126.com>
Co-authored-by: VespreSky <mp.draw.1@googlemail.com>
Co-authored-by: Vetle Ledaal <vetle.ledaal@gmail.com>
Co-authored-by: Yurical <yurical1@outlook.com>
Co-authored-by: adkxamov <adxoff@gmail.com>
Co-authored-by: ayaao <myrgdream@gmail.com>
Co-authored-by: jinu147 <nesqea20@gmail.com>
Co-authored-by: slundi <slundi@gmail.com>
Co-authored-by: ssantos <ssantos@web.de>
Co-authored-by: stevenlele <stevenlele@outlook.com>
Co-authored-by: torchlight <sima142222@gmail.com>
Co-authored-by: Олександр Котецький <saymon4145@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/ar/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/ca/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/cs/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/de/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/el/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/es/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/fr/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/hr/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/id/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/it/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/ja/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/kk/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/ko/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/lt/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/ms/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/pt/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/ru/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/sc/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/sk/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/sr/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/sv/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/tr/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/uk/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/uz/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/tachiyomi/strings/zh_Hant/
Translation: Tachiyomi/Tachiyomi 0.x
Co-authored-by: Ajeje Brazorf <lmelonimamo@yahoo.it>
Co-authored-by: Alessandro Jean <alessandrojean@gmail.com>
Co-authored-by: Dan <denqwerta@gmail.com>
Co-authored-by: DarKCroX <DarKCroX@users.noreply.hosted.weblate.org>
Co-authored-by: Dexroneum <Rozhenkov69@gmail.com>
Co-authored-by: Eduard Ereza Martínez <eduard@ereza.cat>
Co-authored-by: FTDaily <farrell05june2005@gmail.com>
Co-authored-by: Giorgio Sanna <sannagiorgio1997@gmail.com>
Co-authored-by: ID-86 <id86dev@gmail.com>
Co-authored-by: Kornelijus Tvarijanavičius <kornelijus@tvaria.com>
Co-authored-by: Lyfja <yassinelaoud@gmail.com>
Co-authored-by: Lzmxya <lzmxya@gmail.com>
Co-authored-by: Madddog1997 <madddog1997@gmail.com>
Co-authored-by: Marvash Magalli <antorunese96@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: M͜͡edRAM <mohammad7ram@gmail.com>
Co-authored-by: Nepx <anandabaskara@outlook.com>
Co-authored-by: Osyx <ofalkman@gmail.com>
Co-authored-by: Oğuz Ersen <oguz@ersen.moe>
Co-authored-by: Pitpe11 <giorgos2550@gmail.com>
Co-authored-by: Ricardo <contatorms7@tutamail.com>
Co-authored-by: Rostyslav Haitkulov <info@ubilling.net.ua>
Co-authored-by: Shippo <Shipox@users.noreply.hosted.weblate.org>
Co-authored-by: Swyter <swyterzone@gmail.com>
Co-authored-by: Tahsin Gökalp <tahsinsaan@gmail.com>
Co-authored-by: TheKingTermux <achmadmaulana0233@gmail.com>
Co-authored-by: Uzuki Shimamura <hzy980512@126.com>
Co-authored-by: VespreSky <mp.draw.1@googlemail.com>
Co-authored-by: Vetle Ledaal <vetle.ledaal@gmail.com>
Co-authored-by: Yurical <yurical1@outlook.com>
Co-authored-by: adkxamov <adxoff@gmail.com>
Co-authored-by: ayaao <myrgdream@gmail.com>
Co-authored-by: jinu147 <nesqea20@gmail.com>
Co-authored-by: slundi <slundi@gmail.com>
Co-authored-by: ssantos <ssantos@web.de>
Co-authored-by: stevenlele <stevenlele@outlook.com>
Co-authored-by: torchlight <sima142222@gmail.com>
Co-authored-by: Олександр Котецький <saymon4145@gmail.com>
2 years ago
Andreas
823749fc1e
Move SQLDelight to data module ( #8954 )
...
And use tachiyomi instead of eu.kanade.tachiyomi for package names in the module
2 years ago
Andreas
2b5d9fd76b
Move shared configuration to subprojects in root Gradle file ( #8951 )
...
* Move shared configuration to subprojects in root Gradle file
* Missed but not forgotten
* Review changes
2 years ago
arkon
7a972dfdb7
Don't use platform attributes for white/black reader backgrounds
...
Probably fixes #8946
2 years ago