From 57dde4c922d2acf14041637e9e18df7794b996e7 Mon Sep 17 00:00:00 2001 From: Jobobby04 Date: Wed, 2 Jun 2021 14:09:19 -0400 Subject: [PATCH] Refactor show history and updates buttons --- .../data/preference/PreferenceKeys.kt | 4 ++-- .../data/preference/PreferencesHelper.kt | 4 ++-- .../process/MigrationListController.kt | 2 +- .../kanade/tachiyomi/ui/main/MainActivity.kt | 18 ++++++++++++++---- .../kanade/tachiyomi/ui/more/MoreController.kt | 4 ++-- .../tachiyomi/ui/reader/ReaderPresenter.kt | 2 +- .../ui/setting/SettingsGeneralController.kt | 4 ++-- .../util/chapter/ChapterSourceSync.kt | 8 ++++---- .../main/java/exh/eh/EHentaiUpdateHelper.kt | 2 +- .../main/java/exh/md/handlers/MangaHandler.kt | 4 ++-- 10 files changed, 31 insertions(+), 21 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt index 42958343e..fc973810e 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt @@ -379,9 +379,9 @@ object PreferenceKeys { const val bottomBarLabels = "pref_show_bottom_bar_labels" - const val hideUpdatesButton = "pref_hide_updates_button" + const val showNavUpdates = "pref_show_updates_button" - const val hideHistoryButton = "pref_hide_history_button" + const val showNavHistory = "pref_show_history_button" const val pageLayout = "page_layout" diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt index f47aedb5e..bd6b69a9e 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt @@ -494,9 +494,9 @@ class PreferencesHelper(val context: Context) { fun bottomBarLabels() = flowPrefs.getBoolean(Keys.bottomBarLabels, true) - fun hideUpdatesButton() = flowPrefs.getBoolean(Keys.hideUpdatesButton, false) + fun showNavUpdates() = flowPrefs.getBoolean(Keys.showNavUpdates, true) - fun hideHistoryButton() = flowPrefs.getBoolean(Keys.hideHistoryButton, false) + fun showNavHistory() = flowPrefs.getBoolean(Keys.showNavHistory, true) fun pageLayout() = flowPrefs.getInt(Keys.pageLayout, PagerConfig.PageLayout.AUTOMATIC) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/advanced/process/MigrationListController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/advanced/process/MigrationListController.kt index 25ba5aad9..af93bfc08 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/advanced/process/MigrationListController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/advanced/process/MigrationListController.kt @@ -223,7 +223,7 @@ class MigrationListController(bundle: Bundle? = null) : } else { source.getChapterList(localManga.toMangaInfo()) }.map { it.toSChapter() } - } catch (e: java.lang.Exception) { + } catch (e: Exception) { Timber.e(e) emptyList() } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt index 11d7861b9..5ecd9f2b0 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt @@ -5,6 +5,7 @@ import android.content.Intent import android.os.Bundle import android.os.Looper import android.view.Gravity +import android.view.Menu import android.view.View import android.view.ViewGroup import android.widget.Toast @@ -525,10 +526,9 @@ class MainActivity : BaseViewBindingActivity() { if (visible) { if (collapse) { bottomNavAnimator?.expand() - val navUpdates = it.menu.findItem(R.id.nav_updates) - navUpdates.isVisible = !preferences.hideUpdatesButton().get() - val navHistory = it.menu.findItem(R.id.nav_history) - navHistory.isVisible = !preferences.hideHistoryButton().get() + // SY --> + updateNavMenu(it.menu) + // SY <-- } bottomViewNavigationBehavior?.slideUp(it) @@ -545,9 +545,19 @@ class MainActivity : BaseViewBindingActivity() { private fun showSideNav(visible: Boolean) { binding.sideNav?.let { it.isVisible = visible + // SY --> + updateNavMenu(it.menu) + // SY <-- } } + // SY --> + private fun updateNavMenu(menu: Menu) { + menu.findItem(R.id.nav_updates).isVisible = preferences.showNavUpdates().get() + menu.findItem(R.id.nav_history).isVisible = preferences.showNavHistory().get() + } + // SY <-- + /** * Used to manually offset a view within the activity's child views that might be cut off due to * the collapsing AppBarLayout. diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt index 363eb2147..77e6f03c8 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt @@ -76,7 +76,7 @@ class MoreController : } preferenceCategory { - if (preferences.hideUpdatesButton().get()) { + if (!preferences.showNavUpdates().get()) { preference { titleRes = R.string.label_recent_updates iconRes = R.drawable.ic_updates_outline_24dp @@ -86,7 +86,7 @@ class MoreController : } } } - if (preferences.hideHistoryButton().get()) { + if (!preferences.showNavHistory().get()) { preference { titleRes = R.string.label_recent_manga iconRes = R.drawable.ic_history_24dp diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt index 0fca7c0ad..52b08502f 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt @@ -451,7 +451,7 @@ class ReaderPresenter( val shouldTrack = !incognitoMode || hasTrackers if ( (selectedChapter.pages?.lastIndex == page.index && shouldTrack) || - (hasExtraPage && selectedChapter.pages?.lastIndex?.minus(1) == page.index && shouldTrack) + (hasExtraPage && selectedChapter.pages?.lastIndex?.minus(1) == page.index && shouldTrack) ) { selectedChapter.chapter.read = true // SY --> diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsGeneralController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsGeneralController.kt index 730e24de8..dcf344f4b 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsGeneralController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsGeneralController.kt @@ -61,12 +61,12 @@ class SettingsGeneralController : SettingsController() { } } switchPreference { - key = Keys.hideUpdatesButton + key = Keys.showNavUpdates titleRes = R.string.pref_hide_updates_button defaultValue = false } switchPreference { - key = Keys.hideHistoryButton + key = Keys.showNavHistory titleRes = R.string.pref_hide_history_button defaultValue = false } diff --git a/app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterSourceSync.kt b/app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterSourceSync.kt index a613be43a..78c034b09 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterSourceSync.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterSourceSync.kt @@ -136,10 +136,10 @@ fun syncChaptersWithSource( if (manga.isEhBasedManga()) { val finalAdded = toAdd.subtract(readded) if (finalAdded.isNotEmpty()) { - val max = dbChapters.maxByOrNull { it.last_page_read } - if (max != null && max.last_page_read > 0) { - for (chapter in finalAdded) { - chapter.last_page_read = max.last_page_read + val max = dbChapters.maxOfOrNull { it.last_page_read } + if (max != null && max > 0) { + finalAdded.forEach { chapter -> + chapter.last_page_read = max } } } diff --git a/app/src/main/java/exh/eh/EHentaiUpdateHelper.kt b/app/src/main/java/exh/eh/EHentaiUpdateHelper.kt index f0be3288d..c0e12b36e 100644 --- a/app/src/main/java/exh/eh/EHentaiUpdateHelper.kt +++ b/app/src/main/java/exh/eh/EHentaiUpdateHelper.kt @@ -110,7 +110,7 @@ class EHentaiUpdateHelper(context: Context) { .fold(accepted.chapters) { curChapters, chapter -> val existing = curChapters.find { it.url == chapter.url } - val newLastPageRead = chainsAsChapters.maxByOrNull { it.last_page_read }?.last_page_read + val newLastPageRead = chainsAsChapters.maxOfOrNull { it.last_page_read } if (existing != null) { existing.read = existing.read || chapter.read diff --git a/app/src/main/java/exh/md/handlers/MangaHandler.kt b/app/src/main/java/exh/md/handlers/MangaHandler.kt index fe13fe091..8406c89a8 100644 --- a/app/src/main/java/exh/md/handlers/MangaHandler.kt +++ b/app/src/main/java/exh/md/handlers/MangaHandler.kt @@ -118,14 +118,14 @@ class MangaHandler( suspend fun getTrackingInfo(track: Track): Pair { return withIOContext { - val metadata = async { + /*val metadata = async { val mangaUrl = MdUtil.buildMangaUrl(MdUtil.getMangaId(track.tracking_url)) val manga = MangaInfo(mangaUrl, track.title) val response = client.newCall(mangaRequest(manga)).await() val metadata = MangaDexSearchMetadata() apiMangaParser.parseIntoMetadata(metadata, response, emptyList()) metadata - } + }*/ val remoteTrack = async { followsHandler.fetchTrackingInfo(track.tracking_url) }