Przeglądaj źródła

Revert "Use correct color for reader loading indicator (#5645)" (fixes #5669)

This reverts commit 7a1b6142df4951e8d4ff5bdcc555eb3d393a9559.
arkon 3 lat temu
rodzic
commit
a4eba50cfd

+ 3 - 15
app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt

@@ -16,7 +16,6 @@ import android.graphics.Paint
 import android.graphics.PorterDuff
 import android.os.Build
 import android.os.Bundle
-import android.view.Gravity
 import android.view.KeyEvent
 import android.view.Menu
 import android.view.MenuItem
@@ -25,7 +24,6 @@ import android.view.View.LAYER_TYPE_HARDWARE
 import android.view.WindowManager
 import android.view.animation.Animation
 import android.view.animation.AnimationUtils
-import android.widget.FrameLayout
 import android.widget.SeekBar
 import android.widget.Toast
 import androidx.core.graphics.ColorUtils
@@ -34,7 +32,6 @@ import androidx.core.view.WindowInsetsCompat
 import androidx.core.view.WindowInsetsControllerCompat
 import androidx.core.view.isInvisible
 import androidx.core.view.isVisible
-import androidx.core.view.updateLayoutParams
 import androidx.lifecycle.lifecycleScope
 import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView
 import com.google.android.material.shape.MaterialShapeDrawable
@@ -62,11 +59,9 @@ import eu.kanade.tachiyomi.ui.reader.setting.OrientationType
 import eu.kanade.tachiyomi.ui.reader.setting.ReaderSettingsSheet
 import eu.kanade.tachiyomi.ui.reader.setting.ReadingModeType
 import eu.kanade.tachiyomi.ui.reader.viewer.BaseViewer
-import eu.kanade.tachiyomi.ui.reader.viewer.ReaderProgressIndicator
 import eu.kanade.tachiyomi.ui.reader.viewer.pager.R2LPagerViewer
 import eu.kanade.tachiyomi.util.storage.getUriCompat
 import eu.kanade.tachiyomi.util.system.GLUtil
-import eu.kanade.tachiyomi.util.system.createReaderThemeContext
 import eu.kanade.tachiyomi.util.system.hasDisplayCutout
 import eu.kanade.tachiyomi.util.system.isNightMode
 import eu.kanade.tachiyomi.util.system.toast
@@ -142,8 +137,6 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>()
 
     private val windowInsetsController by lazy { WindowInsetsControllerCompat(window, binding.root) }
 
-    private var loadingIndicator: ReaderProgressIndicator? = null
-
     var isScrollingThroughPages = false
         private set
 
@@ -607,13 +600,8 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>()
             binding.rightChapter.setTooltip(R.string.action_next_chapter)
         }
 
-        val loadingIndicatorContext = createReaderThemeContext(preferences.readerTheme().get())
-        loadingIndicator = ReaderProgressIndicator(loadingIndicatorContext).apply {
-            updateLayoutParams<FrameLayout.LayoutParams> {
-                gravity = Gravity.CENTER
-            }
-        }
-        binding.readerContainer.addView(loadingIndicator)
+        binding.pleaseWait.isVisible = true
+        binding.pleaseWait.startAnimation(AnimationUtils.loadAnimation(this, R.anim.fade_in_long))
     }
 
     private fun showReadingModeToast(mode: Int) {
@@ -632,7 +620,7 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>()
      * hides or disables the reader prev/next buttons if there's a prev or next chapter
      */
     fun setChapters(viewerChapters: ViewerChapters) {
-        binding.readerContainer.removeView(loadingIndicator)
+        binding.pleaseWait.isVisible = false
         viewer?.setChapters(viewerChapters)
         binding.toolbar.subtitle = viewerChapters.currChapter.chapter.name
 

+ 1 - 10
app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerConfig.kt

@@ -23,9 +23,6 @@ class PagerConfig(
     preferences: PreferencesHelper = Injekt.get()
 ) : ViewerConfig(preferences, scope) {
 
-    var theme = preferences.readerTheme().get()
-        private set
-
     var automaticBackground = false
         private set
 
@@ -42,13 +39,7 @@ class PagerConfig(
 
     init {
         preferences.readerTheme()
-            .register(
-                {
-                    theme = it
-                    automaticBackground = it == 3
-                },
-                { imagePropertyChangedListener?.invoke() }
-            )
+            .register({ automaticBackground = it == 3 }, { imagePropertyChangedListener?.invoke() })
 
         preferences.imageScaleType()
             .register({ imageScaleType = it }, { imagePropertyChangedListener?.invoke() })

+ 5 - 8
app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt

@@ -30,7 +30,6 @@ import eu.kanade.tachiyomi.ui.reader.viewer.ReaderProgressIndicator
 import eu.kanade.tachiyomi.ui.reader.viewer.pager.PagerConfig.ZoomType
 import eu.kanade.tachiyomi.ui.webview.WebViewActivity
 import eu.kanade.tachiyomi.util.system.ImageUtil
-import eu.kanade.tachiyomi.util.system.createReaderThemeContext
 import eu.kanade.tachiyomi.util.system.dpToPx
 import eu.kanade.tachiyomi.widget.ViewPagerAdapter
 import rx.Observable
@@ -59,7 +58,11 @@ class PagerPageHolder(
     /**
      * Loading progress bar to indicate the current progress.
      */
-    private val progressIndicator: ReaderProgressIndicator
+    private val progressIndicator = ReaderProgressIndicator(context).apply {
+        updateLayoutParams<LayoutParams> {
+            gravity = Gravity.CENTER
+        }
+    }
 
     /**
      * Image view that supports subsampling on zoom.
@@ -115,12 +118,6 @@ class PagerPageHolder(
     }
 
     init {
-        val indicatorContext = context.createReaderThemeContext(viewer.config.theme)
-        progressIndicator = ReaderProgressIndicator(indicatorContext).apply {
-            updateLayoutParams<LayoutParams> {
-                gravity = Gravity.CENTER
-            }
-        }
         addView(progressIndicator)
         observeStatus()
         viewer.activity.addOnMenuVisibilityListener(visibilityListener)

+ 0 - 6
app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonConfig.kt

@@ -28,9 +28,6 @@ class WebtoonConfig(
     var sidePadding = 0
         private set
 
-    var theme = preferences.readerTheme().get()
-        private set
-
     init {
         preferences.cropBordersWebtoon()
             .register({ imageCropBorders = it }, { imagePropertyChangedListener?.invoke() })
@@ -53,9 +50,6 @@ class WebtoonConfig(
 
         preferences.dualPageInvertWebtoon()
             .register({ dualPageInvert = it }, { imagePropertyChangedListener?.invoke() })
-
-        preferences.readerTheme()
-            .register({ theme = it }, { imagePropertyChangedListener?.invoke() })
     }
 
     override var navigator: ViewerNavigation = defaultNavigation()

+ 1 - 3
app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonPageHolder.kt

@@ -27,7 +27,6 @@ import eu.kanade.tachiyomi.ui.reader.model.ReaderPage
 import eu.kanade.tachiyomi.ui.reader.viewer.ReaderProgressIndicator
 import eu.kanade.tachiyomi.ui.webview.WebViewActivity
 import eu.kanade.tachiyomi.util.system.ImageUtil
-import eu.kanade.tachiyomi.util.system.createReaderThemeContext
 import eu.kanade.tachiyomi.util.system.dpToPx
 import rx.Observable
 import rx.Subscription
@@ -346,8 +345,7 @@ class WebtoonPageHolder(
         progressContainer = FrameLayout(context)
         frame.addView(progressContainer, MATCH_PARENT, parentHeight)
 
-        val indicatorContext = context.createReaderThemeContext(viewer.config.theme)
-        val progress = ReaderProgressIndicator(indicatorContext).apply {
+        val progress = ReaderProgressIndicator(context).apply {
             updateLayoutParams<FrameLayout.LayoutParams> {
                 gravity = Gravity.CENTER_HORIZONTAL
                 updateMargins(top = parentHeight / 4)

+ 0 - 21
app/src/main/java/eu/kanade/tachiyomi/util/system/ContextExtensions.kt

@@ -284,24 +284,3 @@ fun Context.isTablet(): Boolean {
 fun Context.isNightMode(): Boolean {
     return resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK == Configuration.UI_MODE_NIGHT_YES
 }
-
-/**
- * Creates night mode Context depending on reader theme/background
- */
-fun Context.createReaderThemeContext(readerThemeSelected: Int): Context {
-    val isDarkBackground = when (readerThemeSelected) {
-        1, 2 -> true // Black, Gray
-        3 -> isNightMode() // Automatic bg uses activity background by default
-        else -> false // White
-    }
-    val expected = if (isDarkBackground) Configuration.UI_MODE_NIGHT_YES else Configuration.UI_MODE_NIGHT_NO
-    if (resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK != expected) {
-        val overrideConfig = Configuration(resources.configuration).apply {
-            uiMode = (uiMode and Configuration.UI_MODE_NIGHT_MASK.inv()) or expected
-        }
-        return createConfigurationContext(overrideConfig).also {
-            it.theme.setTo(theme)
-        }
-    }
-    return this
-}

+ 9 - 0
app/src/main/res/layout/reader_activity.xml

@@ -15,6 +15,15 @@
             android:layout_width="match_parent"
             android:layout_height="match_parent" />
 
+        <com.google.android.material.progressindicator.CircularProgressIndicator
+            android:id="@+id/please_wait"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:indeterminate="true"
+            android:visibility="gone"
+            tools:visibility="visible" />
+
         <eu.kanade.tachiyomi.ui.reader.PageIndicatorTextView
             android:id="@+id/page_number"
             style="@style/TextAppearance.Regular.Caption"