Skip to content

Commit ed1ca6e

Browse files
BrayanDSOlukstbit
authored andcommitted
fix(preferences): status bar color
Also make transparent the default color for the status bar in SingleFragmentActivity
1 parent ce9eb68 commit ed1ca6e

File tree

6 files changed

+5
-16
lines changed

6 files changed

+5
-16
lines changed

AnkiDroid/src/main/java/com/ichi2/anki/NoteEditor.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ import androidx.core.util.component1
7171
import androidx.core.util.component2
7272
import androidx.core.view.MenuProvider
7373
import androidx.core.view.OnReceiveContentListener
74+
import androidx.core.view.WindowInsetsControllerCompat
7475
import androidx.core.view.isVisible
7576
import androidx.draganddrop.DropHelper
7677
import androidx.fragment.app.Fragment
@@ -134,6 +135,7 @@ import com.ichi2.anki.ui.setupNoteTypeSpinner
134135
import com.ichi2.anki.utils.ext.isImageOcclusion
135136
import com.ichi2.anki.utils.ext.sharedPrefs
136137
import com.ichi2.anki.utils.ext.showDialogFragment
138+
import com.ichi2.anki.utils.ext.window
137139
import com.ichi2.anki.widgets.DeckDropDownAdapter.SubtitleListener
138140
import com.ichi2.annotations.NeedsTest
139141
import com.ichi2.compat.CompatHelper.Companion.getSerializableCompat
@@ -516,6 +518,7 @@ class NoteEditor :
516518
view: View,
517519
savedInstanceState: Bundle?,
518520
) {
521+
WindowInsetsControllerCompat(window, window.decorView).isAppearanceLightStatusBars = false
519522
@Suppress("deprecation", "API35 properly handle edge-to-edge")
520523
requireActivity().window.statusBarColor = Themes.getColorFromAttr(requireContext(), R.attr.appBarColor)
521524
super.onViewCreated(view, savedInstanceState)

AnkiDroid/src/main/java/com/ichi2/anki/SingleFragmentActivity.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import androidx.fragment.app.commit
2525
import com.ichi2.anki.android.input.ShortcutGroup
2626
import com.ichi2.anki.android.input.ShortcutGroupProvider
2727
import com.ichi2.anki.dialogs.customstudy.CustomStudyDialog.CustomStudyAction
28+
import com.ichi2.themes.setTransparentStatusBar
2829
import com.ichi2.utils.FragmentFactoryUtils
2930
import timber.log.Timber
3031
import kotlin.reflect.KClass
@@ -50,6 +51,7 @@ open class SingleFragmentActivity : AnkiActivity() {
5051
return
5152
}
5253
setContentView(R.layout.single_fragment_activity)
54+
setTransparentStatusBar()
5355

5456
// avoid recreating the fragment on configuration changes
5557
// the fragment should handle state restoration

AnkiDroid/src/main/java/com/ichi2/anki/pages/CsvImporter.kt

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,12 @@ package com.ichi2.anki.pages
1818
import android.content.Context
1919
import android.content.Intent
2020
import android.os.Bundle
21-
import android.view.View
2221
import android.webkit.WebView
2322
import androidx.activity.OnBackPressedCallback
2423
import com.ichi2.anki.CollectionManager
2524
import com.ichi2.anki.R
2625
import com.ichi2.anki.SingleFragmentActivity
2726
import com.ichi2.anki.hideShowButtonCss
28-
import com.ichi2.themes.setTransparentStatusBar
2927

3028
/**
3129
* Anki page used to import text/csv files
@@ -46,14 +44,6 @@ class CsvImporter : PageFragment() {
4644
return CsvImporterWebViewClient(backCallback)
4745
}
4846

49-
override fun onViewCreated(
50-
view: View,
51-
savedInstanceState: Bundle?,
52-
) {
53-
super.onViewCreated(view, savedInstanceState)
54-
requireActivity().setTransparentStatusBar()
55-
}
56-
5747
inner class CsvImporterWebViewClient(
5848
private val backCallback: OnBackPressedCallback,
5949
) : PageWebViewClient() {

AnkiDroid/src/main/java/com/ichi2/anki/pages/ImageOcclusion.kt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ import com.ichi2.anki.SingleFragmentActivity
3030
import com.ichi2.anki.dialogs.DiscardChangesDialog
3131
import com.ichi2.annotations.NeedsTest
3232
import com.ichi2.libanki.DeckId
33-
import com.ichi2.themes.setTransparentStatusBar
3433
import kotlinx.coroutines.launch
3534
import org.json.JSONObject
3635
import timber.log.Timber
@@ -41,7 +40,6 @@ class ImageOcclusion : PageFragment(R.layout.image_occlusion) {
4140
savedInstanceState: Bundle?,
4241
) {
4342
super.onViewCreated(view, savedInstanceState)
44-
requireActivity().setTransparentStatusBar()
4543
with(requireActivity()) {
4644
onBackPressedDispatcher.addCallback(this) {
4745
DiscardChangesDialog.showDialog(this@with) {

AnkiDroid/src/main/java/com/ichi2/anki/pages/PageFragment.kt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ import com.google.android.material.progressindicator.CircularProgressIndicator
3232
import com.ichi2.anki.R
3333
import com.ichi2.anki.SingleFragmentActivity
3434
import com.ichi2.themes.Themes
35-
import com.ichi2.themes.setTransparentStatusBar
3635
import timber.log.Timber
3736
import kotlin.reflect.KClass
3837

@@ -118,7 +117,6 @@ open class PageFragment(
118117
setupBridgeCommand(pageWebViewClient)
119118
onWebViewCreated(webView)
120119

121-
requireActivity().setTransparentStatusBar()
122120
val arguments = requireArguments()
123121
val path = requireNotNull(arguments.getString(PATH_ARG_KEY)) { "'$PATH_ARG_KEY' missing" }
124122
val title = arguments.getString(TITLE_ARG_KEY)

AnkiDroid/src/main/java/com/ichi2/anki/pages/Statistics.kt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ import com.ichi2.anki.utils.getTimestamp
3737
import com.ichi2.libanki.DeckId
3838
import com.ichi2.libanki.DeckNameId
3939
import com.ichi2.libanki.utils.TimeManager
40-
import com.ichi2.themes.setTransparentStatusBar
4140
import com.ichi2.utils.BundleUtils.getNullableLong
4241

4342
class Statistics :
@@ -54,7 +53,6 @@ class Statistics :
5453
super.onViewCreated(view, savedInstanceState)
5554
webView.isNestedScrollingEnabled = true
5655

57-
requireActivity().setTransparentStatusBar()
5856
spinner = view.findViewById(R.id.deck_selector)
5957
view
6058
.findViewById<AppBarLayout>(R.id.app_bar)

0 commit comments

Comments
 (0)