From c36d2794bb78e816f624cd8491170b0f63470a40 Mon Sep 17 00:00:00 2001 From: Jobobby04 Date: Sun, 24 Dec 2023 14:28:39 -0500 Subject: [PATCH] Minor cleanup --- .../presentation/browse/ExtensionsScreen.kt | 2 - .../settings/screen/SettingsDataScreen.kt | 2 +- .../settings/screen/SettingsLibraryScreen.kt | 18 +++++--- .../settings/screen/SettingsReaderScreen.kt | 12 +++-- .../settings/screen/SettingsSearchScreen.kt | 10 ++++- .../reader/appbars/BottomReaderBar.kt | 4 +- .../data/backup/models/BackupChapter.kt | 44 ++++++++++++------- .../models/BackupMergedMangaReference.kt | 13 +++++- .../data/backup/restore/BackupRestorer.kt | 4 +- .../data/backup/restore/MangaRestorer.kt | 2 +- .../tachiyomi/data/coil/PagePreviewFetcher.kt | 4 +- .../tachiyomi/data/download/DownloadCache.kt | 16 +++++-- .../data/library/LibraryUpdateJob.kt | 38 ++++++++++++---- .../data/library/LibraryUpdateNotifier.kt | 8 +++- .../java/eu/kanade/tachiyomi/di/AppModule.kt | 2 +- .../main/java/exh/log/EHDebugModeOverlay.kt | 4 +- .../main/java/exh/log/EnhancedFilePrinter.kt | 1 + .../kanade/tachiyomi/network/NetworkHelper.kt | 6 ++- .../data/chapter/ChapterRepositoryImpl.kt | 17 +++++-- .../interactor/GetMergedChaptersByMangaId.kt | 6 ++- .../chapter/repository/ChapterRepository.kt | 5 ++- .../domain/storage/service/StorageManager.kt | 1 + .../tachiyomi/source/online/HttpSource.kt | 2 +- .../metadata/EHentaiSearchMetadata.kt | 4 +- .../metadata/EightMusesSearchMetadata.kt | 4 +- 25 files changed, 166 insertions(+), 63 deletions(-) diff --git a/app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt b/app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt index 7cecd22d8..fd17c5071 100644 --- a/app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt +++ b/app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt @@ -45,11 +45,9 @@ import eu.kanade.presentation.browse.components.ExtensionIcon import eu.kanade.presentation.manga.components.DotSeparatorNoSpaceText import eu.kanade.tachiyomi.extension.model.Extension import eu.kanade.tachiyomi.extension.model.InstallStep -import eu.kanade.tachiyomi.source.ConfigurableSource import eu.kanade.tachiyomi.ui.browse.extension.ExtensionUiModel import eu.kanade.tachiyomi.ui.browse.extension.ExtensionsScreenModel import eu.kanade.tachiyomi.util.system.LocaleHelper -import exh.source.anyIs import tachiyomi.i18n.MR import tachiyomi.i18n.sy.SYMR import tachiyomi.presentation.core.components.FastScrollLazyColumn diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt index 91d9de0d9..033a98c55 100644 --- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt +++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt @@ -210,7 +210,7 @@ object SettingsDataScreen : SearchableSettings { // SY --> val pagePreviewCache = remember { Injekt.get() } - var pagePreviewReadableSizeSema by remember { mutableStateOf(0) } + var pagePreviewReadableSizeSema by remember { mutableIntStateOf(0) } val pagePreviewReadableSize = remember(pagePreviewReadableSizeSema) { pagePreviewCache.readableSize } // SY <-- diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt index 7a4526c23..788398525 100644 --- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt +++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt @@ -248,10 +248,14 @@ object SettingsLibraryScreen : SearchableSettings { pref = libraryPreferences.swipeToStartAction(), title = stringResource(MR.strings.pref_chapter_swipe_start), entries = mapOf( - LibraryPreferences.ChapterSwipeAction.Disabled to stringResource(MR.strings.disabled), - LibraryPreferences.ChapterSwipeAction.ToggleBookmark to stringResource(MR.strings.action_bookmark), - LibraryPreferences.ChapterSwipeAction.ToggleRead to stringResource(MR.strings.action_mark_as_read), - LibraryPreferences.ChapterSwipeAction.Download to stringResource(MR.strings.action_download), + LibraryPreferences.ChapterSwipeAction.Disabled to + stringResource(MR.strings.disabled), + LibraryPreferences.ChapterSwipeAction.ToggleBookmark to + stringResource(MR.strings.action_bookmark), + LibraryPreferences.ChapterSwipeAction.ToggleRead to + stringResource(MR.strings.action_mark_as_read), + LibraryPreferences.ChapterSwipeAction.Download to + stringResource(MR.strings.action_download), ), ), Preference.PreferenceItem.ListPreference( @@ -259,8 +263,10 @@ object SettingsLibraryScreen : SearchableSettings { title = stringResource(MR.strings.pref_chapter_swipe_end), entries = mapOf( LibraryPreferences.ChapterSwipeAction.Disabled to stringResource(MR.strings.disabled), - LibraryPreferences.ChapterSwipeAction.ToggleBookmark to stringResource(MR.strings.action_bookmark), - LibraryPreferences.ChapterSwipeAction.ToggleRead to stringResource(MR.strings.action_mark_as_read), + LibraryPreferences.ChapterSwipeAction.ToggleBookmark to + stringResource(MR.strings.action_bookmark), + LibraryPreferences.ChapterSwipeAction.ToggleRead to + stringResource(MR.strings.action_mark_as_read), LibraryPreferences.ChapterSwipeAction.Download to stringResource(MR.strings.action_download), ), ), diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt index 6b6434175..2af250ce5 100644 --- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt +++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt @@ -208,8 +208,10 @@ object SettingsReaderScreen : SearchableSettings { title = stringResource(MR.strings.pref_read_with_tapping_inverted), entries = mapOf( ReaderPreferences.TappingInvertMode.NONE to stringResource(MR.strings.none), - ReaderPreferences.TappingInvertMode.HORIZONTAL to stringResource(MR.strings.tapping_inverted_horizontal), - ReaderPreferences.TappingInvertMode.VERTICAL to stringResource(MR.strings.tapping_inverted_vertical), + ReaderPreferences.TappingInvertMode.HORIZONTAL to + stringResource(MR.strings.tapping_inverted_horizontal), + ReaderPreferences.TappingInvertMode.VERTICAL to + stringResource(MR.strings.tapping_inverted_vertical), ReaderPreferences.TappingInvertMode.BOTH to stringResource(MR.strings.tapping_inverted_both), ), enabled = navMode != 5, @@ -308,8 +310,10 @@ object SettingsReaderScreen : SearchableSettings { title = stringResource(MR.strings.pref_read_with_tapping_inverted), entries = mapOf( ReaderPreferences.TappingInvertMode.NONE to stringResource(MR.strings.none), - ReaderPreferences.TappingInvertMode.HORIZONTAL to stringResource(MR.strings.tapping_inverted_horizontal), - ReaderPreferences.TappingInvertMode.VERTICAL to stringResource(MR.strings.tapping_inverted_vertical), + ReaderPreferences.TappingInvertMode.HORIZONTAL to + stringResource(MR.strings.tapping_inverted_horizontal), + ReaderPreferences.TappingInvertMode.VERTICAL to + stringResource(MR.strings.tapping_inverted_vertical), ReaderPreferences.TappingInvertMode.BOTH to stringResource(MR.strings.tapping_inverted_both), ), enabled = navMode != 5, diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSearchScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSearchScreen.kt index 182ca9a1c..4ab52655e 100644 --- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSearchScreen.kt +++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSearchScreen.kt @@ -88,7 +88,9 @@ class SettingsSearchScreen : Screen() { focusRequester.requestFocus() } - var textFieldValue by rememberSaveable(stateSaver = TextFieldValue.Saver) { mutableStateOf(TextFieldValue()) } + var textFieldValue by rememberSaveable(stateSaver = TextFieldValue.Saver) { + mutableStateOf(TextFieldValue()) + } Scaffold( topBar = { Column { @@ -202,7 +204,11 @@ private fun SearchResult( SearchResultItem( route = settingsData.route, title = p.title, - breadcrumbs = getLocalizedBreadcrumb(path = settingsData.title, node = categoryTitle, isLtr = isLtr), + breadcrumbs = getLocalizedBreadcrumb( + path = settingsData.title, + node = categoryTitle, + isLtr = isLtr, + ), highlightKey = p.title, ) } diff --git a/app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt b/app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt index 288d9f293..a2bdcc116 100644 --- a/app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt +++ b/app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt @@ -112,7 +112,9 @@ fun BottomReaderBar( if (cropBorders.isIn(enabledButtons)) { IconButton(onClick = onClickCropBorder) { Icon( - painter = painterResource(if (cropEnabled) R.drawable.ic_crop_24dp else R.drawable.ic_crop_off_24dp), + painter = painterResource( + if (cropEnabled) R.drawable.ic_crop_24dp else R.drawable.ic_crop_off_24dp, + ), contentDescription = stringResource(MR.strings.pref_crop_borders), ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupChapter.kt b/app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupChapter.kt index 6d8cba4e2..3bf95c6c0 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupChapter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupChapter.kt @@ -39,18 +39,32 @@ data class BackupChapter( } } -val backupChapterMapper = { _: Long, _: Long, url: String, name: String, scanlator: String?, read: Boolean, bookmark: Boolean, lastPageRead: Long, chapterNumber: Double, source_order: Long, dateFetch: Long, dateUpload: Long, lastModifiedAt: Long -> - BackupChapter( - url = url, - name = name, - chapterNumber = chapterNumber.toFloat(), - scanlator = scanlator, - read = read, - bookmark = bookmark, - lastPageRead = lastPageRead, - dateFetch = dateFetch, - dateUpload = dateUpload, - sourceOrder = source_order, - lastModifiedAt = lastModifiedAt, - ) -} +val backupChapterMapper = + { _: Long, + _: Long, + url: String, + name: String, + scanlator: String?, + read: Boolean, + bookmark: Boolean, + lastPageRead: Long, + chapterNumber: Double, + source_order: Long, + dateFetch: Long, + dateUpload: Long, + lastModifiedAt: Long, + -> + BackupChapter( + url = url, + name = name, + chapterNumber = chapterNumber.toFloat(), + scanlator = scanlator, + read = read, + bookmark = bookmark, + lastPageRead = lastPageRead, + dateFetch = dateFetch, + dateUpload = dateUpload, + sourceOrder = source_order, + lastModifiedAt = lastModifiedAt, + ) + } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupMergedMangaReference.kt b/app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupMergedMangaReference.kt index d648546b6..4431570f2 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupMergedMangaReference.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupMergedMangaReference.kt @@ -36,7 +36,18 @@ data class BackupMergedMangaReference( } val backupMergedMangaReferenceMapper = - { _: Long, isInfoManga: Boolean, getChapterUpdates: Boolean, chapterSortMode: Long, chapterPriority: Long, downloadChapters: Boolean, _: Long, mergeUrl: String, _: Long?, mangaUrl: String, mangaSourceId: Long -> + { _: Long, + isInfoManga: Boolean, + getChapterUpdates: Boolean, + chapterSortMode: Long, + chapterPriority: Long, + downloadChapters: Boolean, + _: Long, + mergeUrl: String, + _: Long?, + mangaUrl: String, + mangaSourceId: Long, + -> BackupMergedMangaReference( isInfoManga = isInfoManga, getChapterUpdates = getChapterUpdates, diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt b/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt index c6468e290..c5a9e75ef 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt @@ -32,7 +32,7 @@ class BackupRestorer( private val preferenceRestorer: PreferenceRestorer = PreferenceRestorer(context), private val mangaRestorer: MangaRestorer = MangaRestorer(), // SY --> - private val savedSearchRestorer: SavedSearchRestorer = SavedSearchRestorer() + private val savedSearchRestorer: SavedSearchRestorer = SavedSearchRestorer(), // SY <-- ) { @@ -208,7 +208,7 @@ data class RestoreOptions( val sourceSettings: Boolean = true, val library: Boolean = true, // SY --> - val savedSearches: Boolean = true + val savedSearches: Boolean = true, // SY <-- ) { fun toBooleanArray() = booleanArrayOf( diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/MangaRestorer.kt b/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/MangaRestorer.kt index bc684d2ff..e4a8f5e25 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/MangaRestorer.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/MangaRestorer.kt @@ -92,7 +92,7 @@ class MangaRestorer( // SY --> mergedMangaReferences = backupManga.mergedMangaReferences, flatMetadata = backupManga.flatMetadata, - customManga = backupManga.getCustomMangaInfo() + customManga = backupManga.getCustomMangaInfo(), // SY <-- ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/coil/PagePreviewFetcher.kt b/app/src/main/java/eu/kanade/tachiyomi/data/coil/PagePreviewFetcher.kt index f3cb6bc32..53373646e 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/coil/PagePreviewFetcher.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/coil/PagePreviewFetcher.kt @@ -120,7 +120,9 @@ class PagePreviewFetcher( } private suspend fun executeNetworkRequest(): Response { - val response = sourceLazy.value?.fetchPreviewImage(page.getPagePreviewInfo(), getCacheControl()) ?: callFactoryLazy.value.newCall(newRequest()).await() + val response = sourceLazy.value?.fetchPreviewImage( + page.getPagePreviewInfo(), getCacheControl(), + ) ?: callFactoryLazy.value.newCall(newRequest()).await() if (!response.isSuccessful && response.code != HTTP_NOT_MODIFIED) { response.close() throw HttpException(response) diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadCache.kt b/app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadCache.kt index 58cee7468..81aa5bfca 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadCache.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadCache.kt @@ -178,7 +178,9 @@ class DownloadCache( val sourceDir = rootDownloadsDir.sourceDirs[manga.source] if (sourceDir != null) { - val mangaDir = sourceDir.mangaDirs[provider.getMangaDirName(/* SY --> */ manga.ogTitle /* SY <-- */)] + val mangaDir = sourceDir.mangaDirs[ + provider.getMangaDirName(/* SY --> */ manga.ogTitle /* SY <-- */), + ] if (mangaDir != null) { return mangaDir.chapterDirs.size } @@ -228,7 +230,11 @@ class DownloadCache( suspend fun removeChapter(chapter: Chapter, manga: Manga) { rootDownloadsDirLock.withLock { val sourceDir = rootDownloadsDir.sourceDirs[manga.source] ?: return - val mangaDir = sourceDir.mangaDirs[provider.getMangaDirName(/* SY --> */ manga.ogTitle /* SY <-- */)] ?: return + val mangaDir = sourceDir.mangaDirs[ + provider.getMangaDirName( + /* SY --> */ manga.ogTitle, /* SY <-- */ + ), + ] ?: return provider.getValidChapterDirNames(chapter.name, chapter.scanlator).forEach { if (it in mangaDir.chapterDirs) { mangaDir.chapterDirs -= it @@ -263,7 +269,11 @@ class DownloadCache( suspend fun removeChapters(chapters: List, manga: Manga) { rootDownloadsDirLock.withLock { val sourceDir = rootDownloadsDir.sourceDirs[manga.source] ?: return - val mangaDir = sourceDir.mangaDirs[provider.getMangaDirName(/* SY --> */ manga.ogTitle /* SY <-- */)] ?: return + val mangaDir = sourceDir.mangaDirs[ + provider.getMangaDirName( + /* SY --> */ manga.ogTitle, /* SY <-- */ + ), + ] ?: return chapters.forEach { chapter -> provider.getValidChapterDirNames(chapter.name, chapter.scanlator).forEach { if (it in mangaDir.chapterDirs) { diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt b/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt index f64390889..e5d62b71c 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt @@ -278,7 +278,10 @@ class LibraryUpdateJob(private val context: Context, workerParams: WorkerParamet .filter { when { it.manga.updateStrategy != UpdateStrategy.ALWAYS_UPDATE -> { - skippedUpdates.add(it.manga to context.stringResource(MR.strings.skipped_reason_not_always_update)) + skippedUpdates.add( + it.manga to + context.stringResource(MR.strings.skipped_reason_not_always_update), + ) false } @@ -298,7 +301,10 @@ class LibraryUpdateJob(private val context: Context, workerParams: WorkerParamet } MANGA_OUTSIDE_RELEASE_PERIOD in restrictions && it.manga.nextUpdate > fetchWindow.second -> { - skippedUpdates.add(it.manga to context.stringResource(MR.strings.skipped_reason_not_in_release_period)) + skippedUpdates.add( + it.manga to + context.stringResource(MR.strings.skipped_reason_not_in_release_period), + ) false } else -> true @@ -320,7 +326,9 @@ class LibraryUpdateJob(private val context: Context, workerParams: WorkerParamet logcat { skippedUpdates .groupBy { it.second } - .map { (reason, entries) -> "$reason: [${entries.map { it.first.title }.sorted().joinToString()}]" } + .map { (reason, entries) -> + "$reason: [${entries.map { it.first.title }.sorted().joinToString()}]" + } .joinToString() } notifier.showUpdateSkippedNotification(skippedUpdates.size) @@ -357,7 +365,10 @@ class LibraryUpdateJob(private val context: Context, workerParams: WorkerParamet .map { mangaInSource -> async { semaphore.withPermit { - if (mdlistLogged && mangaInSource.firstOrNull()?.let { it.manga.source in mangaDexSourceIds } == true) { + if ( + mdlistLogged && mangaInSource.firstOrNull() + ?.let { it.manga.source in mangaDexSourceIds } == true + ) { launch { mangaInSource.forEach { (manga) -> try { @@ -405,8 +416,10 @@ class LibraryUpdateJob(private val context: Context, workerParams: WorkerParamet } } catch (e: Throwable) { val errorMessage = when (e) { - is NoChaptersException -> context.stringResource(MR.strings.no_chapters_error) - // failedUpdates will already have the source, don't need to copy it into the message + is NoChaptersException -> + context.stringResource(MR.strings.no_chapters_error) + // failedUpdates will already have the source, + // don't need to copy it into the message is SourceNotInstalledException -> context.stringResource( MR.strings.loader_not_implemented_error, ) @@ -513,7 +526,11 @@ class LibraryUpdateJob(private val context: Context, workerParams: WorkerParamet val source = sourceManager.get(manga.source) ?: return@withUpdateNotification try { val networkManga = source.getMangaDetails(manga.toSManga()) - val updatedManga = manga.prepUpdateCover(coverCache, networkManga, true) + val updatedManga = manga.prepUpdateCover( + coverCache, + networkManga, + true, + ) .copyFrom(networkManga) try { updateManga.await(updatedManga.toMangaUpdate()) @@ -542,7 +559,8 @@ class LibraryUpdateJob(private val context: Context, workerParams: WorkerParamet private suspend fun syncFollows() = coroutineScope { val preferences = Injekt.get() var count = 0 - val mangaDex = MdUtil.getEnabledMangaDex(preferences, sourceManager = sourceManager) ?: return@coroutineScope + val mangaDex = MdUtil.getEnabledMangaDex(preferences, sourceManager = sourceManager) + ?: return@coroutineScope val syncFollowStatusInts = preferences.mangadexSyncToLibraryIndexes().get().map { it.toInt() } val size: Int @@ -555,7 +573,9 @@ class LibraryUpdateJob(private val context: Context, workerParams: WorkerParamet ensureActive() count++ - notifier.showProgressNotification(listOf(Manga.create().copy(ogTitle = networkManga.title)), count, size) + notifier.showProgressNotification( + listOf(Manga.create().copy(ogTitle = networkManga.title)), count, size, + ) var dbManga = getManga.await(networkManga.url, mangaDex.id) diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateNotifier.kt b/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateNotifier.kt index bfa43b4cf..b8d40d5c2 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateNotifier.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateNotifier.kt @@ -107,7 +107,9 @@ class LibraryUpdateNotifier(private val context: Context) { Notifications.CHANNEL_LIBRARY_PROGRESS, ) { setContentTitle(context.stringResource(MR.strings.label_warning)) - setStyle(NotificationCompat.BigTextStyle().bigText(context.stringResource(MR.strings.notification_size_warning))) + setStyle( + NotificationCompat.BigTextStyle().bigText(context.stringResource(MR.strings.notification_size_warning)), + ) setSmallIcon(R.drawable.ic_warning_white_24dp) setTimeoutAfter(Downloader.WARNING_NOTIF_TIMEOUT_MS) setContentIntent(NotificationHandler.openUrl(context, HELP_WARNING_URL)) @@ -338,7 +340,9 @@ class LibraryUpdateNotifier(private val context: Context) { if (shouldTruncate) { // "Chapters 1, 2.5, 3, 4, 5 and 10 more" val remaining = displayableChapterNumbers.size - NOTIF_MAX_CHAPTERS - val joinedChapterNumbers = displayableChapterNumbers.take(NOTIF_MAX_CHAPTERS).joinToString(", ") + val joinedChapterNumbers = displayableChapterNumbers + .take(NOTIF_MAX_CHAPTERS) + .joinToString(", ") context.pluralStringResource( MR.plurals.notification_chapters_multiple_and_more, remaining, diff --git a/app/src/main/java/eu/kanade/tachiyomi/di/AppModule.kt b/app/src/main/java/eu/kanade/tachiyomi/di/AppModule.kt index 7e6e0e532..7123d94f9 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/di/AppModule.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/di/AppModule.kt @@ -138,7 +138,7 @@ class AppModule(val app: Application) : InjektModule { addSingletonFactory { ChapterCache(app) } addSingletonFactory { CoverCache(app) } - addSingletonFactory { NetworkHelper(app, get()) } + addSingletonFactory { NetworkHelper(app, get(), BuildConfig.DEBUG) } addSingletonFactory { JavaScriptEngine(app) } addSingletonFactory { AndroidSourceManager(app, get(), get()) } diff --git a/app/src/main/java/exh/log/EHDebugModeOverlay.kt b/app/src/main/java/exh/log/EHDebugModeOverlay.kt index bf6061bd9..ed938672e 100644 --- a/app/src/main/java/exh/log/EHDebugModeOverlay.kt +++ b/app/src/main/java/exh/log/EHDebugModeOverlay.kt @@ -17,7 +17,7 @@ import androidx.compose.runtime.Composable import androidx.compose.runtime.MutableState import androidx.compose.runtime.RememberObserver import androidx.compose.runtime.getValue -import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.mutableDoubleStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.ui.Alignment @@ -132,7 +132,7 @@ private fun Boolean.asEnabledString() = if (this) "enabled" else "disabled" private class FpsState(private val interval: Int) : Choreographer.FrameCallback, RememberObserver, - MutableState by mutableStateOf(0.0) { + MutableState by mutableDoubleStateOf(0.0) { private val choreographer = Choreographer.getInstance() private var startFrameTimeMillis: Long = 0 private var numFramesRendered = 0 diff --git a/app/src/main/java/exh/log/EnhancedFilePrinter.kt b/app/src/main/java/exh/log/EnhancedFilePrinter.kt index 0bd6fee20..141964eb4 100644 --- a/app/src/main/java/exh/log/EnhancedFilePrinter.kt +++ b/app/src/main/java/exh/log/EnhancedFilePrinter.kt @@ -237,6 +237,7 @@ class EnhancedFilePrinter internal constructor( */ var lastFileName: String? = null private set + /** * Get the current log file. * diff --git a/core/src/main/java/eu/kanade/tachiyomi/network/NetworkHelper.kt b/core/src/main/java/eu/kanade/tachiyomi/network/NetworkHelper.kt index 749c05c9f..7cdbce55d 100755 --- a/core/src/main/java/eu/kanade/tachiyomi/network/NetworkHelper.kt +++ b/core/src/main/java/eu/kanade/tachiyomi/network/NetworkHelper.kt @@ -1,7 +1,6 @@ package eu.kanade.tachiyomi.network import android.content.Context -import eu.kanade.tachiyomi.core.BuildConfig import eu.kanade.tachiyomi.network.interceptor.CloudflareInterceptor import eu.kanade.tachiyomi.network.interceptor.UncaughtExceptionInterceptor import eu.kanade.tachiyomi.network.interceptor.UserAgentInterceptor @@ -16,6 +15,9 @@ import java.util.concurrent.TimeUnit open /* SY <-- */ class NetworkHelper( private val context: Context, private val preferences: NetworkPreferences, + // SY --> + val isDebugBuild: Boolean, + // SY <-- ) { /* SY --> */ @@ -38,7 +40,7 @@ open /* SY <-- */ class NetworkHelper( .addInterceptor(UncaughtExceptionInterceptor()) .addInterceptor(UserAgentInterceptor(::defaultUserAgentProvider)) - if (BuildConfig.DEBUG) { + if (isDebugBuild) { val httpLoggingInterceptor = HttpLoggingInterceptor().apply { level = HttpLoggingInterceptor.Level.HEADERS } diff --git a/data/src/main/java/tachiyomi/data/chapter/ChapterRepositoryImpl.kt b/data/src/main/java/tachiyomi/data/chapter/ChapterRepositoryImpl.kt index 25e93aa14..315b68c41 100644 --- a/data/src/main/java/tachiyomi/data/chapter/ChapterRepositoryImpl.kt +++ b/data/src/main/java/tachiyomi/data/chapter/ChapterRepositoryImpl.kt @@ -131,13 +131,24 @@ class ChapterRepositoryImpl( override suspend fun getMergedChapterByMangaId(mangaId: Long, applyScanlatorFilter: Boolean): List { return handler.awaitList { - chaptersQueries.getMergedChaptersByMangaId(mangaId, applyScanlatorFilter.toLong(), ChapterMapper::mapChapter) + chaptersQueries.getMergedChaptersByMangaId( + mangaId, + applyScanlatorFilter.toLong(), + ChapterMapper::mapChapter, + ) } } - override suspend fun getMergedChapterByMangaIdAsFlow(mangaId: Long, applyScanlatorFilter: Boolean): Flow> { + override suspend fun getMergedChapterByMangaIdAsFlow( + mangaId: Long, + applyScanlatorFilter: Boolean, + ): Flow> { return handler.subscribeToList { - chaptersQueries.getMergedChaptersByMangaId(mangaId, applyScanlatorFilter.toLong(), ChapterMapper::mapChapter) + chaptersQueries.getMergedChaptersByMangaId( + mangaId, + applyScanlatorFilter.toLong(), + ChapterMapper::mapChapter, + ) } } // SY <-- diff --git a/domain/src/main/java/tachiyomi/domain/chapter/interactor/GetMergedChaptersByMangaId.kt b/domain/src/main/java/tachiyomi/domain/chapter/interactor/GetMergedChaptersByMangaId.kt index 592bc1c77..bee09f456 100644 --- a/domain/src/main/java/tachiyomi/domain/chapter/interactor/GetMergedChaptersByMangaId.kt +++ b/domain/src/main/java/tachiyomi/domain/chapter/interactor/GetMergedChaptersByMangaId.kt @@ -21,7 +21,11 @@ class GetMergedChaptersByMangaId( dedupe: Boolean = true, applyScanlatorFilter: Boolean = false, ): List { - return transformMergedChapters(getMergedReferencesById.await(mangaId), getFromDatabase(mangaId, applyScanlatorFilter), dedupe) + return transformMergedChapters( + getMergedReferencesById.await(mangaId), + getFromDatabase(mangaId, applyScanlatorFilter), + dedupe, + ) } suspend fun subscribe( diff --git a/domain/src/main/java/tachiyomi/domain/chapter/repository/ChapterRepository.kt b/domain/src/main/java/tachiyomi/domain/chapter/repository/ChapterRepository.kt index e7a8658bf..a221ebe06 100644 --- a/domain/src/main/java/tachiyomi/domain/chapter/repository/ChapterRepository.kt +++ b/domain/src/main/java/tachiyomi/domain/chapter/repository/ChapterRepository.kt @@ -33,6 +33,9 @@ interface ChapterRepository { suspend fun getMergedChapterByMangaId(mangaId: Long, applyScanlatorFilter: Boolean = false): List - suspend fun getMergedChapterByMangaIdAsFlow(mangaId: Long, applyScanlatorFilter: Boolean = false): Flow> + suspend fun getMergedChapterByMangaIdAsFlow( + mangaId: Long, + applyScanlatorFilter: Boolean = false, + ): Flow> // SY <-- } diff --git a/domain/src/main/java/tachiyomi/domain/storage/service/StorageManager.kt b/domain/src/main/java/tachiyomi/domain/storage/service/StorageManager.kt index 71b3a9ca6..4c4b60549 100644 --- a/domain/src/main/java/tachiyomi/domain/storage/service/StorageManager.kt +++ b/domain/src/main/java/tachiyomi/domain/storage/service/StorageManager.kt @@ -73,6 +73,7 @@ class StorageManager( private const val AUTOMATIC_BACKUPS_PATH = "autobackup" private const val DOWNLOADS_PATH = "downloads" private const val LOCAL_SOURCE_PATH = "local" + // SY --> private const val LOGS_PATH = "logs" // SY <-- diff --git a/source-api/src/commonMain/kotlin/eu/kanade/tachiyomi/source/online/HttpSource.kt b/source-api/src/commonMain/kotlin/eu/kanade/tachiyomi/source/online/HttpSource.kt index d64eb64a8..8a1c009ef 100755 --- a/source-api/src/commonMain/kotlin/eu/kanade/tachiyomi/source/online/HttpSource.kt +++ b/source-api/src/commonMain/kotlin/eu/kanade/tachiyomi/source/online/HttpSource.kt @@ -40,7 +40,7 @@ abstract class HttpSource : CatalogueSource { // SY --> protected val network: NetworkHelper by lazy { val network = Injekt.get() - object : NetworkHelper(Injekt.get(), Injekt.get()) { + object : NetworkHelper(Injekt.get(), Injekt.get(), network.isDebugBuild) { override val client: OkHttpClient get() = delegate?.networkHttpClient ?: network.client .newBuilder() diff --git a/source-api/src/commonMain/kotlin/exh/metadata/metadata/EHentaiSearchMetadata.kt b/source-api/src/commonMain/kotlin/exh/metadata/metadata/EHentaiSearchMetadata.kt index d54b9e794..bb8f06f4f 100644 --- a/source-api/src/commonMain/kotlin/exh/metadata/metadata/EHentaiSearchMetadata.kt +++ b/source-api/src/commonMain/kotlin/exh/metadata/metadata/EHentaiSearchMetadata.kt @@ -106,7 +106,9 @@ class EHentaiSearchMetadata : RaisedSearchMetadata() { getItem(visible) { stringResource(SYMR.strings.visible) }, getItem(language) { stringResource(SYMR.strings.language) }, getItem(translated) { stringResource(SYMR.strings.translated) }, - getItem(size, { MetadataUtil.humanReadableByteCount(it, true) }) { stringResource(SYMR.strings.gallery_size) }, + getItem(size, { MetadataUtil.humanReadableByteCount(it, true) }) { + stringResource(SYMR.strings.gallery_size) + }, getItem(length) { stringResource(SYMR.strings.page_count) }, getItem(favorites) { stringResource(SYMR.strings.total_favorites) }, getItem(ratingCount) { stringResource(SYMR.strings.total_ratings) }, diff --git a/source-api/src/commonMain/kotlin/exh/metadata/metadata/EightMusesSearchMetadata.kt b/source-api/src/commonMain/kotlin/exh/metadata/metadata/EightMusesSearchMetadata.kt index 365807ed5..d44152533 100644 --- a/source-api/src/commonMain/kotlin/exh/metadata/metadata/EightMusesSearchMetadata.kt +++ b/source-api/src/commonMain/kotlin/exh/metadata/metadata/EightMusesSearchMetadata.kt @@ -44,7 +44,9 @@ class EightMusesSearchMetadata : RaisedSearchMetadata() { return with(context) { listOfNotNull( getItem(title) { stringResource(MR.strings.title) }, - getItem(path.nullIfEmpty(), { it.joinToString("/", prefix = "/") }) { stringResource(SYMR.strings.path) }, + getItem(path.nullIfEmpty(), { it.joinToString("/", prefix = "/") }) { + stringResource(SYMR.strings.path) + }, getItem(thumbnailUrl) { stringResource(SYMR.strings.thumbnail_url) }, ) }