diff --git a/app/src/main/java/eu/kanade/data/manga/MangaRepositoryImpl.kt b/app/src/main/java/eu/kanade/data/manga/MangaRepositoryImpl.kt index d6df6ef82..614ee30a4 100644 --- a/app/src/main/java/eu/kanade/data/manga/MangaRepositoryImpl.kt +++ b/app/src/main/java/eu/kanade/data/manga/MangaRepositoryImpl.kt @@ -55,9 +55,9 @@ class MangaRepositoryImpl( return handler.subscribeToList { mangasQueries.getFavoriteBySourceId(sourceId, mangaMapper) } } - override suspend fun getDuplicateLibraryManga(title: String, sourceId: Long): Manga? { + override suspend fun getDuplicateLibraryManga(title: String): Manga? { return handler.awaitOneOrNull { - mangasQueries.getDuplicateLibraryManga(title, sourceId, mangaMapper) + mangasQueries.getDuplicateLibraryManga(title, mangaMapper) } } diff --git a/app/src/main/java/eu/kanade/domain/manga/interactor/GetDuplicateLibraryManga.kt b/app/src/main/java/eu/kanade/domain/manga/interactor/GetDuplicateLibraryManga.kt index 7193ed368..02e7a4fc3 100644 --- a/app/src/main/java/eu/kanade/domain/manga/interactor/GetDuplicateLibraryManga.kt +++ b/app/src/main/java/eu/kanade/domain/manga/interactor/GetDuplicateLibraryManga.kt @@ -7,7 +7,7 @@ class GetDuplicateLibraryManga( private val mangaRepository: MangaRepository, ) { - suspend fun await(title: String, sourceId: Long): Manga? { - return mangaRepository.getDuplicateLibraryManga(title.lowercase(), sourceId) + suspend fun await(title: String): Manga? { + return mangaRepository.getDuplicateLibraryManga(title.lowercase()) } } diff --git a/app/src/main/java/eu/kanade/domain/manga/repository/MangaRepository.kt b/app/src/main/java/eu/kanade/domain/manga/repository/MangaRepository.kt index c741e70c5..a610f8626 100644 --- a/app/src/main/java/eu/kanade/domain/manga/repository/MangaRepository.kt +++ b/app/src/main/java/eu/kanade/domain/manga/repository/MangaRepository.kt @@ -23,7 +23,7 @@ interface MangaRepository { fun getFavoritesBySourceId(sourceId: Long): Flow> - suspend fun getDuplicateLibraryManga(title: String, sourceId: Long): Manga? + suspend fun getDuplicateLibraryManga(title: String): Manga? suspend fun resetViewerFlags(): Boolean diff --git a/app/src/main/java/eu/kanade/presentation/components/DuplicateMangaDialog.kt b/app/src/main/java/eu/kanade/presentation/components/DuplicateMangaDialog.kt index 06e6fd9e4..6c416716d 100644 --- a/app/src/main/java/eu/kanade/presentation/components/DuplicateMangaDialog.kt +++ b/app/src/main/java/eu/kanade/presentation/components/DuplicateMangaDialog.kt @@ -9,14 +9,12 @@ import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import eu.kanade.tachiyomi.R -import eu.kanade.tachiyomi.source.Source @Composable fun DuplicateMangaDialog( onDismissRequest: () -> Unit, onConfirm: () -> Unit, onOpenManga: () -> Unit, - duplicateFrom: Source, ) { AlertDialog( onDismissRequest = onDismissRequest, @@ -46,12 +44,7 @@ fun DuplicateMangaDialog( Text(text = stringResource(R.string.are_you_sure)) }, text = { - Text( - text = stringResource( - id = R.string.confirm_manga_add_duplicate, - duplicateFrom.name, - ), - ) + Text(text = stringResource(R.string.confirm_add_duplicate_manga)) }, ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt index 373f52329..4ff8164ec 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt @@ -264,7 +264,6 @@ data class BrowseSourceScreen( onDismissRequest = onDismissRequest, onConfirm = { screenModel.addFavorite(dialog.manga) }, onOpenManga = { navigator.push(MangaScreen(dialog.duplicate.id)) }, - duplicateFrom = screenModel.getSourceOrStub(dialog.duplicate), ) } is BrowseSourceScreenModel.Dialog.RemoveManga -> { diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt index a165c635d..5ecb8efda 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt @@ -48,7 +48,6 @@ import eu.kanade.tachiyomi.data.track.EnhancedTrackService import eu.kanade.tachiyomi.data.track.TrackManager import eu.kanade.tachiyomi.data.track.TrackService import eu.kanade.tachiyomi.source.CatalogueSource -import eu.kanade.tachiyomi.source.Source import eu.kanade.tachiyomi.source.SourceManager import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.online.MetadataSource @@ -366,10 +365,6 @@ open class BrowseSourceScreenModel( } } - fun getSourceOrStub(manga: Manga): Source { - return sourceManager.getOrStub(manga.source) - } - fun addFavorite(manga: Manga) { coroutineScope.launch { val categories = getCategories() @@ -439,7 +434,7 @@ open class BrowseSourceScreenModel( } suspend fun getDuplicateLibraryManga(manga: Manga): Manga? { - return getDuplicateLibraryManga.await(manga.title, manga.source) + return getDuplicateLibraryManga.await(manga.title) } fun moveMangaToCategories(manga: Manga, vararg categories: Category) { diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt index 0c5a764c2..9412abf2e 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt @@ -230,7 +230,6 @@ class MangaScreen( onDismissRequest = onDismissRequest, onConfirm = { screenModel.toggleFavorite(onRemoved = {}, checkDuplicate = false) }, onOpenManga = { navigator.push(MangaScreen(dialog.duplicate.id)) }, - duplicateFrom = screenModel.getSourceOrStub(dialog.duplicate), ) MangaInfoScreenModel.Dialog.SettingsSheet -> ChapterSettingsDialog( onDismissRequest = onDismissRequest, diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt index 709ebf797..eacd0049e 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt @@ -128,11 +128,11 @@ class MangaInfoScreenModel( private val libraryPreferences: LibraryPreferences = Injekt.get(), private val uiPreferences: UiPreferences = Injekt.get(), private val trackManager: TrackManager = Injekt.get(), - private val sourceManager: SourceManager = Injekt.get(), private val downloadManager: DownloadManager = Injekt.get(), private val downloadCache: DownloadCache = Injekt.get(), private val getMangaAndChapters: GetMangaWithChapters = Injekt.get(), // SY --> + private val sourceManager: SourceManager = Injekt.get(), private val readerPreferences: ReaderPreferences = Injekt.get(), private val getManga: GetManga = Injekt.get(), private val setMangaFilteredScanlators: SetMangaFilteredScanlators = Injekt.get(), @@ -701,7 +701,7 @@ class MangaInfoScreenModel( // Add to library // First, check if duplicate exists if callback is provided if (checkDuplicate) { - val duplicate = getDuplicateLibraryManga.await(manga.title, manga.source) + val duplicate = getDuplicateLibraryManga.await(manga.title) if (duplicate != null) { mutableState.update { state -> @@ -1465,10 +1465,6 @@ class MangaInfoScreenModel( // Track sheet - end - fun getSourceOrStub(manga: Manga): Source { - return sourceManager.getOrStub(manga.source) - } - sealed class Dialog { data class ChangeCategory(val manga: Manga, val initialSelection: List>) : Dialog() data class DeleteChapters(val chapters: List) : Dialog() diff --git a/app/src/main/java/exh/md/follows/MangaDexFollowsScreen.kt b/app/src/main/java/exh/md/follows/MangaDexFollowsScreen.kt index efe177ef9..feb195144 100644 --- a/app/src/main/java/exh/md/follows/MangaDexFollowsScreen.kt +++ b/app/src/main/java/exh/md/follows/MangaDexFollowsScreen.kt @@ -97,7 +97,6 @@ class MangaDexFollowsScreen(private val sourceId: Long) : Screen { onDismissRequest = onDismissRequest, onConfirm = { screenModel.addFavorite(dialog.manga) }, onOpenManga = { navigator.push(MangaScreen(dialog.duplicate.id)) }, - duplicateFrom = screenModel.getSourceOrStub(dialog.duplicate), ) } is BrowseSourceScreenModel.Dialog.RemoveManga -> { diff --git a/app/src/main/sqldelight/data/mangas.sq b/app/src/main/sqldelight/data/mangas.sq index 52ef769d2..e78e5b1da 100644 --- a/app/src/main/sqldelight/data/mangas.sq +++ b/app/src/main/sqldelight/data/mangas.sq @@ -71,7 +71,6 @@ SELECT * FROM mangas WHERE favorite = 1 AND LOWER(title) = :title -AND source != :source LIMIT 1; resetViewerFlags: diff --git a/i18n/src/main/res/values/strings.xml b/i18n/src/main/res/values/strings.xml index e00f19b03..89ebdeded 100755 --- a/i18n/src/main/res/values/strings.xml +++ b/i18n/src/main/res/values/strings.xml @@ -626,7 +626,7 @@ Remove from library Unknown title - You have an entry in your library with the same name but from a different source (%1$s).\n\nDo you still wish to continue? + You have an entry in your library with the same name.\n\nDo you still wish to continue? Added to library Removed from library More