From 8f07c2d99a79fe3a2c38bf5ccfb5400e99a8d931 Mon Sep 17 00:00:00 2001 From: Ahmad Ansori Palembani Date: Mon, 17 Jun 2024 19:46:36 +0700 Subject: [PATCH] fix: Just wrap it with if statement The last fix somehow reverted the other fix, awesome! --- .../tachiyomi/data/database/models/Manga.kt | 35 ++++++++++--------- .../java/yokai/data/manga/SMangaExtensions.kt | 17 --------- 2 files changed, 19 insertions(+), 33 deletions(-) delete mode 100644 app/src/main/java/yokai/data/manga/SMangaExtensions.kt diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt index 9b5c1b7228..e15ab3418a 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt @@ -12,14 +12,9 @@ import eu.kanade.tachiyomi.ui.reader.settings.ReadingModeType import eu.kanade.tachiyomi.util.manga.MangaCoverMetadata import uy.kohesive.injekt.Injekt import uy.kohesive.injekt.api.get -import yokai.data.manga.originalArtist -import yokai.data.manga.originalAuthor -import yokai.data.manga.originalDescription -import yokai.data.manga.originalGenre -import yokai.data.manga.originalStatus import java.util.* -// TODO: Transform into data class +// TODO: Transform into data class interface Manga : SManga { var id: Long? @@ -58,18 +53,26 @@ interface Manga : SManga { author?.contains(artist ?: "", true) == true fun copyFrom(other: SManga) { - author = other.originalAuthor ?: author - - artist = other.originalArtist ?: artist - - description = other.originalDescription ?: description - - genre = other.originalGenre ?: genre - - status = other.originalStatus - thumbnail_url = other.thumbnail_url ?: thumbnail_url + if (other.author != null) { + author = if (other is Manga) other.originalAuthor else other.author + } + + if (other.artist != null) { + artist = if (other is Manga) other.originalArtist else other.artist + } + + if (other.description != null) { + description = if (other is Manga) other.originalDescription else other.description + } + + if (other.genre != null) { + genre = if (other is Manga) other.originalGenre else other.genre + } + + status = if (other is Manga) other.originalStatus else other.status + update_strategy = other.update_strategy if (!initialized) { diff --git a/app/src/main/java/yokai/data/manga/SMangaExtensions.kt b/app/src/main/java/yokai/data/manga/SMangaExtensions.kt deleted file mode 100644 index bfa9869708..0000000000 --- a/app/src/main/java/yokai/data/manga/SMangaExtensions.kt +++ /dev/null @@ -1,17 +0,0 @@ -package yokai.data.manga - -import eu.kanade.tachiyomi.data.database.models.MangaImpl -import eu.kanade.tachiyomi.source.model.SManga - -val SManga.originalTitle: String - get() = (this as? MangaImpl)?.ogTitle ?: title -val SManga.originalAuthor: String? - get() = (this as? MangaImpl)?.ogAuthor ?: author -val SManga.originalArtist: String? - get() = (this as? MangaImpl)?.ogArtist ?: artist -val SManga.originalDescription: String? - get() = (this as? MangaImpl)?.ogDesc ?: description -val SManga.originalGenre: String? - get() = (this as? MangaImpl)?.ogGenre ?: genre -val SManga.originalStatus: Int - get() = (this as? MangaImpl)?.ogStatus ?: status