Commit graph

33 commits

Author SHA1 Message Date
Cuong-Tran
d33efced68
refactor(network-to-local): simplify networkToLocalManga (#910) 2025-05-14 15:14:25 +07:00
Cuong-Tran
3310784faf
chore(network-local-manga): Reintroduce (in-memory) fast browsing (#909)
* measure time

* Revert "Revert "Fast browsing (#612)""

This reverts commit d23130b317.

* Fix networkToLocal for bulk-selection selectAll/reverseSelection

* fix comments
2025-05-13 23:18:01 +07:00
Cuong-Tran
fa7b18590e
Allow migrate mangas when using Bulk-favorite (#824)
* Combine ChangeMangaCategoryDialog

* Allow migrating a single manga when using Bulk-favorite

* Allow migrating mangas one by one when using Bulk-favorite

* set visibility

* Fix duplicate toggleSelection after migration

* After migration, continue adding favorites if there are more to bulk-favorite or push new Manga screen if it's a single manga being added by long-click

* fix usage of ChangeMangaCategory

* improve toggleSelection code

* refactoring ChangeMangasCategory

* switch LocalNavigator.currentOrThrow to current

* split composable to `presentation`

* hoisting the state to a common parent composable

* Fix migration dialog dismissed when clicking on Show entry

* Don't push new Manga screen after migration of duplicated entries everywhere
2025-04-09 11:42:43 +07:00
Cuong-Tran
d89180fb10
Combine Bulk-favorite's dialogs into one reusable compose 2025-04-07 21:22:56 +07:00
Cuong-Tran
28fae3657a
Bulk-favorite fully uses new multi-Duplicate dialog 2025-04-06 22:45:32 +07:00
Cuong-Tran
d23130b317
Revert "Fast browsing (#612)"
Also bring back selectAll/selectReverse on BulkSelection

This reverts commit 5fc9e202e8
and f37a7b1580
and 7e16b56911.
2025-04-05 23:20:31 +07:00
Cuong-Tran
c7c76d22dd
Support RecommendsScreen even if MangaDex/Comick is not installed 2025-01-24 17:15:59 +07:00
Cuong-Tran
7e16b56911
Fast browse for RecommendsScreen & remove bulk-selection on it 2025-01-24 03:34:50 +07:00
Jobobby04
24f7d133f7
Minor cleanup
(cherry picked from commit 456db526538d67773ee939850fa435d52d785a29)
2025-01-24 03:07:15 +07:00
Cuong-Tran
c643d8a55b
Add bulk-selection & improve display mode in RecommendsScreen 2025-01-24 03:06:59 +07:00
Tim Schneeberger
7b30a2a10f
feat: unify recommendation screens and add more sources (jobobby04/TachiyomiSY#1376)
* feat(recommendations): add mangaupdates.com support

* feat(recommendations): display all tracker recommendation sources

* refactor(recommendations): apply spotless

* refactor: split RecommendationPagingSources

* feat(recommendations): unify MangaDex & community recommendations

* refactor: remove old screen

* fix: update comment

* style: fix formatting

* refactor: move onClick handlers

* fix: handle external recommendation links correctly

* fix: apply spotless

* feat: add comick recommendation source

* fix: mark recs from comick as not initialized to force fetching missing metadata

* Update app/src/main/java/exh/recs/BrowseRecommendsScreen.kt

---------

Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
(cherry picked from commit d80ad3f145868f9c79bc6d94c08ed847c650e6d6)
2025-01-24 03:06:59 +07:00
Cuong-Tran
5fc9e202e8
Fast browsing (#612)
* BrowseTab: serialized data object must have readResolve

* simplify usage of bulk-selection select-all/reverse

* hide bulk-selection select-all/reverse

* fast browsing by avoid insert every entries into DB
2024-12-31 11:52:04 +07:00
Cuong-Tran
aa336aecf1
move SourceUtil from exh to matching with upstream 2024-12-30 11:59:45 +07:00
AntsyLich
21bdefb4ce
Fix loading screen not appearing when changing query in browser screen
Fixes #mihonapp/mihon1438
Closes #mihonapp/mihon1441

(cherry picked from commit 9aef08c333397caa4b897514cf76966592d3849c)
2024-11-21 02:06:19 +07:00
AntsyLich
8be6eff7b2
Cleanup some code
(cherry picked from commit 2f4bb7cadb0297492cfb21393e75ca276e0539d7)
(cherry picked from commit ee81c3e905)
2024-11-21 02:06:19 +07:00
Cuong-Tran
3610f4a6f2
Revert "Cleanup some code"
This reverts commit ee81c3e905.
2024-11-08 22:29:37 +07:00
AntsyLich
ee81c3e905
Cleanup some code
(cherry picked from commit 2f4bb7cadb0297492cfb21393e75ca276e0539d7)
2024-11-04 12:53:52 +07:00
Cuong-Tran
b99389d2d0
bulk-selection: reverse selection 2024-10-23 13:08:40 +07:00
Cuong-Tran
a40385554c
show loading indicator while bulk-selection is running 2024-10-23 13:08:23 +07:00
Cuong-Tran
43852b8b79
feat(ui): Improve navigation flow when click on manga's source 2024-06-24 18:41:25 +07:00
Cuong M. Tran
bdd8a652c2
A dedicated screen for related entries, fetching directly from sources
* Faster loading of related entries

* Enable fetching related entries from site's entry page (things like "More like this", "Recommendations" etc.)

* Improve & fix bugs of algorithm looking for related entries

(cherry picked from commit 54d91c3f71557becd4fc22ec8500e05f79dc48d8)
2024-05-19 02:52:52 +07:00
Cuong Tran
f6be3a494c
BulkSelection: “Select all” for all screens
(cherry picked from commit bddcc089df738e23331b351cc20c8425cb316c74)
2024-04-26 12:44:49 +07:00
Jobobby04
8b4caf11c3
Reduce build warnings 2024-04-26 11:35:15 +07:00
Jobobby04
95250670dc
Fix multiple issues regarding sources loading too late 2024-03-29 11:56:12 +07:00
Cuong Tran
f22fea2702
Bulk-selection favorite
- Bulk selection to add to library & change categories of multiple entries all at once, everywhere.
- It can detect duplication being added and give option to allow/skip one by one or allow/skip all duplication.
- Also allow long-click to add/remove single entry to/from library, everywhere.
- It supports default category.

commit 7bca814a8d8481af148fbbe72a6e43623c701356
Merge: 3ee4f35aa 67534b391
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sun Mar 10 14:26:29 2024 +0700

    Merge branch 'feature/bulk-favorite' into develop

commit 67534b391ffad5a6586fb1c18394b25afc3b432d
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sun Mar 10 14:24:00 2024 +0700

    reuse method to add/remove single manga

commit f24b528c45b49286430286da6fc93a05c2917aa4
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sun Mar 10 13:58:14 2024 +0700

    reuse bulkSelectionButton as AppBar.Action

commit d026241d9b742f6acf64d0090a9e6e7be53923c6
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sun Mar 10 13:26:46 2024 +0700

    reuse Dialog composer

commit 7eb23481926ec981bece2e2e9ced87c795ef4eb8
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sun Mar 10 07:20:58 2024 +0700

    fix detekt

commit 9643b9d834257836300b69bcb95cd587a38e34e0
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sun Mar 10 00:07:18 2024 +0700

    fix: won’t show dialog if skip all then selection list is empty

commit 7faafe9fb440175dcac065bc2963ba3637d10d38
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sat Mar 9 23:58:46 2024 +0700

    no need using builder to create AppBarAction

commit 5564b366eb879407510a733128c26a73ad8d6f2e
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Sat Mar 9 18:26:58 2024 +0700

    add BulkSelection to the rest of Migrate, MangaDex…

commit 804bbb3943463298ae0b6eec33c9d3457b2891c9
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Sat Mar 9 17:40:42 2024 +0700

    migrate the rest to BulkSelectionScreenModel

commit 8e82fc1e87e1e246b7b676ba0fe7ef0c5bf1d016
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Sat Mar 9 11:00:40 2024 +0700

    separate BulkSelection into standalone BulkFavoriteScreenModel

commit 94a127b94d67841339ebdc674e398144e515cd14
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Mar 7 13:18:35 2024 +0700

    improve: toggle selection mode when last item is unselected

commit ba0009409637f872f37ac407041f937c3afceda8
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Mar 7 13:00:31 2024 +0700

    renovate code

commit 2d92ff9181297cfe795149968fdcd7e898852792
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Mar 7 12:25:27 2024 +0700

    Feat: allow long click to favorite on GlobalSearch

commit a24bb06a2a66dcd473c50728b04dc4d6118d0085
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Mar 7 11:45:48 2024 +0700

    Bulk favorite for GlobalSearchScreen & MigrateSearchScreen

commit 1d844ac74e356a43211c752442cb4279aea30b6f
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Mar 7 11:29:58 2024 +0700

    renovate: move SelectionToolbar to its own component

commit 62cb90d74c2bde7f7e824de277a3bf6e0256cadc
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Mar 7 09:26:40 2024 +0700

    Fix: Won’t try call favorite if none selected

commit d2ef151c95a4432eddd3848b8e2e102dfd683681
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Wed Mar 6 18:27:54 2024 +0700

    Allow/Skip one by one

commit 5e138f701ed66b6c18ae1c7a9d58dae482c211e0
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Wed Mar 6 15:42:21 2024 +0700

    Allow skip duplicates

commit 9ac7a0e393d5aa78d77afde307263a85c8fa051c
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Wed Mar 6 14:24:52 2024 +0700

    Bulk selection mode for BrowseSourceScreen

commit 9749adca106c3fb911d1b6808f000f9e16008585
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Wed Mar 6 14:06:12 2024 +0700

    rename

commit 4b5e5105976ca3e488979b93043530a678a36e9c
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Wed Mar 6 12:34:01 2024 +0700

    Bulk selection for SourceFeedScreen

commit 7775c65af0fd957d020acbccd2bb42073ebcba11
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Wed Mar 6 12:21:55 2024 +0700

    Use topBar action to add favorite instead of bottomBar

    some minor name changes

commit 66417b7adffede1c92e1dbd75b2eac0cc8b9a13c
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Tue Mar 5 16:32:21 2024 +0700

    Allow bulk-favorite default category

commit 0870a9db3c1986c5ccab641bc77b8a0a9cf47017
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Tue Mar 5 15:40:02 2024 +0700

    Hide BottomNav when in selection mode

commit 3865c6d467ca0c63be5b387fcac9e9be5a096125
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Tue Mar 5 15:35:58 2024 +0700

    Selection:

    * Clear selection after set Favorite
    * Keep selection when editing categories

commit e01a5c5d35f226133d15b7ed800688bf442885bc
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Tue Mar 5 15:25:34 2024 +0700

    Allow add to favorite even when no category available

commit a4556058c86801eaabf7bbfae58cdc40af95f467
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Mon Mar 4 18:30:44 2024 +0700

    Set Favorite & Libraries OK now

commit 7e045cb23b2d6da58f0f71f9edcf0c2a2fc60038
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Fri Mar 1 16:40:32 2024 +0700

    handle back button

commit 8e3915431e0d461d45c34fa0ca9188bbdc074203
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Fri Mar 1 16:09:00 2024 +0700

    shade for selected items

commit d89b7bffb5161498bd9e7ebfd26aa3731e808361
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Fri Mar 1 14:33:32 2024 +0700

    Toggle and toolbar count

commit 1ea3a4c5496ca0d002fdbafde2ce913fd28c1987
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Feb 29 18:36:57 2024 +0700

    selection list & toggleSelection/clearSelection
2024-03-10 16:53:40 +07:00
arkon
2e1c83442e Move more components to presentation-core module
(cherry picked from commit 10d734950659ce5e6ede82a98b89be107912f927)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrationMangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/category/CategoryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/home/HomeScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
2023-03-05 18:00:20 -05:00
arkon
5f9743223d Use unique keys for all screens to avoid crashes
Fixes #9008
Fixes #9110

(cherry picked from commit 3f7911235c595fe6925e8e22c0c64a368700066e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrationMangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/home/HomeScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
2023-03-05 17:44:35 -05:00
arkon
148268571e Start moving some Compose components to presentation-core module
(cherry picked from commit e3cf8632305283468a5e8366a257d6d6880ca1a6)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMainScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/SourcePreferencesScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2023-03-05 16:03:12 -05:00
arkon
ce67eb9de3 Move more models to domain module
(cherry picked from commit 345e9c2a9a61f1f3b814db52eddbb42681499854)

# Conflicts:
#	app/src/main/java/eu/kanade/data/manga/MangaMapper.kt
#	app/src/main/java/eu/kanade/domain/chapter/interactor/SyncChaptersWithSource.kt
#	app/src/main/java/eu/kanade/domain/chapter/model/ChapterFilter.kt
#	app/src/main/java/eu/kanade/domain/history/interactor/GetNextChapters.kt
#	app/src/main/java/eu/kanade/domain/library/service/LibraryPreferences.kt
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/presentation/browse/MigrateSearchScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceDialogs.kt
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/history/HistoryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterGetNextUnread.kt
2023-02-09 13:44:38 -05:00
Ivan Iskandar
b89c2f76a1 Fix BrowseSourceScreen list/grid unnecessary reloads (#8661)
(cherry picked from commit 7be9b49143d4634478e42e245f927226ea762237)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
2022-12-03 17:35:26 -05:00
Ivan Iskandar
726626f2c5 Merge Voyager screens (#8656)
* Merge Voyager screens

* cleanups

(cherry picked from commit 3d66eaea8373b6ab5d8e8423be227e0452cb0743)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/components/MangaBottomActionMenu.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/AboutScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/changehandler/OneWayFadeChangeHandler.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/controller/ConductorExtensions.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesFilterController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/category/CategoryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/download/DownloadController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/WhatsNewDialogController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreTab.kt
#	app/src/main/res/layout/main_activity.xml
2022-12-03 13:25:41 -05:00
Jobobby04
07c7ec972d Move SmartSearchConfig around 2022-12-03 00:19:24 -05:00
Ivan Iskandar
6402258c83 Use Voyager on BrowseSource and SourceSearch screen (#8650)
Some navigation janks will be dealt with when the migration is complete

(cherry picked from commit 94d1b68598692cc0ef981e2dfbf12303fa962f63)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceComfortableGrid.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceCompactGrid.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceList.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceFilterSheet.kt
2022-12-01 13:58:51 -05:00