Commit Graph

625 Commits

Author SHA1 Message Date
Andreas e82963c9ef Split download preferences from PreferencesHelper (#8048) 2022-09-21 17:45:07 -04:00
Andreas c740558327 Split library preferences from PreferencesHelper (#8036) 2022-09-19 23:55:07 -04:00
arkon 0e3176a77c Clean up UpdatesController
- Move loading state into scaffold (closes #7704)
- Move logic into presenter
- Make some composables private
2022-09-18 22:38:44 -04:00
Andreas 0086743a53 Use 1.x preference abstraction (#8020)
* Use 1.x preference abstraction

- Uses SharedPreferences compared to 1.x impl which uses DataStore but it breaks all settings screens currently
- Move PreferencesHelper to new PreferenceStore
  - PreferencesHelper should be split into smaller preference stores and be in core or domain
- Remove flow preferences as new PreferenceStore handles changes for us

Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>

* Fix PreferenceMutableState not updating

* Fix changes not emitting on first subscription

Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>
2022-09-17 11:48:24 -04:00
Ivan Iskandar 6865c21c75 Fix derivedStateOf errors (#8008) 2022-09-14 11:36:13 -04:00
arkon cd3cb72b65 Bump dependencies + linting 2022-09-10 23:57:03 -04:00
Andreas cc6aef693e Merge Latest and Browse into one screen (#7921)
* Merge Latest and Browse into one

* Add back Latest button

* Change context to IO instead of launching a job

* Use loading screen when loading initial page
2022-09-03 10:16:30 -04:00
AntsyLich da95ecb686 Lessen the use of GlobalScope launchIO (#7916)
* Lessen the use of GlobalScope `launchIO`

* Wrap some calls with `NonCancellable` context
2022-09-02 11:50:44 -04:00
Andreas d4b764fa31 Use Compose on BrowseSourceScreens (#7901) 2022-08-31 14:41:35 -04:00
arkon 761635b572 Convert extension details to full Compose 2022-08-29 16:10:55 -04:00
arkon 488d8ab8cf Update chapter progress upon registering tracker (closes #7209)
Co-authored-by: Saud-97 <Saud-97@users.noreply.github.com>
2022-08-29 15:36:56 -04:00
arkon 8efb20439a Remove some usages of global scope 2022-08-29 15:15:18 -04:00
arkon 03b9950fa1 Minor tweaks to download custom dialog
- Allow large decrements (just goes to 0)
- Use Material3 text field for proper theming
- Move dialog composable to presentation package
2022-08-26 09:16:26 -04:00
Andreas 2453d1a886 Move a few Dialogs to Compose (#7861)
* Move a few Dialogs to Compose

- Separating dialogs that are not needed in the PR for the move to Compose on the Browse Source screen
- ChangeMangaCategoriesDialog and AddDuplicateMangaDialog will be removed in the Browse Source screen PR

* Review changes
2022-08-26 08:57:28 -04:00
stevenyomi e36e9d9d5c Remove 1.x source models (#7781) 2022-08-18 14:07:13 -04:00
Ivan Iskandar aab5a56892 MangaFullCoverDialog: Use the new image picker when available (#7740) 2022-08-13 13:25:48 -04:00
AntsyLich 11f640cfee Change return value of SyncChaptersWithSource.await() (#7715)
* Change return value of `SyncChaptersWithSource.await()`

`updatedToAdd.subtract(reAdded).toList()` never worked as at this point `updatedToAdd` contained ids from db where `reAdded` had default one. Was the same case before the rewrite.

Removed `toDelete` from return value as it was not being used anywhere

* Add doc string

* Use HashSet

Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>

Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>
2022-08-11 09:06:46 -04:00
arkon d6f1534ee8 Address misc. build warnings 2022-08-10 23:26:34 -04:00
arkon e511f24979 Fix crash when setting cover errors (closes #7714) 2022-08-10 16:11:12 -04:00
Ivan Iskandar f7b11f2ce9 MangaPresenter: Fix incorrect range selection (#7709) 2022-08-09 09:11:12 -04:00
Ivan Iskandar b4e15263db Fix issues related to Manga screen slow load (#7708)
* Fix back handling when manga is still loading

* MangaPresenter: Show what we have earlier to reduce percepted slowness
2022-08-09 09:10:48 -04:00
arkon 3bc6b1e202 Fix default category showing up in edit manga categories list
Also remove some usages of runBlocking
2022-08-07 11:00:51 -04:00
arkon 5e68fe4fe9 Make screen loading indicators more consistent 2022-08-05 22:33:52 -04:00
Ivan Iskandar 483b204fb5 MangaPresenter: Add distinctUntilChanged to db flow (#7629)
* MangaScreen: Disable swipe refresh on action mode

* MangaPresenter: Add distinctUntilChanged to db flow

Now will only emit update when the related entry is changed
2022-07-29 07:47:09 -04:00
Ivan Iskandar 59f8c1a288 MangaPresenter: Don't update fav state when changing categories (#7594) 2022-07-23 22:18:40 -04:00
arkon e2510c144a Misc cleanup
- Migrate sources filter screen to full compose
- Use standard "OK"/"Cancel" actions for delete category dialog
- Abstract some AppBar logic
- Remove some dead code
- Group related strings
2022-07-18 18:32:25 -04:00
Ivan Iskandar 00519e3b93 MangaScreen: Save selection state (#7560) 2022-07-18 16:42:46 -04:00
Ivan Iskandar 473dc688f0 Fix download status not updated properly after starting batch download (#7561) 2022-07-18 16:22:49 -04:00
AntsyLich d8fb6b893f Migrate Updates screen to compose (#7534)
* Migrate Updates screen to compose

* Review Changes + Cleanup

Remove more unused stuff and show confirmation dialog when mass deleting chapters

* Review Changes 2 + Rebase
2022-07-17 22:17:40 -04:00
arkon f6f5b6aeab Fix library column setting jumping in 2022-07-16 18:26:30 -04:00
arkon 2096df301d Consolidate badge components 2022-07-16 17:40:40 -04:00
AntsyLich b034f503f8 MangaPresenter: Incognito and downloaded only label related tweaks (#7535)
When manga screen takes time to load incognito and downloaded only label doesn't show up. It's fixed in the pr.
2022-07-16 16:45:05 -04:00
arkon 788583e66f Replace some usages of RxJava 2022-07-10 19:48:07 -04:00
Ivan Iskandar 634ee86bbd MangaPresenter: Always fetch chapter from source if current chapter is empty (#7507) 2022-07-10 14:29:52 -04:00
Ivan Iskandar 1551891c15 MangaScreen: Improve chapter list scrolling performance (#7491)
* MangaScreen: Improve chapter list scrolling performance

Process chapter title, date and read progress string ahead of time

* Use enum for contentType and add key
2022-07-09 16:20:40 -04:00
Ivan Iskandar e56f6c1017 ChapterDownloadIndicator: Fixes and improvements (#7485)
* Increased touch target
* Fix downloaded icon smaller than other states
* Deferred state reads to minimize recompose works
* Move things around to eliminate unnecessary elements
2022-07-09 12:38:33 -04:00
Andreas 5159eabc5d Reset lastPageRead when chapter is marked unread (#7475)
* Reset lastPageRead when chapter is marked unread

* Remove a bit of repetition in SetReadStatus
2022-07-07 22:34:58 -04:00
arkon a3378e6080 More domain model usage 2022-07-03 16:51:11 -04:00
arkon 3791d82540 More domain model usage 2022-07-03 16:34:58 -04:00
arkon 68697e59d7 More domain model usage 2022-07-03 13:46:09 -04:00
Andreas 17951cfd68 Use SQLDelight for all Manga related queries (#7447) 2022-07-03 10:17:41 -04:00
arkon 76c0ead1db Migrate to more use of domain models 2022-07-02 17:14:19 -04:00
Andreas 2674570792 Use SQLDelight for a Category related queries (#7438) 2022-07-02 16:12:06 -04:00
Andreas 05085fe57f Use SQLDelight on Library screen (#7432)
- Uses the new `asObservable` function to change the database calls to use SQLDelight, which should make the impact minimal when it comes to bugs.
- Use interactors where they already exist
- The todos are for the Compose rewrite
- Removed unused StorIO methods/queries
- Tested loading library, move manga to new category, unfavorite multiple manga, move multiple manga from one category to another, change filter, sort and display settings (with and without per category settings), (un)mark chapters, start/delete downloads

Thank Syer for asObservable

Co-authored-by: jobobby04 <17078382+jobobby04@users.noreply.github.com>

Co-authored-by: jobobby04 <17078382+jobobby04@users.noreply.github.com>
2022-07-02 12:55:34 -04:00
Andreas 1f10b79ee8 Use SQLDelight on Updates screen (#7423) 2022-06-30 22:18:12 -04:00
AntsyLich e1525a5125 DownloadProvider: Only provide necessary info and not whole chapter/manga class (#7411) 2022-06-30 09:20:55 -04:00
AntsyLich 7440086ef1 Fix Mark previous as read (#7396) 2022-06-27 09:37:30 -04:00
arkon 65264e3ef5 Migrate more track DB calls to SQLDelight 2022-06-26 19:46:41 -04:00
AntsyLich 04f0ca7846 Use sqldelight for direct db calls in MangaPresenter (#7366) 2022-06-26 15:54:34 -04:00
Ivan Iskandar 924dfa19cf MangaScreen: Fix action mode download button not working (#7385) 2022-06-26 13:37:41 -04:00