Commit Graph

41 Commits

Author SHA1 Message Date
AntsyLich f1d1f6c466 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

(cherry picked from commit d8fb6b893f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/recent/updates/UpdatesPresenter.kt
#	app/src/main/sqldelight/migrations/18.sqm
2022-07-19 12:37:26 -04:00
Andreas d8042f7182 Use Flow in ExtensionManager and SourceManager (#7547)
- Replace ExtensionManager relay and observable with Flow
- Inverse SourceManager dependency
    - SourceManager observers ExtensionManager flow
- Separate SourceData from SourceRepository as it created a circular dependency

(cherry picked from commit 35ec593658)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
2022-07-16 20:09:33 -04:00
Jobobby04 dd68ef4ba8 Remove drag and drop 2022-07-16 19:49:46 -04:00
Jobobby04 36461b52c0 Fix inconsistencies with Manga.create() 2022-07-15 11:50:06 -04:00
Jobobby04 3b6ce209be Fix chapter flags 2022-07-15 11:38:56 -04:00
Jobobby04 141b0477e7 Use domain layer for saved searches 2022-07-04 18:10:43 -04:00
Andreas 22da633ee3 Cleanup data layer (#7450)
(cherry picked from commit 069bd90c0f)

# Conflicts:
#	app/src/main/sqldelight/data/mangas.sq
2022-07-03 16:41:43 -04:00
Andreas ea38ffc53e Use SQLDelight for all Manga related queries (#7447)
(cherry picked from commit 17951cfd68)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/DomainModule.kt
#	app/src/main/java/eu/kanade/domain/manga/repository/MangaRepository.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DbExtensions.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DbProvider.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/ChapterTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaCategoryTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/RawQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterProgressPutResolver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/LibraryMangaGetResolver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFlagsPutResolver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/CategoryTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/ChapterTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/MangaCategoryTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/MangaTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-07-03 15:58:26 -04:00
Jobobby04 d88c769d3b Use SQLDelight for more SY specific things 2022-07-03 13:37:27 -04:00
Jobobby04 664f9b1484 Use SQLDelight for most SY specific things 2022-07-02 23:52:03 -04:00
Andreas 9093663f2f Use SQLDelight for all Chapter related queries (#7440)
(cherry picked from commit 29633b64aa)

# Conflicts:
#	app/src/main/java/eu/kanade/data/chapter/ChapterRepositoryImpl.kt
#	app/src/main/java/eu/kanade/domain/chapter/repository/ChapterRepository.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/ChapterQueries.kt
#	app/src/main/sqldelight/data/chapters.sq
2022-07-02 20:46:01 -04:00
Andreas 2c87a8fd02 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>
(cherry picked from commit 05085fe57f)

# Conflicts:
#	app/src/main/java/eu/kanade/data/manga/MangaRepositoryImpl.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/CategoryQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/TrackQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-02 19:10:26 -04:00
Andreas 42ecd912e8 Use SQLDelight on Updates screen (#7423)
(cherry picked from commit 1f10b79ee8)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/RawQueries.kt
2022-07-02 13:38:36 -04:00
AntsyLich afe15d8256 Fix crash when adding if there are more then 1 dupe (#7405)
(cherry picked from commit 0969226fd3)
2022-06-28 10:04:02 -04:00
AntsyLich 6f407f6e0a Use sqldelight for direct db calls in MangaPresenter (#7366)
(cherry picked from commit 04f0ca7846)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-06-26 16:03:51 -04:00
Ivan Iskandar 2b7aca710e MangaController overhaul (#7244)
(cherry picked from commit 33a778873a)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/LibraryManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChapterHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersSettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/widget/MangaSummaryView.kt
#	app/src/main/res/layout-sw720dp/manga_info_header.xml
#	app/src/main/res/layout/manga_controller.xml
#	app/src/main/res/layout/manga_info_header.xml
#	app/src/main/res/layout/manga_summary.xml
#	app/src/main/res/menu/manga.xml
2022-06-25 17:11:25 -04:00
AntsyLich 14a57b7d4d Use sqldelight in migration (#7331)
* Use sqldelight in migration

* Some more changes

Co-Authored-By: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>

* Review Changes

* Review changes 2

* Review Changes 3

* Review Changes 4

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit e3b1053c03)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-06-25 11:32:09 -04:00
arkon 4ca4484362 Migrate duplicate manga check to SQLDelight
Extracted from #7244

Co-authored-by: ivaniskandar <ivaniskandar@users.noreply.github.com>
(cherry picked from commit 9f66c85281)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-06-19 21:24:07 -04:00
Jobobby04 cd4b6a0c27 Build fixes and minor improvements 2022-06-18 19:27:26 -04:00
Ivan Iskandar a5fe4e1a44 Fix cover fetching in compose views (#7315)
Make sure it passed thru the custom fetcher

(cherry picked from commit 1b804e61cb)

# Conflicts:
#	app/src/main/java/eu/kanade/data/history/HistoryMapper.kt
#	app/src/main/java/eu/kanade/domain/history/model/HistoryWithRelations.kt
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
2022-06-18 19:26:33 -04:00
Andreas cbb201d63d Use SQLDelight on Category screen (#7310)
* Use SQLDelight on Category screen

* Include category name in DuplicateNameException

(cherry picked from commit 017f6b22f0)

# Conflicts:
#	app/src/main/sqldelight/data/categories.sq
2022-06-16 12:05:40 -04:00
AntsyLich 8a06bc42d8 Maintain source info in the database. (#6389)
* Maintain Source Info in database

* Review changes and cleanups

* Review changes 2

* Review Changes 3

(cherry picked from commit 9d5b7de1d8)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/DomainModule.kt
#	app/src/main/java/eu/kanade/presentation/browse/MigrateSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
2022-06-16 12:02:38 -04:00
Andreas 70c2f97976 Use SQLDelight in Backup/Restore (#7295)
* Use SQLDelight in Backup/Restore

* Use CoroutineWorker

(cherry picked from commit fd5da2de3a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/AbstractBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupRestore.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/BackupCategory.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/BackupManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/HistoryQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/model/SManga.kt
#	app/src/main/sqldelight/data/categories.sq
#	app/src/main/sqldelight/data/chapters.sq
2022-06-14 11:13:53 -04:00
AntsyLich f7ccbd24f8 Fix chapter list live update (#7296)
(cherry picked from commit b96686e6ad)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-06-12 12:44:34 -04:00
AntsyLich e3f577a6e2 Update manga metadata on library update with sqldelight (#7293)
Co-Authored-By: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit 5bb78eb77f)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaLastUpdatedPutResolver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
2022-06-12 12:20:07 -04:00
Jobobby04 cf79a406bf Improve metadata queries 2022-06-11 13:19:41 -04:00
AntsyLich d1d9c53af3 Make syncChaptersWithSource use sqldelight (#7263)
* Make `syncChaptersWithSource` use sqldelight

Will break chapter list live update on current ui

Co-Authored-By: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>

* Review Changes

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit 120943a8b3)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/AbstractBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterSourceSync.kt
#	app/src/main/sqldelight/data/mangas.sq
2022-06-11 12:51:49 -04:00
arkon c4def072f6 Convert clear database queries to SQLDelight
(cherry picked from commit e15a867106)

# Conflicts:
#	app/src/main/java/eu/kanade/data/source/SourceRepositoryImpl.kt
#	app/src/main/java/eu/kanade/domain/DomainModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/RawQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/database/ClearDatabasePresenter.kt
2022-06-11 12:20:29 -04:00
Jobobby04 8f868c0813 Fix auto-downloading for merged manga 2022-06-04 11:59:29 -04:00
Andreas cd1972f4cd feat: add read last read chapter shortcut (#7230)
Supersedes #6861

Co-authored-by: Pierre-Monier <65488471+Pierre-Monier@users.noreply.github.com>

Co-authored-by: Pierre-Monier <65488471+Pierre-Monier@users.noreply.github.com>
(cherry picked from commit 4560033e66)
2022-06-03 19:10:32 -04:00
arkon 2ae1b6ac3e Replace history query with actual upsert
(cherry picked from commit cd0294b1b6)
2022-05-29 18:44:41 -04:00
AntsyLich f0fb91b84b Reader: Save reading progress with SQLDelight (#7185)
* Use SQLDelight in reader to update history

* Move chapter progress to sqldelight

* Review Changes

Co-Authored-By: inorichi <len@kanade.eu>

* Review Changes 2

Co-authored-by: FourTOne5 <59261191+FourTOne5@users.noreply.github.com>
Co-authored-by: inorichi <len@kanade.eu>
(cherry picked from commit 809da49301)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-05-29 18:38:40 -04:00
FourTOne5 c24f134b28 Add option to reset viewer flags (#7062)
* Add option to reset viewer flags

* Review Changes

* Run `resetViewerFlags()` content with `launchIO`

(cherry picked from commit 08fb2fe467)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
2022-05-14 10:48:57 -04:00
Andreas 204ba71a65 Fix migrations (#7051)
(cherry picked from commit 609f552c8d)

# Conflicts:
#	app/src/main/sqldelight/migrations/12.sqm
2022-05-01 16:57:33 -04:00
Andreas 6eaeec3a48 Migrate Migrate Manga screen to Compose (#7045)
* Migrate Migrate Manga screen to Compose

* Changes from review comments

(cherry picked from commit bf6d59cd21)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrationMangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrationMangaHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrationMangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
2022-05-01 16:00:18 -04:00
Andreas ca3574690b Use Compose in Migrate tab (#7008)
* Use Compose in Migrate tab

* Add missing header

* Remove unused files

* Fix build after rebase

* Changes from review comments

(cherry picked from commit 7261fcccda)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/DomainModule.kt
#	app/src/main/java/eu/kanade/presentation/source/SourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrationSourcesController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrationSourcesPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/SelectionHeader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/SourceAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/SourceHolder.kt
#	app/src/main/res/layout/source_main_controller_item.xml
2022-05-01 14:58:53 -04:00
Jobobby04 c9ec7921a5 Revert "Revert history Compose/SQLDelight changes"
This reverts commit 6a0b523e86.
2022-04-22 19:40:09 -04:00
Jobobby04 6a0b523e86 Revert history Compose/SQLDelight changes 2022-04-22 19:27:15 -04:00
Andreas 5c9f98bff1 Add indexes to creational tables (#6974)
(cherry picked from commit b4981058a2)
2022-04-22 19:21:09 -04:00
Jobobby04 4a115785eb Add SY specific queries to sqldelight files 2022-04-22 19:16:48 -04:00
Andreas a8cb77cc7e Migrate History screen database calls to SQLDelight (#6933)
* Migrate History screen database call to SQLDelight

- Move all migrations to SQLDelight
- Move all tables to SQLDelight

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

* Changes from review comments

* Add adapters to database

* Remove logging of database version in App

* Change query name for paging source queries

* Update migrations

* Make SQLite Callback handle migration

- To ensure it updates the database

* Use SQLDelight Schema version for Callback database version

Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>
(cherry picked from commit b1f46ed830)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DbOpenCallback.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/HistoryQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/CategoryTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/MangaTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/database/ClearDatabasePresenter.kt
#	build.gradle.kts
2022-04-22 10:08:31 -04:00