0
0
mirror of https://github.com/ankidroid/Anki-Android.git synced 2024-09-19 19:42:17 +02:00

refactor: move status bar color change

This commit is contained in:
Robozinho 2024-08-17 14:19:14 -03:00 committed by Brayan Oliveira
parent 91b984a6a1
commit aa6022ad70
4 changed files with 9 additions and 25 deletions

View File

@ -19,7 +19,10 @@ import android.content.Context
import android.content.Intent
import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.widget.ThemeUtils
import com.ichi2.anki.R
import com.ichi2.anki.SingleFragmentActivity
import com.ichi2.anki.utils.navBarNeedsScrim
import kotlin.reflect.KClass
import kotlin.reflect.jvm.jvmName
@ -31,6 +34,12 @@ class CardViewerActivity : SingleFragmentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
enableEdgeToEdge() // TODO assess moving this to SingleFragmentActivity
super.onCreate(savedInstanceState)
// use the screen background color if the nav bar doesn't need a scrim when using a
// transparent background. e.g. when navigation gestures are enabled
if (!navBarNeedsScrim) {
window.navigationBarColor = ThemeUtils.getThemeAttrColor(this, R.attr.alternativeBackgroundColor)
}
}
companion object {

View File

@ -24,7 +24,6 @@ import android.view.MenuItem
import android.view.View
import android.webkit.WebView
import androidx.activity.result.contract.ActivityResultContracts
import androidx.appcompat.widget.ThemeUtils
import androidx.appcompat.widget.Toolbar
import androidx.core.os.BundleCompat
import androidx.core.os.bundleOf
@ -45,7 +44,6 @@ import com.ichi2.anki.cardviewer.CardMediaPlayer
import com.ichi2.anki.snackbar.BaseSnackbarBuilderProvider
import com.ichi2.anki.snackbar.SnackbarBuilder
import com.ichi2.anki.utils.ext.sharedPrefs
import com.ichi2.anki.utils.navBarNeedsScrim
import com.ichi2.annotations.NeedsTest
import com.ichi2.utils.performClickIfEnabled
import kotlinx.coroutines.flow.collectLatest
@ -179,14 +177,6 @@ class PreviewerFragment :
if (sharedPrefs().getBoolean("safeDisplay", false)) {
view.findViewById<MaterialCardView>(R.id.webview_container).elevation = 0F
}
with(requireActivity()) {
// use the screen background color if the nav bar doesn't need a scrim when using a
// transparent background. e.g. when navigation gestures are enabled
if (!navBarNeedsScrim) {
window.navigationBarColor = ThemeUtils.getThemeAttrColor(this, R.attr.alternativeBackgroundColor)
}
}
}
private fun setupFlagMenu(menu: Menu) {

View File

@ -37,7 +37,6 @@ import com.ichi2.anki.cardviewer.CardMediaPlayer
import com.ichi2.anki.snackbar.BaseSnackbarBuilderProvider
import com.ichi2.anki.snackbar.SnackbarBuilder
import com.ichi2.anki.utils.ext.sharedPrefs
import com.ichi2.anki.utils.navBarNeedsScrim
import kotlinx.coroutines.flow.launchIn
import kotlinx.coroutines.flow.onEach
import kotlinx.coroutines.launch
@ -120,11 +119,6 @@ class TemplatePreviewerFragment :
}
with(requireActivity()) {
// use the screen background color if the nav bar doesn't need a scrim when using a
// transparent background. e.g. when navigation gestures are enabled
if (!navBarNeedsScrim) {
window.navigationBarColor = ThemeUtils.getThemeAttrColor(this, R.attr.alternativeBackgroundColor)
}
window.statusBarColor = ThemeUtils.getThemeAttrColor(this, R.attr.appBarColor)
}
if (inFragmentedActivity) {

View File

@ -28,7 +28,6 @@ import android.widget.FrameLayout
import androidx.activity.result.contract.ActivityResultContracts
import androidx.annotation.StringRes
import androidx.appcompat.view.menu.MenuBuilder
import androidx.appcompat.widget.ThemeUtils
import androidx.appcompat.widget.Toolbar
import androidx.constraintlayout.widget.ConstraintLayout
import androidx.core.view.ViewCompat
@ -57,7 +56,6 @@ import com.ichi2.anki.snackbar.showSnackbar
import com.ichi2.anki.utils.ext.collectIn
import com.ichi2.anki.utils.ext.collectLatestIn
import com.ichi2.anki.utils.ext.sharedPrefs
import com.ichi2.anki.utils.navBarNeedsScrim
import com.ichi2.libanki.sched.Counts
import com.ichi2.utils.increaseHorizontalPaddingOfOverflowMenuIcons
import kotlinx.coroutines.launch
@ -102,13 +100,6 @@ class ReviewerFragment :
}
}
with(requireActivity()) {
if (!navBarNeedsScrim) {
window.navigationBarColor =
ThemeUtils.getThemeAttrColor(this, R.attr.alternativeBackgroundColor)
}
}
viewModel.actionFeedbackFlow.flowWithLifecycle(lifecycle)
.collectIn(lifecycleScope) { message ->
showSnackbar(message, duration = 500)