From ec1fe205adad99e2d0904ff2231e594eca95cd2c Mon Sep 17 00:00:00 2001 From: Taco Date: Tue, 26 Jan 2021 09:02:53 -0500 Subject: [PATCH] Update Okio, use more KTX stuff (#4353) * Update Okio to 2.10.0 * Use some more KTX extensions (cherry picked from commit 5f7e34b6a1cbda755db6f943a87da16cfc51e6e4) # Conflicts: # app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/CategoryTypeMapping.kt # app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaTypeMapping.kt # app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFavoritePutResolver.kt --- app/build.gradle.kts | 2 +- .../database/mappers/CategoryTypeMapping.kt | 20 +++---- .../database/mappers/ChapterTypeMapping.kt | 31 +++++----- .../database/mappers/HistoryTypeMapping.kt | 15 ++--- .../mappers/MangaCategoryTypeMapping.kt | 13 +++-- .../data/database/mappers/MangaTypeMapping.kt | 45 +++++++-------- .../data/database/mappers/TrackTypeMapping.kt | 33 +++++------ .../resolvers/ChapterBackupPutResolver.kt | 13 +++-- .../resolvers/ChapterProgressPutResolver.kt | 13 +++-- .../ChapterSourceOrderPutResolver.kt | 9 +-- .../resolvers/HistoryLastReadPutResolver.kt | 9 +-- .../MangaCoverLastModifiedPutResolver.kt | 9 +-- .../resolvers/MangaFavoritePutResolver.kt | 11 ++-- .../resolvers/MangaFlagsPutResolver.kt | 9 +-- .../resolvers/MangaInfoPutResolver.kt | 15 ++--- .../resolvers/MangaLastUpdatedPutResolver.kt | 9 +-- .../resolvers/MangaMigrationPutResolver.kt | 16 +++--- .../resolvers/MangaTitlePutResolver.kt | 9 +-- .../database/resolvers/MangaUrlPutResolver.kt | 8 +-- .../resolvers/MangaViewerPutResolver.kt | 9 +-- .../ui/reader/ReaderColorFilterSheet.kt | 56 ++++--------------- .../util/system/ContextExtensions.kt | 6 +- .../similar/sql/mappers/SimilarTypeMapping.kt | 14 ++--- .../sql/mappers/MergedMangaTypeMapping.kt | 28 +++++----- .../MergeMangaSettingsPutResolver.kt | 8 +-- .../sql/resolvers/MergedMangaIdPutResolver.kt | 8 +-- .../MergedMangaSettingsPutResolver.kt | 14 ++--- .../sql/mappers/SearchMetadataTypeMapping.kt | 16 +++--- .../sql/mappers/SearchTagTypeMapping.kt | 16 +++--- .../sql/mappers/SearchTitleTypeMapping.kt | 14 ++--- 30 files changed, 230 insertions(+), 248 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index f15493ecc..20875c5c2 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -163,7 +163,7 @@ dependencies { implementation("com.squareup.okhttp3:okhttp:$okhttpVersion") implementation("com.squareup.okhttp3:logging-interceptor:$okhttpVersion") implementation("com.squareup.okhttp3:okhttp-dnsoverhttps:$okhttpVersion") - implementation("com.squareup.okio:okio:2.9.0") + implementation("com.squareup.okio:okio:2.10.0") // TLS 1.3 support for Android < 10 implementation("org.conscrypt:conscrypt-android:2.5.1") diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/CategoryTypeMapping.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/CategoryTypeMapping.kt index 1fd8e31e8..9724f73c2 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/CategoryTypeMapping.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/CategoryTypeMapping.kt @@ -1,7 +1,7 @@ package eu.kanade.tachiyomi.data.database.mappers -import android.content.ContentValues import android.database.Cursor +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.SQLiteTypeMapping import com.pushtorefresh.storio.sqlite.operations.delete.DefaultDeleteResolver import com.pushtorefresh.storio.sqlite.operations.get.DefaultGetResolver @@ -36,16 +36,14 @@ class CategoryPutResolver : DefaultPutResolver() { .whereArgs(obj.id) .build() - override fun mapToContentValues(obj: Category) = ContentValues(4).apply { - put(COL_ID, obj.id) - put(COL_NAME, obj.name) - put(COL_ORDER, obj.order) - put(COL_FLAGS, obj.flags) - // SY --> - val orderString = obj.mangaOrder.joinToString("/") - put(COL_MANGA_ORDER, orderString) - // SY <-- - } + override fun mapToContentValues(obj: Category) = + contentValuesOf( + COL_ID to obj.id, + COL_NAME to obj.name, + COL_ORDER to obj.order, + COL_FLAGS to obj.flags, + COL_MANGA_ORDER to obj.mangaOrder.joinToString("/") + ) } class CategoryGetResolver : DefaultGetResolver() { diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/ChapterTypeMapping.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/ChapterTypeMapping.kt index 9d5810e01..c663d2f2f 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/ChapterTypeMapping.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/ChapterTypeMapping.kt @@ -1,7 +1,7 @@ package eu.kanade.tachiyomi.data.database.mappers -import android.content.ContentValues import android.database.Cursor +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.SQLiteTypeMapping import com.pushtorefresh.storio.sqlite.operations.delete.DefaultDeleteResolver import com.pushtorefresh.storio.sqlite.operations.get.DefaultGetResolver @@ -43,20 +43,21 @@ class ChapterPutResolver : DefaultPutResolver() { .whereArgs(obj.id) .build() - override fun mapToContentValues(obj: Chapter) = ContentValues(11).apply { - put(COL_ID, obj.id) - put(COL_MANGA_ID, obj.manga_id) - put(COL_URL, obj.url) - put(COL_NAME, obj.name) - put(COL_READ, obj.read) - put(COL_SCANLATOR, obj.scanlator) - put(COL_BOOKMARK, obj.bookmark) - put(COL_DATE_FETCH, obj.date_fetch) - put(COL_DATE_UPLOAD, obj.date_upload) - put(COL_LAST_PAGE_READ, obj.last_page_read) - put(COL_CHAPTER_NUMBER, obj.chapter_number) - put(COL_SOURCE_ORDER, obj.source_order) - } + override fun mapToContentValues(obj: Chapter) = + contentValuesOf( + COL_ID to obj.id, + COL_MANGA_ID to obj.manga_id, + COL_URL to obj.url, + COL_NAME to obj.name, + COL_READ to obj.read, + COL_SCANLATOR to obj.scanlator, + COL_BOOKMARK to obj.bookmark, + COL_DATE_FETCH to obj.date_fetch, + COL_DATE_UPLOAD to obj.date_upload, + COL_LAST_PAGE_READ to obj.last_page_read, + COL_CHAPTER_NUMBER to obj.chapter_number, + COL_SOURCE_ORDER to obj.source_order + ) } class ChapterGetResolver : DefaultGetResolver() { diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/HistoryTypeMapping.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/HistoryTypeMapping.kt index e3da10169..d5cce7312 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/HistoryTypeMapping.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/HistoryTypeMapping.kt @@ -1,7 +1,7 @@ package eu.kanade.tachiyomi.data.database.mappers -import android.content.ContentValues import android.database.Cursor +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.SQLiteTypeMapping import com.pushtorefresh.storio.sqlite.operations.delete.DefaultDeleteResolver import com.pushtorefresh.storio.sqlite.operations.get.DefaultGetResolver @@ -35,12 +35,13 @@ open class HistoryPutResolver : DefaultPutResolver() { .whereArgs(obj.id) .build() - override fun mapToContentValues(obj: History) = ContentValues(4).apply { - put(COL_ID, obj.id) - put(COL_CHAPTER_ID, obj.chapter_id) - put(COL_LAST_READ, obj.last_read) - put(COL_TIME_READ, obj.time_read) - } + override fun mapToContentValues(obj: History) = + contentValuesOf( + COL_ID to obj.id, + COL_CHAPTER_ID to obj.chapter_id, + COL_LAST_READ to obj.last_read, + COL_TIME_READ to obj.time_read + ) } class HistoryGetResolver : DefaultGetResolver() { diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaCategoryTypeMapping.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaCategoryTypeMapping.kt index 24fff124c..f5e584333 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaCategoryTypeMapping.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaCategoryTypeMapping.kt @@ -1,7 +1,7 @@ package eu.kanade.tachiyomi.data.database.mappers -import android.content.ContentValues import android.database.Cursor +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.SQLiteTypeMapping import com.pushtorefresh.storio.sqlite.operations.delete.DefaultDeleteResolver import com.pushtorefresh.storio.sqlite.operations.get.DefaultGetResolver @@ -33,11 +33,12 @@ class MangaCategoryPutResolver : DefaultPutResolver() { .whereArgs(obj.id) .build() - override fun mapToContentValues(obj: MangaCategory) = ContentValues(3).apply { - put(COL_ID, obj.id) - put(COL_MANGA_ID, obj.manga_id) - put(COL_CATEGORY_ID, obj.category_id) - } + override fun mapToContentValues(obj: MangaCategory) = + contentValuesOf( + COL_ID to obj.id, + COL_MANGA_ID to obj.manga_id, + COL_CATEGORY_ID to obj.category_id + ) } class MangaCategoryGetResolver : DefaultGetResolver() { diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaTypeMapping.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaTypeMapping.kt index 8c433d36a..79de0f3a1 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaTypeMapping.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaTypeMapping.kt @@ -1,7 +1,7 @@ package eu.kanade.tachiyomi.data.database.mappers -import android.content.ContentValues import android.database.Cursor +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.SQLiteTypeMapping import com.pushtorefresh.storio.sqlite.operations.delete.DefaultDeleteResolver import com.pushtorefresh.storio.sqlite.operations.get.DefaultGetResolver @@ -48,27 +48,28 @@ class MangaPutResolver : DefaultPutResolver() { .whereArgs(obj.id) .build() - override fun mapToContentValues(obj: Manga) = ContentValues(17).apply { - put(COL_ID, obj.id) - put(COL_SOURCE, obj.source) - put(COL_URL, obj.url) - // SY --> - put(COL_ARTIST, obj.originalArtist) - put(COL_AUTHOR, obj.originalAuthor) - put(COL_DESCRIPTION, obj.originalDescription) - put(COL_GENRE, obj.originalGenre) - put(COL_TITLE, obj.originalTitle) - // SY <-- - put(COL_STATUS, obj.status) - put(COL_THUMBNAIL_URL, obj.thumbnail_url) - put(COL_FAVORITE, obj.favorite) - put(COL_LAST_UPDATE, obj.last_update) - put(COL_INITIALIZED, obj.initialized) - put(COL_VIEWER, obj.viewer) - put(COL_CHAPTER_FLAGS, obj.chapter_flags) - put(COL_COVER_LAST_MODIFIED, obj.cover_last_modified) - put(COL_DATE_ADDED, obj.date_added) - } + override fun mapToContentValues(obj: Manga) = + contentValuesOf( + COL_ID to obj.id, + COL_SOURCE to obj.source, + COL_URL to obj.url, + // SY --> + COL_ARTIST to obj.originalArtist, + COL_AUTHOR to obj.originalAuthor, + COL_DESCRIPTION to obj.originalDescription, + COL_GENRE to obj.originalGenre, + COL_TITLE to obj.originalTitle, + // SY <-- + COL_STATUS to obj.status, + COL_THUMBNAIL_URL to obj.thumbnail_url, + COL_FAVORITE to obj.favorite, + COL_LAST_UPDATE to obj.last_update, + COL_INITIALIZED to obj.initialized, + COL_VIEWER to obj.viewer, + COL_CHAPTER_FLAGS to obj.chapter_flags, + COL_COVER_LAST_MODIFIED to obj.cover_last_modified, + COL_DATE_ADDED to obj.date_added + ) } interface BaseMangaGetResolver { diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/TrackTypeMapping.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/TrackTypeMapping.kt index 94de567ad..1ab6f811c 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/TrackTypeMapping.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/TrackTypeMapping.kt @@ -1,7 +1,7 @@ package eu.kanade.tachiyomi.data.database.mappers -import android.content.ContentValues import android.database.Cursor +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.SQLiteTypeMapping import com.pushtorefresh.storio.sqlite.operations.delete.DefaultDeleteResolver import com.pushtorefresh.storio.sqlite.operations.get.DefaultGetResolver @@ -44,21 +44,22 @@ class TrackPutResolver : DefaultPutResolver() { .whereArgs(obj.id) .build() - override fun mapToContentValues(obj: Track) = ContentValues(10).apply { - put(COL_ID, obj.id) - put(COL_MANGA_ID, obj.manga_id) - put(COL_SYNC_ID, obj.sync_id) - put(COL_MEDIA_ID, obj.media_id) - put(COL_LIBRARY_ID, obj.library_id) - put(COL_TITLE, obj.title) - put(COL_LAST_CHAPTER_READ, obj.last_chapter_read) - put(COL_TOTAL_CHAPTERS, obj.total_chapters) - put(COL_STATUS, obj.status) - put(COL_TRACKING_URL, obj.tracking_url) - put(COL_SCORE, obj.score) - put(COL_START_DATE, obj.started_reading_date) - put(COL_FINISH_DATE, obj.finished_reading_date) - } + override fun mapToContentValues(obj: Track) = + contentValuesOf( + COL_ID to obj.id, + COL_MANGA_ID to obj.manga_id, + COL_SYNC_ID to obj.sync_id, + COL_MEDIA_ID to obj.media_id, + COL_LIBRARY_ID to obj.library_id, + COL_TITLE to obj.title, + COL_LAST_CHAPTER_READ to obj.last_chapter_read, + COL_TOTAL_CHAPTERS to obj.total_chapters, + COL_STATUS to obj.status, + COL_TRACKING_URL to obj.tracking_url, + COL_SCORE to obj.score, + COL_START_DATE to obj.started_reading_date, + COL_FINISH_DATE to obj.finished_reading_date + ) } class TrackGetResolver : DefaultGetResolver() { diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterBackupPutResolver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterBackupPutResolver.kt index 20008e074..76516139f 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterBackupPutResolver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterBackupPutResolver.kt @@ -1,6 +1,6 @@ package eu.kanade.tachiyomi.data.database.resolvers -import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -25,9 +25,10 @@ class ChapterBackupPutResolver : PutResolver() { .whereArgs(chapter.url) .build() - fun mapToContentValues(chapter: Chapter) = ContentValues(3).apply { - put(ChapterTable.COL_READ, chapter.read) - put(ChapterTable.COL_BOOKMARK, chapter.bookmark) - put(ChapterTable.COL_LAST_PAGE_READ, chapter.last_page_read) - } + fun mapToContentValues(chapter: Chapter) = + contentValuesOf( + ChapterTable.COL_READ to chapter.read, + ChapterTable.COL_BOOKMARK to chapter.bookmark, + ChapterTable.COL_LAST_PAGE_READ to chapter.last_page_read + ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterProgressPutResolver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterProgressPutResolver.kt index b2800551f..949dcafd7 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterProgressPutResolver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterProgressPutResolver.kt @@ -1,6 +1,6 @@ package eu.kanade.tachiyomi.data.database.resolvers -import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -25,9 +25,10 @@ class ChapterProgressPutResolver : PutResolver() { .whereArgs(chapter.id) .build() - fun mapToContentValues(chapter: Chapter) = ContentValues(3).apply { - put(ChapterTable.COL_READ, chapter.read) - put(ChapterTable.COL_BOOKMARK, chapter.bookmark) - put(ChapterTable.COL_LAST_PAGE_READ, chapter.last_page_read) - } + fun mapToContentValues(chapter: Chapter) = + contentValuesOf( + ChapterTable.COL_READ to chapter.read, + ChapterTable.COL_BOOKMARK to chapter.bookmark, + ChapterTable.COL_LAST_PAGE_READ to chapter.last_page_read + ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterSourceOrderPutResolver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterSourceOrderPutResolver.kt index fa0f3514c..9814e9dc5 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterSourceOrderPutResolver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterSourceOrderPutResolver.kt @@ -1,6 +1,6 @@ package eu.kanade.tachiyomi.data.database.resolvers -import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -25,7 +25,8 @@ class ChapterSourceOrderPutResolver : PutResolver() { .whereArgs(chapter.url, chapter.manga_id) .build() - fun mapToContentValues(chapter: Chapter) = ContentValues(1).apply { - put(ChapterTable.COL_SOURCE_ORDER, chapter.source_order) - } + fun mapToContentValues(chapter: Chapter) = + contentValuesOf( + ChapterTable.COL_SOURCE_ORDER to chapter.source_order + ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/HistoryLastReadPutResolver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/HistoryLastReadPutResolver.kt index 32f73c009..07b883b45 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/HistoryLastReadPutResolver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/HistoryLastReadPutResolver.kt @@ -1,7 +1,7 @@ package eu.kanade.tachiyomi.data.database.resolvers -import android.content.ContentValues import androidx.annotation.NonNull +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResult import com.pushtorefresh.storio.sqlite.queries.Query @@ -57,7 +57,8 @@ class HistoryLastReadPutResolver : HistoryPutResolver() { * Create content query * @param history object */ - fun mapToUpdateContentValues(history: History) = ContentValues(1).apply { - put(HistoryTable.COL_LAST_READ, history.last_read) - } + fun mapToUpdateContentValues(history: History) = + contentValuesOf( + HistoryTable.COL_LAST_READ to history.last_read + ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaCoverLastModifiedPutResolver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaCoverLastModifiedPutResolver.kt index 98d6ba4a2..0db595e42 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaCoverLastModifiedPutResolver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaCoverLastModifiedPutResolver.kt @@ -1,6 +1,6 @@ package eu.kanade.tachiyomi.data.database.resolvers -import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -25,7 +25,8 @@ class MangaCoverLastModifiedPutResolver : PutResolver() { .whereArgs(manga.id) .build() - fun mapToContentValues(manga: Manga) = ContentValues(1).apply { - put(MangaTable.COL_COVER_LAST_MODIFIED, manga.cover_last_modified) - } + fun mapToContentValues(manga: Manga) = + contentValuesOf( + MangaTable.COL_COVER_LAST_MODIFIED to manga.cover_last_modified + ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFavoritePutResolver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFavoritePutResolver.kt index e499b6f52..e8e1af12a 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFavoritePutResolver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFavoritePutResolver.kt @@ -1,6 +1,6 @@ package eu.kanade.tachiyomi.data.database.resolvers -import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -25,8 +25,9 @@ class MangaFavoritePutResolver : PutResolver() { .whereArgs(manga.id) .build() - fun mapToContentValues(manga: Manga) = ContentValues(2).apply { - put(MangaTable.COL_FAVORITE, manga.favorite) - put(MangaTable.COL_DATE_ADDED, manga.date_added) - } + fun mapToContentValues(manga: Manga) = + contentValuesOf( + MangaTable.COL_FAVORITE to manga.favorite, + MangaTable.COL_DATE_ADDED to manga.date_added + ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFlagsPutResolver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFlagsPutResolver.kt index 2a8e08383..b342e35bb 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFlagsPutResolver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFlagsPutResolver.kt @@ -1,6 +1,6 @@ package eu.kanade.tachiyomi.data.database.resolvers -import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -35,7 +35,8 @@ class MangaFlagsPutResolver(private val updateAll: Boolean = false) : PutResolve } } - fun mapToContentValues(manga: Manga) = ContentValues(1).apply { - put(MangaTable.COL_CHAPTER_FLAGS, manga.chapter_flags) - } + fun mapToContentValues(manga: Manga) = + contentValuesOf( + MangaTable.COL_CHAPTER_FLAGS to manga.chapter_flags + ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaInfoPutResolver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaInfoPutResolver.kt index b1a2c826c..7995eb13f 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaInfoPutResolver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaInfoPutResolver.kt @@ -1,6 +1,7 @@ package eu.kanade.tachiyomi.data.database.resolvers import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -25,13 +26,13 @@ class MangaInfoPutResolver(val reset: Boolean = false) : PutResolver() { .whereArgs(manga.id) .build() - fun mapToContentValues(manga: Manga) = ContentValues(1).apply { - put(MangaTable.COL_TITLE, manga.originalTitle) - put(MangaTable.COL_GENRE, manga.originalGenre) - put(MangaTable.COL_AUTHOR, manga.originalAuthor) - put(MangaTable.COL_ARTIST, manga.originalArtist) - put(MangaTable.COL_DESCRIPTION, manga.originalDescription) - } + fun mapToContentValues(manga: Manga) = contentValuesOf( + MangaTable.COL_TITLE to manga.originalTitle, + MangaTable.COL_GENRE to manga.originalGenre, + MangaTable.COL_AUTHOR to manga.originalAuthor, + MangaTable.COL_ARTIST to manga.originalArtist, + MangaTable.COL_DESCRIPTION to manga.originalDescription + ) fun resetToContentValues(manga: Manga) = ContentValues(1).apply { val splitter = "▒ ▒∩▒" diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaLastUpdatedPutResolver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaLastUpdatedPutResolver.kt index 6b33ed255..5cd673c6e 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaLastUpdatedPutResolver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaLastUpdatedPutResolver.kt @@ -1,6 +1,6 @@ package eu.kanade.tachiyomi.data.database.resolvers -import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -25,7 +25,8 @@ class MangaLastUpdatedPutResolver : PutResolver() { .whereArgs(manga.id) .build() - fun mapToContentValues(manga: Manga) = ContentValues(1).apply { - put(MangaTable.COL_LAST_UPDATE, manga.last_update) - } + fun mapToContentValues(manga: Manga) = + contentValuesOf( + MangaTable.COL_LAST_UPDATE to manga.last_update + ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaMigrationPutResolver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaMigrationPutResolver.kt index 84e7085cc..271823d2e 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaMigrationPutResolver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaMigrationPutResolver.kt @@ -1,6 +1,6 @@ package eu.kanade.tachiyomi.data.database.resolvers -import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -25,11 +25,11 @@ class MangaMigrationPutResolver : PutResolver() { .whereArgs(manga.id) .build() - fun mapToContentValues(manga: Manga) = ContentValues(5).apply { - put(MangaTable.COL_FAVORITE, manga.favorite) - put(MangaTable.COL_DATE_ADDED, manga.date_added) - put(MangaTable.COL_TITLE, manga.title) - put(MangaTable.COL_CHAPTER_FLAGS, manga.chapter_flags) - put(MangaTable.COL_VIEWER, manga.viewer) - } + fun mapToContentValues(manga: Manga) = contentValuesOf( + MangaTable.COL_FAVORITE to manga.favorite, + MangaTable.COL_DATE_ADDED to manga.date_added, + MangaTable.COL_TITLE to manga.title, + MangaTable.COL_CHAPTER_FLAGS to manga.chapter_flags, + MangaTable.COL_VIEWER to manga.viewer + ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaTitlePutResolver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaTitlePutResolver.kt index cb29c26d9..64323d276 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaTitlePutResolver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaTitlePutResolver.kt @@ -1,6 +1,6 @@ package eu.kanade.tachiyomi.data.database.resolvers -import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -25,7 +25,8 @@ class MangaTitlePutResolver : PutResolver() { .whereArgs(manga.id) .build() - fun mapToContentValues(manga: Manga) = ContentValues(1).apply { - put(MangaTable.COL_TITLE, manga.title) - } + fun mapToContentValues(manga: Manga) = + contentValuesOf( + MangaTable.COL_TITLE to manga.title + ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaUrlPutResolver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaUrlPutResolver.kt index 9cacff754..32a68e1ca 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaUrlPutResolver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaUrlPutResolver.kt @@ -1,6 +1,6 @@ package eu.kanade.tachiyomi.data.database.resolvers -import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -26,7 +26,7 @@ class MangaUrlPutResolver : PutResolver() { .whereArgs(manga.id) .build() - fun mapToContentValues(manga: Manga) = ContentValues(1).apply { - put(MangaTable.COL_URL, manga.url) - } + fun mapToContentValues(manga: Manga) = contentValuesOf( + MangaTable.COL_URL to manga.url + ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaViewerPutResolver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaViewerPutResolver.kt index 13005d24c..5f465eb30 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaViewerPutResolver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaViewerPutResolver.kt @@ -1,6 +1,6 @@ package eu.kanade.tachiyomi.data.database.resolvers -import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -25,7 +25,8 @@ class MangaViewerPutResolver : PutResolver() { .whereArgs(manga.id) .build() - fun mapToContentValues(manga: Manga) = ContentValues(1).apply { - put(MangaTable.COL_VIEWER, manga.viewer) - } + fun mapToContentValues(manga: Manga) = + contentValuesOf( + MangaTable.COL_VIEWER to manga.viewer + ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderColorFilterSheet.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderColorFilterSheet.kt index 04efa20d2..abae0789e 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderColorFilterSheet.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderColorFilterSheet.kt @@ -3,6 +3,10 @@ package eu.kanade.tachiyomi.ui.reader import android.view.ViewGroup import android.widget.SeekBar import androidx.annotation.ColorInt +import androidx.core.graphics.alpha +import androidx.core.graphics.blue +import androidx.core.graphics.green +import androidx.core.graphics.red import androidx.lifecycle.lifecycleScope import com.google.android.material.bottomsheet.BottomSheetBehavior import com.google.android.material.bottomsheet.BottomSheetDialog @@ -156,16 +160,16 @@ class ReaderColorFilterSheet(private val activity: ReaderActivity) : BottomSheet * @param color integer containing color information */ fun setValues(color: Int): Array { - val alpha = getAlphaFromColor(color) - val red = getRedFromColor(color) - val green = getGreenFromColor(color) - val blue = getBlueFromColor(color) + val alpha = color.alpha + val red = color.red + val green = color.green + val blue = color.blue // Initialize values - binding.txtColorFilterAlphaValue.text = alpha.toString() - binding.txtColorFilterRedValue.text = red.toString() - binding.txtColorFilterGreenValue.text = green.toString() - binding.txtColorFilterBlueValue.text = blue.toString() + binding.txtColorFilterAlphaValue.text = "$alpha" + binding.txtColorFilterRedValue.text = "$red" + binding.txtColorFilterGreenValue.text = "$green" + binding.txtColorFilterBlueValue.text = "$blue" return arrayOf(alpha, red, green, blue) } @@ -232,42 +236,6 @@ class ReaderColorFilterSheet(private val activity: ReaderActivity) : BottomSheet preferences.colorFilterValue().set(updatedColor) } - /** - * Returns the alpha value from the Color Hex - * @param color color hex as int - * @return alpha of color - */ - private fun getAlphaFromColor(color: Int): Int { - return color shr 24 and 0xFF - } - - /** - * Returns the red value from the Color Hex - * @param color color hex as int - * @return red of color - */ - private fun getRedFromColor(color: Int): Int { - return color shr 16 and 0xFF - } - - /** - * Returns the green value from the Color Hex - * @param color color hex as int - * @return green of color - */ - private fun getGreenFromColor(color: Int): Int { - return color shr 8 and 0xFF - } - - /** - * Returns the blue value from the Color Hex - * @param color color hex as int - * @return blue of color - */ - private fun getBlueFromColor(color: Int): Int { - return color and 0xFF - } - private companion object { /** Integer mask of alpha value **/ const val ALPHA_MASK: Long = 0xFF000000 diff --git a/app/src/main/java/eu/kanade/tachiyomi/util/system/ContextExtensions.kt b/app/src/main/java/eu/kanade/tachiyomi/util/system/ContextExtensions.kt index e59487365..8b2281b23 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/util/system/ContextExtensions.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/util/system/ContextExtensions.kt @@ -165,19 +165,19 @@ val Resources.isLTR * Property to get the notification manager from the context. */ val Context.notificationManager: NotificationManager - get() = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager + get() = getSystemService()!! /** * Property to get the connectivity manager from the context. */ val Context.connectivityManager: ConnectivityManager - get() = getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager + get() = getSystemService()!! /** * Property to get the power manager from the context. */ val Context.powerManager: PowerManager - get() = getSystemService(Context.POWER_SERVICE) as PowerManager + get() = getSystemService()!! /** * Convenience method to acquire a partial wake lock. diff --git a/app/src/main/java/exh/md/similar/sql/mappers/SimilarTypeMapping.kt b/app/src/main/java/exh/md/similar/sql/mappers/SimilarTypeMapping.kt index 53283be6b..6bebf299f 100644 --- a/app/src/main/java/exh/md/similar/sql/mappers/SimilarTypeMapping.kt +++ b/app/src/main/java/exh/md/similar/sql/mappers/SimilarTypeMapping.kt @@ -1,7 +1,7 @@ package exh.md.similar.sql.mappers -import android.content.ContentValues import android.database.Cursor +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.SQLiteTypeMapping import com.pushtorefresh.storio.sqlite.operations.delete.DefaultDeleteResolver import com.pushtorefresh.storio.sqlite.operations.get.DefaultGetResolver @@ -35,12 +35,12 @@ class SimilarPutResolver : DefaultPutResolver() { .whereArgs(obj.id) .build() - override fun mapToContentValues(obj: MangaSimilar) = ContentValues(4).apply { - put(COL_ID, obj.id) - put(COL_MANGA_ID, obj.manga_id) - put(COL_MANGA_SIMILAR_MATCHED_IDS, obj.matched_ids) - put(COL_MANGA_SIMILAR_MATCHED_TITLES, obj.matched_titles) - } + override fun mapToContentValues(obj: MangaSimilar) = contentValuesOf( + COL_ID to obj.id, + COL_MANGA_ID to obj.manga_id, + COL_MANGA_SIMILAR_MATCHED_IDS to obj.matched_ids, + COL_MANGA_SIMILAR_MATCHED_TITLES to obj.matched_titles + ) } class SimilarGetResolver : DefaultGetResolver() { diff --git a/app/src/main/java/exh/merged/sql/mappers/MergedMangaTypeMapping.kt b/app/src/main/java/exh/merged/sql/mappers/MergedMangaTypeMapping.kt index d37d45b94..cb2a631ac 100644 --- a/app/src/main/java/exh/merged/sql/mappers/MergedMangaTypeMapping.kt +++ b/app/src/main/java/exh/merged/sql/mappers/MergedMangaTypeMapping.kt @@ -1,7 +1,7 @@ package exh.merged.sql.mappers -import android.content.ContentValues import android.database.Cursor +import androidx.core.content.contentValuesOf import androidx.core.database.getLongOrNull import com.pushtorefresh.storio.sqlite.SQLiteTypeMapping import com.pushtorefresh.storio.sqlite.operations.delete.DefaultDeleteResolver @@ -42,19 +42,19 @@ class MergedMangaPutResolver : DefaultPutResolver() { .whereArgs(obj.id) .build() - override fun mapToContentValues(obj: MergedMangaReference) = ContentValues(5).apply { - put(COL_ID, obj.id) - put(COL_IS_INFO_MANGA, obj.isInfoManga) - put(COL_GET_CHAPTER_UPDATES, obj.getChapterUpdates) - put(COL_CHAPTER_SORT_MODE, obj.chapterSortMode) - put(COL_CHAPTER_PRIORITY, obj.chapterPriority) - put(COL_DOWNLOAD_CHAPTERS, obj.downloadChapters) - put(COL_MERGE_ID, obj.mergeId) - put(COL_MERGE_URL, obj.mergeUrl) - put(COL_MANGA_ID, obj.mangaId) - put(COL_MANGA_URL, obj.mangaUrl) - put(COL_MANGA_SOURCE, obj.mangaSourceId) - } + override fun mapToContentValues(obj: MergedMangaReference) = contentValuesOf( + COL_ID to obj.id, + COL_IS_INFO_MANGA to obj.isInfoManga, + COL_GET_CHAPTER_UPDATES to obj.getChapterUpdates, + COL_CHAPTER_SORT_MODE to obj.chapterSortMode, + COL_CHAPTER_PRIORITY to obj.chapterPriority, + COL_DOWNLOAD_CHAPTERS to obj.downloadChapters, + COL_MERGE_ID to obj.mergeId, + COL_MERGE_URL to obj.mergeUrl, + COL_MANGA_ID to obj.mangaId, + COL_MANGA_URL to obj.mangaUrl, + COL_MANGA_SOURCE to obj.mangaSourceId + ) } class MergedMangaGetResolver : DefaultGetResolver() { diff --git a/app/src/main/java/exh/merged/sql/resolvers/MergeMangaSettingsPutResolver.kt b/app/src/main/java/exh/merged/sql/resolvers/MergeMangaSettingsPutResolver.kt index 4a77fd0dd..9448f6d67 100644 --- a/app/src/main/java/exh/merged/sql/resolvers/MergeMangaSettingsPutResolver.kt +++ b/app/src/main/java/exh/merged/sql/resolvers/MergeMangaSettingsPutResolver.kt @@ -1,6 +1,6 @@ package exh.merged.sql.resolvers -import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -25,7 +25,7 @@ class MergeMangaSettingsPutResolver(val reset: Boolean = false) : PutResolver() { .whereArgs(mergedMangaReference.id) .build() - fun mapToContentValues(mergedMangaReference: MergedMangaReference) = ContentValues(1).apply { - put(MergedTable.COL_MANGA_ID, mergedMangaReference.mangaId) - } + fun mapToContentValues(mergedMangaReference: MergedMangaReference) = contentValuesOf( + MergedTable.COL_MANGA_ID to mergedMangaReference.mangaId + ) } diff --git a/app/src/main/java/exh/merged/sql/resolvers/MergedMangaSettingsPutResolver.kt b/app/src/main/java/exh/merged/sql/resolvers/MergedMangaSettingsPutResolver.kt index 979794915..b20cf39e3 100644 --- a/app/src/main/java/exh/merged/sql/resolvers/MergedMangaSettingsPutResolver.kt +++ b/app/src/main/java/exh/merged/sql/resolvers/MergedMangaSettingsPutResolver.kt @@ -1,6 +1,6 @@ package exh.merged.sql.resolvers -import android.content.ContentValues +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.StorIOSQLite import com.pushtorefresh.storio.sqlite.operations.put.PutResolver import com.pushtorefresh.storio.sqlite.operations.put.PutResult @@ -25,10 +25,10 @@ class MergedMangaSettingsPutResolver(val reset: Boolean = false) : PutResolver() { .whereArgs(obj.mangaId) .build() - override fun mapToContentValues(obj: SearchMetadata) = ContentValues(5).apply { - put(COL_MANGA_ID, obj.mangaId) - put(COL_UPLOADER, obj.uploader) - put(COL_EXTRA, obj.extra) - put(COL_INDEXED_EXTRA, obj.indexedExtra) - put(COL_EXTRA_VERSION, obj.extraVersion) - } + override fun mapToContentValues(obj: SearchMetadata) = contentValuesOf( + COL_MANGA_ID to obj.mangaId, + COL_UPLOADER to obj.uploader, + COL_EXTRA to obj.extra, + COL_INDEXED_EXTRA to obj.indexedExtra, + COL_EXTRA_VERSION to obj.extraVersion, + ) } class SearchMetadataGetResolver : DefaultGetResolver() { diff --git a/app/src/main/java/exh/metadata/sql/mappers/SearchTagTypeMapping.kt b/app/src/main/java/exh/metadata/sql/mappers/SearchTagTypeMapping.kt index ff4fdf99f..9729b96bb 100755 --- a/app/src/main/java/exh/metadata/sql/mappers/SearchTagTypeMapping.kt +++ b/app/src/main/java/exh/metadata/sql/mappers/SearchTagTypeMapping.kt @@ -1,7 +1,7 @@ package exh.metadata.sql.mappers -import android.content.ContentValues import android.database.Cursor +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.SQLiteTypeMapping import com.pushtorefresh.storio.sqlite.operations.delete.DefaultDeleteResolver import com.pushtorefresh.storio.sqlite.operations.get.DefaultGetResolver @@ -35,13 +35,13 @@ class SearchTagPutResolver : DefaultPutResolver() { .whereArgs(obj.id) .build() - override fun mapToContentValues(obj: SearchTag) = ContentValues(5).apply { - put(COL_ID, obj.id) - put(COL_MANGA_ID, obj.mangaId) - put(COL_NAMESPACE, obj.namespace) - put(COL_NAME, obj.name) - put(COL_TYPE, obj.type) - } + override fun mapToContentValues(obj: SearchTag) = contentValuesOf( + COL_ID to obj.id, + COL_MANGA_ID to obj.mangaId, + COL_NAMESPACE to obj.namespace, + COL_NAME to obj.name, + COL_TYPE to obj.type, + ) } class SearchTagGetResolver : DefaultGetResolver() { diff --git a/app/src/main/java/exh/metadata/sql/mappers/SearchTitleTypeMapping.kt b/app/src/main/java/exh/metadata/sql/mappers/SearchTitleTypeMapping.kt index a1f5d0ba2..f0fe9888e 100755 --- a/app/src/main/java/exh/metadata/sql/mappers/SearchTitleTypeMapping.kt +++ b/app/src/main/java/exh/metadata/sql/mappers/SearchTitleTypeMapping.kt @@ -1,7 +1,7 @@ package exh.metadata.sql.mappers -import android.content.ContentValues import android.database.Cursor +import androidx.core.content.contentValuesOf import com.pushtorefresh.storio.sqlite.SQLiteTypeMapping import com.pushtorefresh.storio.sqlite.operations.delete.DefaultDeleteResolver import com.pushtorefresh.storio.sqlite.operations.get.DefaultGetResolver @@ -34,12 +34,12 @@ class SearchTitlePutResolver : DefaultPutResolver() { .whereArgs(obj.id) .build() - override fun mapToContentValues(obj: SearchTitle) = ContentValues(4).apply { - put(COL_ID, obj.id) - put(COL_MANGA_ID, obj.mangaId) - put(COL_TITLE, obj.title) - put(COL_TYPE, obj.type) - } + override fun mapToContentValues(obj: SearchTitle) = contentValuesOf( + COL_ID to obj.id, + COL_MANGA_ID to obj.mangaId, + COL_TITLE to obj.title, + COL_TYPE to obj.type, + ) } class SearchTitleGetResolver : DefaultGetResolver() {