Commit graph

5167 commits

Author SHA1 Message Date
Two-Ai
35d381144d
Cleanup Preference.asHotFlow() (#9257)
* Drop duplicate initial call in Preference.asHotFlow

Preference.changes() always starts by returning the current value of
the preference, so asHotFlow calls block twice on the initial value.

Possible breaking change: As implemented, asHotFlow ran block(get())
before returning the flow. After this change, the first call to block
will run within the flow collection. This might cause concurrency
issues if the flow collection is late to execute.

* Inline Preference.asHotFlow

The Preference.changes().onEach().launchIn() pattern is used widely,
so the asHotFlow extension method is redundant.
2023-03-26 11:52:54 -04:00
stevenyomi
0bcc22822d
Simplify code in missing chapters warning (#9263) 2023-03-26 11:50:29 -04:00
arkon
1ff78173f7 Adjust missing chapters UI 2023-03-26 10:26:58 -04:00
arkon
8d7a7919a9 Add TODO to default to 32-bit color at some point
Originally proposed in #8959
2023-03-24 22:52:18 -04:00
arkon
953720472f Add "Rotate wide pages to fit" setting for paged reader
Originally authored in #7983

Co-authored-by: timothyng-164 <timothyng-164@users.noreply.github.com>
2023-03-24 22:49:35 -04:00
Felix Kaiser
f94d902bb6
Added missing chapters count in MangaInfoHeader (#9184)
* Added missing chapters count in MangaInfoHeader

* Added "Might be missing chapters"

* Added missing chapters to MangaAndSourceTitlesLarge function

* Removed comments

* Reworked getMissingChapters to countMissingChapters, moved -1 check

* Attempting detecting sub-chapters

* Moved MissingChapters to ChapterHeader; Adapted design to fit in

* Fixed block comment in one-line-element

* Fixed critical missing-chapter counting bug

* Undid unintentional & unnecessary changes

* Moved & refactored countMissingChapters

* Fixed import order; Mapping chapter object to chapterNumber

* Optimized "No (valid) chapters" detection

---------

Co-authored-by: arkon <arkon@users.noreply.github.com>
2023-03-24 22:44:58 -04:00
arkon
da25322572 Bump Compose dependencies 2023-03-23 22:19:43 -04:00
arkon
cb4699a5bb Bump dependencies 2023-03-22 22:58:42 -04:00
arkon
2e5efadf42 Rename Complications -> Overlay 2023-03-22 09:26:07 -04:00
arkon
ac0596a53d Revert "Always attempt to split tall images when downloading"
This partially reverts commit 2769525b2c.

Keeps the change to silently ignore spliting errors since it falls back to
the original images in those cases.
2023-03-20 08:45:36 -04:00
arkon
7ec5a51eb8 Move isLocal extension functions to LocalSource 2023-03-20 08:41:44 -04:00
arkon
3cca460282 Misc cleanup 2023-03-19 22:38:14 -04:00
arkon
d703fb7946 Split up ContextExtensions into smaller files 2023-03-19 18:27:30 -04:00
arkon
859601a46e Clean up WorkManager usages a bit 2023-03-19 18:19:40 -04:00
arkon
cdc160afc2 Convert BackupRestoreService to a WorkManager job
Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
2023-03-19 17:28:59 -04:00
arkon
14d1bcacc9 Show proper string in manga detail screen for SourceNotInstalledException 2023-03-19 17:23:51 -04:00
arkon
7d8a865cac Simplify some of the notification builders 2023-03-19 16:24:37 -04:00
Andreas
dfdb688b43
Migrate things to use newer data models (#9239)
* Remove old database models from Coil

* Remove old database models from TrackInfoDialogHome

* Remove old database models from Backup Manager
2023-03-19 13:11:58 -04:00
arkon
f3ca4e76a8 Re-enable ComicInfo.xml generation on download
Closes #8537
2023-03-19 13:02:38 -04:00
arkon
2769525b2c Always attempt to split tall images when downloading 2023-03-19 12:57:16 -04:00
arkon
843e748de3 Clean up library display settings tab a bit 2023-03-19 12:41:29 -04:00
Alexandr Kozlinskiy
81af97df77
BrowseSource: do networkToLocal and initializeManga inside flow (#9217)
* do networkToLocal and initializeManga inside flow

* remove BrowseSourceScreenModel.GetManga
2023-03-18 09:42:44 -04:00
Ivan Iskandar
18e55aa25f
Adjust tab indicator visual (#9219)
Now behaves like the non-compose indicator by showing the swipe progress too
2023-03-16 22:20:25 -04:00
Ivan Iskandar
4d3e13b0d1
Initialize download index disk cache (#9179) 2023-03-16 22:18:11 -04:00
arkon
47a2d06682 Refactor tracker status string mappings
Should fix #9195
2023-03-10 23:01:10 -05:00
Ivan Iskandar
c0f94ae8af
Revert "Fix banners-related issues" (#9186)
Revert "Fix banners-related issues (#9143)"

This reverts commit 63048d2f0b.
2023-03-09 22:10:49 -05:00
arkon
ed32a511e7 Bump dependencies 2023-03-08 22:52:19 -05:00
arkon
09acc53483 Remove download all chapters menu item
Users can still select all the chapters (long press + select all) to download them.
2023-03-07 22:38:27 -05:00
arkon
bebd4be43d Move more things to domain/data modules 2023-03-07 22:38:02 -05:00
arkon
9b77759f24 Use stricter visibility for composables where possible 2023-03-05 18:41:08 -05:00
arkon
e458de5e9c Add dot beside unread chapter names
Closes #4261
Also includes changes that might help with #9043
2023-03-05 17:47:27 -05:00
arkon
e917349bb7 Use Compose icons instead of drawables
Using:
- https://github.com/DevSrSouza/compose-icons
- https://github.com/DevSrSouza/compose-icons/blob/master/simple-icons/DOCUMENTATION.md
2023-03-05 15:37:41 -05:00
arkon
ad4912803b Refactor SourceManager/StubSource to domain module 2023-03-05 12:38:31 -05:00
arkon
f96f0c5889 Move some preferences into domain module 2023-03-05 12:11:47 -05:00
arkon
2b9acadc5b Move sourceMapper to data module 2023-03-05 12:05:48 -05:00
arkon
9caa0d147b Show proper message when doing global update
Fixes #9170
2023-03-05 11:07:33 -05:00
Andreas
1abf01c4a0
Convert source modules to Kotlin Multiplatform (#9172)
Use KMP in source modules 


Use KMP in source-api


Expect LocalSource
2023-03-05 10:16:19 -05:00
Two-Ai
b41565f879
Inline DownloadQueue into Downloader (#9159)
* Move statusFlow and progressFlow to DownloadManager

* Inline DownloadQueue into Downloader

* Move reorderQueue implementation to Downloader
2023-02-28 22:13:13 -05:00
arkon
f03a834136 Add explicit overflow menu options to refresh library category and manga chapters list
Jetpack Compose treats mouse input differently than just mimicking a touch input, so dragging doesn't actually
invoke the pull to refresh. If that changes in the future, we could consider removing these.

Doesn't seem too necessary for the extensions list, so I skipped that.

Closes #8455
2023-02-26 16:58:36 -05:00
arkon
f7f2072621 Use queued last chapter read number when performing delayed tracker update
Fixes #8876
2023-02-26 16:48:04 -05:00
arkon
5b2e937d5f Minor refactoring 2023-02-26 16:47:29 -05:00
Andreas
f27dc19b37
Move Local Source to separate module (#9152)
* Move Local Source to separate module

* Review changes
2023-02-26 16:16:49 -05:00
arkon
2368c50ebb Add menu shortcut to source settings in BrowseSourceScreen
Adapted from TachiyomiSY.

Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
2023-02-26 10:23:07 -05:00
Two-Ai
0505906e7a
Move all DownloadService.stop calls to Downloader (#9146)
Downloader.stop is now the sole responsible for stopping the
DownloadService. This will help cleanly removing
DownloadService.stop when migrating to coroutines.
2023-02-25 15:40:22 -05:00
arkon
4efca04765 Avoid crashing in SourcePreferencesScreen if source can't be loaded 2023-02-25 15:32:46 -05:00
arkon
b12c7cf963 Avoid crash in DeleteLibraryMangaDialog
No clue why it ever gets a -1 index though.
2023-02-25 15:29:00 -05:00
arkon
487622c592 Close source filter dialog when filtering 2023-02-25 15:16:48 -05:00
Ivan Iskandar
63048d2f0b
Fix banners-related issues (#9143)
This is most likely Compose issue so these changes will
be reevaluated when new Compose ver is out.
2023-02-25 14:44:35 -05:00
Two-Ai
79662a5866
Misc Downloader state cleanup (#9145)
* Replace Downloader CompositeSubscription with nullable Subscription

* Derive Downloader.isRunning from subscription

Also simplify usages of isRunning

* Move DownloadNotifier.paused to Downloader.isPaused

* Remove unused DownloadNotifier.errorThrown
2023-02-25 14:43:00 -05:00
Two-Ai
ed6809fa28
Simplify filter logic (#9141)
* Remove unnecessary else branch

* Add TriStateFilter applyFilter

* Simplify filterFnTracking filter logic
2023-02-25 11:46:40 -05:00