Merge light and dark themes (#5470)

* Merge AMOLED and regular dark themes

This allows all variants of dark themes to use black backgrounds as a
separate preference.

* Merge light and dark themes

* Fix ReaderSeekBar color on Dark Blue theme

* Color fixes

* Fix Dark Blue bars ripple

* Simplify night mode check
This commit is contained in:
Ivan Iskandar
2021-07-02 19:44:04 +07:00
committed by GitHub
parent 82f3677168
commit 0eadc028b6
71 changed files with 408 additions and 785 deletions
@@ -44,7 +44,7 @@ import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.preference.toggle
import eu.kanade.tachiyomi.databinding.ReaderActivityBinding
import eu.kanade.tachiyomi.ui.base.activity.BaseRxActivity
import eu.kanade.tachiyomi.ui.base.activity.BaseThemedActivity
import eu.kanade.tachiyomi.ui.base.activity.BaseThemedActivity.Companion.applyThemePreferences
import eu.kanade.tachiyomi.ui.main.MainActivity
import eu.kanade.tachiyomi.ui.manga.MangaController
import eu.kanade.tachiyomi.ui.reader.ReaderPresenter.SetAsCoverResult.AddToLibraryFirst
@@ -61,6 +61,7 @@ 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.hasDisplayCutout
import eu.kanade.tachiyomi.util.system.isNightMode
import eu.kanade.tachiyomi.util.system.toast
import eu.kanade.tachiyomi.util.view.popupMenu
import eu.kanade.tachiyomi.util.view.setTooltip
@@ -138,7 +139,7 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>()
* Called when the activity is created. Initializes the presenter and configuration.
*/
override fun onCreate(savedInstanceState: Bundle?) {
setTheme(BaseThemedActivity.getThemeResourceId(preferences))
applyThemePreferences(preferences)
super.onCreate(savedInstanceState)
binding = ReaderActivityBinding.inflate(layoutInflater)
@@ -353,7 +354,7 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>()
initBottomShortcuts()
val alpha = if (preferences.isDarkMode()) 230 else 242 // 90% dark 95% light
val alpha = if (isNightMode()) 230 else 242 // 90% dark 95% light
val toolbarColor = ColorUtils.setAlphaComponent(getThemeColor(R.attr.colorToolbar), alpha)
listOf(
binding.toolbarBottom,
@@ -852,7 +853,7 @@ class ReaderActivity : BaseRxActivity<ReaderActivityBinding, ReaderPresenter>()
binding.readerContainer.setBackgroundResource(
when (preferences.readerTheme().get()) {
0 -> android.R.color.white
2 -> R.color.background_dark
2 -> R.color.reader_background_dark
else -> android.R.color.black
}
)
@@ -1,10 +1,13 @@
package eu.kanade.tachiyomi.ui.reader
import android.content.Context
import android.content.res.ColorStateList
import android.graphics.Canvas
import android.util.AttributeSet
import android.view.MotionEvent
import androidx.appcompat.widget.AppCompatSeekBar
import com.mikepenz.aboutlibraries.util.getThemeColor
import eu.kanade.tachiyomi.R
/**
* Seekbar to show current chapter progress.
@@ -41,4 +44,12 @@ class ReaderSeekBar @JvmOverloads constructor(
}
return super.onTouchEvent(event)
}
init {
// Set color to onPrimary when ColoredBars theme is applied
if (context.getThemeColor(R.attr.colorToolbar) == context.getThemeColor(R.attr.colorPrimary)) {
thumbTintList = ColorStateList.valueOf(context.getThemeColor(R.attr.colorOnPrimary))
progressTintList = thumbTintList
}
}
}