From cec86576c1d76c43b292c513cc0fa7399c633dff Mon Sep 17 00:00:00 2001 From: tarsin Date: Sat, 10 Jun 2023 13:56:18 +0800 Subject: [PATCH] Singletonize ReaderPreferences --- .../subscaleview/SubsamplingScaleImageView.kt | 4 +- .../java/com/hippo/ehviewer/EhApplication.kt | 4 -- .../java/com/hippo/ehviewer/image/Image.kt | 4 +- .../tachiyomi/ui/reader/ReaderActivity.kt | 66 +++++++++---------- .../setting/ReaderColorFilterSettings.kt | 2 +- .../reader/setting/ReaderGeneralSettings.kt | 2 +- .../ui/reader/setting/ReaderPreferences.kt | 5 +- .../setting/ReaderReadingModeSettings.kt | 10 +-- .../ui/reader/viewer/ReaderPageImageView.kt | 4 +- .../ui/reader/viewer/pager/PagerConfig.kt | 3 +- .../ui/reader/viewer/webtoon/WebtoonConfig.kt | 3 +- .../viewer/webtoon/WebtoonRecyclerView.kt | 4 +- 12 files changed, 52 insertions(+), 59 deletions(-) diff --git a/app/src/main/java/com/davemorrissey/labs/subscaleview/SubsamplingScaleImageView.kt b/app/src/main/java/com/davemorrissey/labs/subscaleview/SubsamplingScaleImageView.kt index 00082b71b..852d82f55 100644 --- a/app/src/main/java/com/davemorrissey/labs/subscaleview/SubsamplingScaleImageView.kt +++ b/app/src/main/java/com/davemorrissey/labs/subscaleview/SubsamplingScaleImageView.kt @@ -22,7 +22,7 @@ import androidx.annotation.IntDef import com.davemorrissey.labs.subscaleview.decoder.Decoder import com.davemorrissey.labs.subscaleview.decoder.ImageDecoder import com.davemorrissey.labs.subscaleview.provider.InputProvider -import eu.kanade.tachiyomi.ui.reader.ReaderActivity +import eu.kanade.tachiyomi.ui.reader.setting.ReaderPreferences import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Job @@ -463,7 +463,7 @@ open class SubsamplingScaleImageView @JvmOverloads constructor( } override fun onDoubleTap(e: MotionEvent): Boolean { - if (!ReaderActivity.readerPreferences.doubleTapToZoom().get()) return false + if (!ReaderPreferences.doubleTapToZoom().get()) return false if (isZoomEnabled && isReady && vTranslate != null) { // Hacky solution for #15 - after a double tap the GestureDetector gets in a state // where the next fling is ignored, so here we replace it with a new one. diff --git a/app/src/main/java/com/hippo/ehviewer/EhApplication.kt b/app/src/main/java/com/hippo/ehviewer/EhApplication.kt index 5844d4ff1..bdb9e38b6 100644 --- a/app/src/main/java/com/hippo/ehviewer/EhApplication.kt +++ b/app/src/main/java/com/hippo/ehviewer/EhApplication.kt @@ -45,8 +45,6 @@ import com.hippo.ehviewer.ui.keepNoMediaFileStatus import com.hippo.ehviewer.ui.lockObserver import com.hippo.ehviewer.util.ReadableTime import com.hippo.ehviewer.yorozuya.FileUtils -import eu.kanade.tachiyomi.core.preference.AndroidPreferenceStore -import eu.kanade.tachiyomi.ui.reader.setting.ReaderPreferences import eu.kanade.tachiyomi.util.lang.launchIO import eu.kanade.tachiyomi.util.lang.withUIContext import kotlinx.coroutines.DelicateCoroutinesApi @@ -177,8 +175,6 @@ class EhApplication : Application(), ImageLoaderFactory { } } - val readerPreferences by lazy { ReaderPreferences(AndroidPreferenceStore) } - val ehDatabase by lazy { roomDb("eh.db") { allowMainThreadQueries() } } val imageCache by lazy { diff --git a/app/src/main/java/com/hippo/ehviewer/image/Image.kt b/app/src/main/java/com/hippo/ehviewer/image/Image.kt index 3c655b84a..61812a12f 100644 --- a/app/src/main/java/com/hippo/ehviewer/image/Image.kt +++ b/app/src/main/java/com/hippo/ehviewer/image/Image.kt @@ -25,8 +25,8 @@ import android.graphics.drawable.Animatable import android.graphics.drawable.BitmapDrawable import android.graphics.drawable.Drawable import android.os.Build -import com.hippo.ehviewer.EhApplication import com.hippo.ehviewer.R +import eu.kanade.tachiyomi.ui.reader.setting.ReaderPreferences import splitties.init.appCtx import java.nio.ByteBuffer import kotlin.math.min @@ -80,7 +80,7 @@ class Image private constructor(private val src: CloseableSource) { val screenHeight = appCtx.resources.displayMetrics.heightPixels val isWideColorGamut = appCtx.resources.configuration.isScreenWideColorGamut var colorSpace = ColorSpace.get( - if (isWideColorGamut && EhApplication.readerPreferences.wideColorGamut().get()) { + if (isWideColorGamut && ReaderPreferences.wideColorGamut().get()) { ColorSpace.Named.DISPLAY_P3 } else { ColorSpace.Named.SRGB 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 1390f48f2..0040ab6bb 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 @@ -61,7 +61,6 @@ import com.google.android.material.slider.Slider import com.google.android.material.transition.MaterialContainerTransform import com.hippo.ehviewer.AppConfig import com.hippo.ehviewer.BuildConfig -import com.hippo.ehviewer.EhApplication import com.hippo.ehviewer.R import com.hippo.ehviewer.client.EhUrl import com.hippo.ehviewer.client.data.GalleryInfo @@ -81,6 +80,7 @@ import com.hippo.unifile.UniFile import dev.chrisbanes.insetter.applyInsetter import eu.kanade.tachiyomi.ui.reader.model.ReaderPage import eu.kanade.tachiyomi.ui.reader.setting.OrientationType +import eu.kanade.tachiyomi.ui.reader.setting.ReaderPreferences import eu.kanade.tachiyomi.ui.reader.setting.ReaderSettingsSheet import eu.kanade.tachiyomi.ui.reader.setting.ReadingModeType import eu.kanade.tachiyomi.ui.reader.viewer.BaseViewer @@ -300,7 +300,7 @@ class ReaderActivity : EhActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - window.colorMode = if (Image.isWideColorGamut && readerPreferences.wideColorGamut() + window.colorMode = if (Image.isWideColorGamut && ReaderPreferences.wideColorGamut() .get() ) { ActivityInfo.COLOR_MODE_WIDE_COLOR_GAMUT @@ -345,14 +345,14 @@ class ReaderActivity : EhActivity() { mCurrentIndex = if (mPage >= 0) mPage else mGalleryProvider!!.startPage } val viewerMode = - ReadingModeType.fromPreference(readerPreferences.defaultReadingMode().get()) + ReadingModeType.fromPreference(ReaderPreferences.defaultReadingMode().get()) binding.actionReadingMode.setImageResource(viewerMode.iconRes) viewer?.destroy() - viewer = ReadingModeType.toViewer(readerPreferences.defaultReadingMode().get(), this) + viewer = ReadingModeType.toViewer(ReaderPreferences.defaultReadingMode().get(), this) binding.pageSlider.isRTL = viewer is R2LPagerViewer - updateViewerInset(readerPreferences.fullscreen().get()) + updateViewerInset(ReaderPreferences.fullscreen().get()) binding.viewerContainer.removeAllViews() - setOrientation(readerPreferences.defaultOrientationType().get()) + setOrientation(ReaderPreferences.defaultOrientationType().get()) binding.viewerContainer.addView(viewer?.getView()) viewer?.setGalleryProvider(mGalleryProvider!!) moveToPageIndex(mCurrentIndex) @@ -587,8 +587,6 @@ class ReaderActivity : EhActivity() { const val KEY_GALLERY_INFO = "gallery_info" const val KEY_PAGE = "page" const val KEY_CURRENT_INDEX = "current_index" - - val readerPreferences = EhApplication.readerPreferences } // Tachiyomi funcs @@ -629,11 +627,11 @@ class ReaderActivity : EhActivity() { binding.readerMenuBottom.startAnimation(bottomAnimation) } - if (readerPreferences.showPageNumber().get()) { + if (ReaderPreferences.showPageNumber().get()) { config?.setPageNumberVisibility(false) } } else { - if (readerPreferences.fullscreen().get()) { + if (ReaderPreferences.fullscreen().get()) { windowInsetsController.hide(WindowInsetsCompat.Type.systemBars()) windowInsetsController.systemBarsBehavior = WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE @@ -652,7 +650,7 @@ class ReaderActivity : EhActivity() { binding.readerMenuBottom.startAnimation(bottomAnimation) } - if (readerPreferences.showPageNumber().get()) { + if (ReaderPreferences.showPageNumber().get()) { config?.setPageNumberVisibility(true) } } @@ -722,11 +720,11 @@ class ReaderActivity : EhActivity() { setOnClickListener { popupMenu( items = ReadingModeType.values().map { it.flagValue to it.stringRes }, - selectedItemId = readerPreferences.defaultReadingMode().get(), + selectedItemId = ReaderPreferences.defaultReadingMode().get(), ) { val newReadingMode = ReadingModeType.fromPreference(itemId) - readerPreferences.defaultReadingMode().set(newReadingMode.flagValue) + ReaderPreferences.defaultReadingMode().set(newReadingMode.flagValue) setGallery() // updateCropBordersShortcut() @@ -765,11 +763,11 @@ class ReaderActivity : EhActivity() { setOnClickListener { popupMenu( items = OrientationType.values().map { it.flagValue to it.stringRes }, - selectedItemId = readerPreferences.defaultOrientationType().get(), + selectedItemId = ReaderPreferences.defaultOrientationType().get(), ) { val newOrientation = OrientationType.fromPreference(itemId) - readerPreferences.defaultOrientationType().set(newOrientation.flagValue) + ReaderPreferences.defaultOrientationType().set(newOrientation.flagValue) setGallery() } } @@ -921,7 +919,7 @@ class ReaderActivity : EhActivity() { if (newOrientation.flag != requestedOrientation) { requestedOrientation = newOrientation.flag } - updateOrientationShortcut(readerPreferences.defaultOrientationType().get()) + updateOrientationShortcut(ReaderPreferences.defaultOrientationType().get()) } /** @@ -970,7 +968,7 @@ class ReaderActivity : EhActivity() { * Initializes the reader subscriptions. */ init { - readerPreferences.readerTheme().changes() + ReaderPreferences.readerTheme().changes() .onEach { theme -> binding.readerContainer.setBackgroundResource( when (theme) { @@ -983,51 +981,51 @@ class ReaderActivity : EhActivity() { } .launchIn(lifecycleScope) - readerPreferences.showPageNumber().changes() + ReaderPreferences.showPageNumber().changes() .onEach { setPageNumberVisibility(it) } .launchIn(lifecycleScope) - readerPreferences.showReaderSeekbar().changes() + ReaderPreferences.showReaderSeekbar().changes() .onEach { setReaderSeekbarVisibility(it) } .launchIn(lifecycleScope) - readerPreferences.trueColor().changes() + ReaderPreferences.trueColor().changes() .onEach { setTrueColor(it) } .launchIn(lifecycleScope) - readerPreferences.cutoutShort().changes() + ReaderPreferences.cutoutShort().changes() .onEach { setCutoutShort(it) } .launchIn(lifecycleScope) - readerPreferences.keepScreenOn().changes() + ReaderPreferences.keepScreenOn().changes() .onEach { setKeepScreenOn(it) } .launchIn(lifecycleScope) - readerPreferences.customBrightness().changes() + ReaderPreferences.customBrightness().changes() .onEach { setCustomBrightness(it) } .launchIn(lifecycleScope) - readerPreferences.colorFilter().changes() + ReaderPreferences.colorFilter().changes() .onEach { setColorFilter(it) } .launchIn(lifecycleScope) - readerPreferences.colorFilterMode().changes() - .onEach { setColorFilter(readerPreferences.colorFilter().get()) } + ReaderPreferences.colorFilterMode().changes() + .onEach { setColorFilter(ReaderPreferences.colorFilter().get()) } .launchIn(lifecycleScope) merge( - readerPreferences.grayscale().changes(), - readerPreferences.invertedColors().changes(), + ReaderPreferences.grayscale().changes(), + ReaderPreferences.invertedColors().changes(), ) .onEach { setLayerPaint( - readerPreferences.grayscale().get(), - readerPreferences.invertedColors().get(), + ReaderPreferences.grayscale().get(), + ReaderPreferences.invertedColors().get(), ) } .launchIn(lifecycleScope) - readerPreferences.fullscreen().changes() + ReaderPreferences.fullscreen().changes() .onEach { WindowCompat.setDecorFitsSystemWindows(window, !it) updateViewerInset(it) @@ -1091,7 +1089,7 @@ class ReaderActivity : EhActivity() { @OptIn(FlowPreview::class) private fun setCustomBrightness(enabled: Boolean) { if (enabled) { - readerPreferences.customBrightnessValue().changes() + ReaderPreferences.customBrightnessValue().changes() .sample(100) .onEach { setCustomBrightnessValue(it) } .launchIn(lifecycleScope) @@ -1106,7 +1104,7 @@ class ReaderActivity : EhActivity() { @OptIn(FlowPreview::class) private fun setColorFilter(enabled: Boolean) { if (enabled) { - readerPreferences.colorFilterValue().changes() + ReaderPreferences.colorFilterValue().changes() .sample(100) .onEach { setColorFilterValue(it) } .launchIn(lifecycleScope) @@ -1152,7 +1150,7 @@ class ReaderActivity : EhActivity() { */ private fun setColorFilterValue(value: Int) { binding.colorOverlay.isVisible = true - binding.colorOverlay.setFilterColor(value, readerPreferences.colorFilterMode().get()) + binding.colorOverlay.setFilterColor(value, ReaderPreferences.colorFilterMode().get()) } private fun setLayerPaint(grayscale: Boolean, invertedColors: Boolean) { diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderColorFilterSettings.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderColorFilterSettings.kt index 03761804b..44ab039ae 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderColorFilterSettings.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderColorFilterSettings.kt @@ -28,7 +28,7 @@ import kotlinx.coroutines.flow.sample class ReaderColorFilterSettings @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null) : NestedScrollView(context, attrs) { - private val readerPreferences: ReaderPreferences = ReaderActivity.readerPreferences + private val readerPreferences: ReaderPreferences = ReaderPreferences private val binding = ReaderColorFilterSettingsBinding.inflate(LayoutInflater.from(context), this, false) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderGeneralSettings.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderGeneralSettings.kt index 48300237a..ffec18c1c 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderGeneralSettings.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderGeneralSettings.kt @@ -19,7 +19,7 @@ import kotlinx.coroutines.flow.launchIn class ReaderGeneralSettings @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null) : NestedScrollView(context, attrs) { - private val readerPreferences: ReaderPreferences = ReaderActivity.readerPreferences + private val readerPreferences: ReaderPreferences = ReaderPreferences private val binding = ReaderGeneralSettingsBinding.inflate(LayoutInflater.from(context), this, false) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt index 8587fb323..649a5ee5f 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt @@ -1,10 +1,11 @@ package eu.kanade.tachiyomi.ui.reader.setting -import eu.kanade.tachiyomi.core.preference.PreferenceStore +import eu.kanade.tachiyomi.core.preference.AndroidPreferenceStore import eu.kanade.tachiyomi.core.preference.getEnum import eu.kanade.tachiyomi.data.preference.PreferenceValues -class ReaderPreferences(private val preferenceStore: PreferenceStore) { +object ReaderPreferences { + private val preferenceStore = AndroidPreferenceStore // region General diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderReadingModeSettings.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderReadingModeSettings.kt index f9c8b4232..fcc7784df 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderReadingModeSettings.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderReadingModeSettings.kt @@ -25,7 +25,7 @@ class ReaderReadingModeSettings @JvmOverloads constructor( ) : NestedScrollView(context, attrs) { - private val readerPreferences: ReaderPreferences = ReaderActivity.readerPreferences + private val readerPreferences: ReaderPreferences = ReaderPreferences private val binding = ReaderReadingModeSettingsBinding.inflate(LayoutInflater.from(context), this, false) @@ -47,10 +47,10 @@ class ReaderReadingModeSettings @JvmOverloads constructor( private fun initGeneralPreferences() { binding.viewer.onItemSelectedListener = { position -> val readingModeType = ReadingModeType.fromSpinner(position) - ReaderActivity.readerPreferences.defaultReadingMode().set(readingModeType.flagValue) + ReaderPreferences.defaultReadingMode().set(readingModeType.flagValue) (context as ReaderActivity).setGallery() - val mangaViewer = ReaderActivity.readerPreferences.defaultReadingMode().get() + val mangaViewer = ReaderPreferences.defaultReadingMode().get() if (mangaViewer == ReadingModeType.WEBTOON.flagValue || mangaViewer == ReadingModeType.CONTINUOUS_VERTICAL.flagValue) { initWebtoonPreferences() } else { @@ -58,7 +58,7 @@ class ReaderReadingModeSettings @JvmOverloads constructor( } } binding.viewer.setSelection( - ReaderActivity.readerPreferences.defaultReadingMode().get() + ReaderPreferences.defaultReadingMode().get() .let { ReadingModeType.fromPreference(it).prefValue }, ) @@ -68,7 +68,7 @@ class ReaderReadingModeSettings @JvmOverloads constructor( (context as ReaderActivity).setGallery() } binding.rotationMode.setSelection( - ReaderActivity.readerPreferences.defaultOrientationType().get() + ReaderPreferences.defaultOrientationType().get() .let { OrientationType.fromPreference(it).prefValue }, ) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ReaderPageImageView.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ReaderPageImageView.kt index 7f715f361..c54e70681 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ReaderPageImageView.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ReaderPageImageView.kt @@ -23,7 +23,7 @@ import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView.Companion.EASE_OUT_QUAD import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView.Companion.SCALE_TYPE_CENTER_INSIDE import com.github.chrisbanes.photoview.PhotoView -import eu.kanade.tachiyomi.ui.reader.ReaderActivity +import eu.kanade.tachiyomi.ui.reader.setting.ReaderPreferences import eu.kanade.tachiyomi.ui.reader.viewer.webtoon.WebtoonSubsamplingImageView import eu.kanade.tachiyomi.util.system.animatorDurationScale import eu.kanade.tachiyomi.util.view.isVisibleOnScreen @@ -278,7 +278,7 @@ open class ReaderPageImageView @JvmOverloads constructor( setOnDoubleTapListener( object : GestureDetector.SimpleOnGestureListener() { override fun onDoubleTap(e: MotionEvent): Boolean { - if (ReaderActivity.readerPreferences.doubleTapToZoom().get()) { + if (ReaderPreferences.doubleTapToZoom().get()) { if (scale > 1F) { setScale(1F, e.x, e.y, true) } else { diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerConfig.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerConfig.kt index 9b17e51db..a531e15c7 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerConfig.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerConfig.kt @@ -1,6 +1,5 @@ package eu.kanade.tachiyomi.ui.reader.viewer.pager -import eu.kanade.tachiyomi.ui.reader.ReaderActivity import eu.kanade.tachiyomi.ui.reader.setting.ReaderPreferences import eu.kanade.tachiyomi.ui.reader.viewer.ReaderPageImageView import eu.kanade.tachiyomi.ui.reader.viewer.ViewerConfig @@ -21,7 +20,7 @@ import kotlinx.coroutines.flow.onEach class PagerConfig( private val viewer: PagerViewer, scope: CoroutineScope, - readerPreferences: ReaderPreferences = ReaderActivity.readerPreferences, + readerPreferences: ReaderPreferences = ReaderPreferences, ) : ViewerConfig(readerPreferences, scope) { var theme = readerPreferences.readerTheme().get() diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonConfig.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonConfig.kt index 9bb4b35a0..4e9bee8e8 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonConfig.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonConfig.kt @@ -1,6 +1,5 @@ package eu.kanade.tachiyomi.ui.reader.viewer.webtoon -import eu.kanade.tachiyomi.ui.reader.ReaderActivity import eu.kanade.tachiyomi.ui.reader.setting.ReaderPreferences import eu.kanade.tachiyomi.ui.reader.viewer.ViewerConfig import eu.kanade.tachiyomi.ui.reader.viewer.ViewerNavigation @@ -20,7 +19,7 @@ import kotlinx.coroutines.flow.onEach */ class WebtoonConfig( scope: CoroutineScope, - readerPreferences: ReaderPreferences = ReaderActivity.readerPreferences, + readerPreferences: ReaderPreferences = ReaderPreferences, ) : ViewerConfig(readerPreferences, scope) { var themeChangedListener: (() -> Unit)? = null diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonRecyclerView.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonRecyclerView.kt index a1abde749..9d37d2404 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonRecyclerView.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonRecyclerView.kt @@ -11,7 +11,7 @@ import android.view.animation.DecelerateInterpolator import androidx.core.animation.doOnEnd import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView -import eu.kanade.tachiyomi.ui.reader.ReaderActivity +import eu.kanade.tachiyomi.ui.reader.setting.ReaderPreferences import eu.kanade.tachiyomi.ui.reader.viewer.GestureDetectorWithLongTap import kotlin.math.abs @@ -209,7 +209,7 @@ class WebtoonRecyclerView @JvmOverloads constructor( } override fun onDoubleTap(ev: MotionEvent): Boolean { - if (ReaderActivity.readerPreferences.doubleTapToZoom().get()) detector.isDoubleTapping = true + if (ReaderPreferences.doubleTapToZoom().get()) detector.isDoubleTapping = true return false }