From fb01b547de22182c241d986dc45dbe53709ea99c Mon Sep 17 00:00:00 2001 From: arkon Date: Tue, 30 Mar 2021 18:27:09 -0400 Subject: [PATCH] Add icon for crop border shortcut off state (cherry picked from commit 4054f2a6a0b627ec87a18519da3e169f41413ca4) # Conflicts: # app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt # app/src/main/res/layout/reader_activity.xml --- .../tachiyomi/ui/reader/ReaderActivity.kt | 46 ++++++++++++++++--- .../main/res/drawable/ic_crop_off_24dp.xml | 18 ++++++++ 2 files changed, 58 insertions(+), 6 deletions(-) create mode 100644 app/src/main/res/drawable/ic_crop_off_24dp.xml diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt index d71ce5a3b..a82dc5d3c 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt @@ -451,7 +451,8 @@ class ReaderActivity : BaseRxActivity() ReaderSettingsSheet(this).show() } - /*with(binding.actionReaderMode) { + // Reading mode + /*with(binding.actionReadingMode) { setTooltip(R.string.viewer) setOnClickListener { @@ -460,10 +461,13 @@ class ReaderActivity : BaseRxActivity() presenter.setMangaViewer(newReadingMode.prefValue) menuToggleToast?.cancel() - menuToggleToast = toast(newReadingMode.stringRes) + if (!preferences.showReadingMode()) { + menuToggleToast = toast(newReadingMode.stringRes) + } } } + // Rotation with(binding.actionRotation) { setTooltip(R.string.pref_rotation_type) @@ -479,12 +483,10 @@ class ReaderActivity : BaseRxActivity() } } preferences.rotation().asImmediateFlow { updateRotationShortcut(it) } - .onEach { - updateRotationShortcut(it) - } .launchIn(lifecycleScope) */ + // Crop borders with(binding.actionCropBorders) { setTooltip(R.string.pref_crop_borders) @@ -504,7 +506,15 @@ class ReaderActivity : BaseRxActivity() } } } + updateCropBordersShortcut() + listOf(preferences.cropBorders(), preferences.cropBordersWebtoon() /* SY --> */, preferences.cropBordersContinuesVertical()/* SY <-- */) + .forEach { pref -> + pref.asFlow() + .onEach { updateCropBordersShortcut() } + .launchIn(lifecycleScope) + } + // Settings sheet with(binding.actionSettings) { setTooltip(R.string.action_settings) @@ -710,6 +720,30 @@ class ReaderActivity : BaseRxActivity() binding.actionRotation.setImageResource(orientation.iconRes) }*/ + private fun updateCropBordersShortcut() { + val mangaViewer = presenter.getMangaViewer() + val isPagerType = ReadingModeType.isPagerType(mangaViewer) + val enabled = if (isPagerType) { + preferences.cropBorders().get() + } else { + // SY --> + if (ReadingModeType.fromPreference(mangaViewer) == ReadingModeType.CONTINUOUS_VERTICAL) { + preferences.cropBordersContinuesVertical().get() + } else { + preferences.cropBordersWebtoon().get() + } + // SY <-- + } + + binding.actionCropBorders.setImageResource( + if (enabled) { + R.drawable.ic_crop_24dp + } else { + R.drawable.ic_crop_off_24dp + } + ) + } + /** * Sets the visibility of the menu according to [visible] and with an optional parameter to * [animate] the views. @@ -830,7 +864,7 @@ class ReaderActivity : BaseRxActivity() val prevViewer = viewer /*val viewerMode = ReadingModeType.fromPreference(presenter.getMangaViewer(resolveDefault = false)) - binding.actionReaderMode.setImageResource(viewerMode.iconRes)*/ + binding.actionReadingMode.setImageResource(viewerMode.iconRes)*/ val newViewer = when (presenter.getMangaViewer()) { ReadingModeType.LEFT_TO_RIGHT.prefValue -> L2RPagerViewer(this) diff --git a/app/src/main/res/drawable/ic_crop_off_24dp.xml b/app/src/main/res/drawable/ic_crop_off_24dp.xml new file mode 100644 index 000000000..5d234a0b0 --- /dev/null +++ b/app/src/main/res/drawable/ic_crop_off_24dp.xml @@ -0,0 +1,18 @@ + + + + + +