diff --git a/Habitica/res/values-night-v30/colors.xml b/Habitica/res/values-night-v30/colors.xml
new file mode 100644
index 000000000..b33a17daa
--- /dev/null
+++ b/Habitica/res/values-night-v30/colors.xml
@@ -0,0 +1,4 @@
+
+
+ @color/transparent
+
diff --git a/Habitica/res/values-v30/colors.xml b/Habitica/res/values-v30/colors.xml
new file mode 100644
index 000000000..b33a17daa
--- /dev/null
+++ b/Habitica/res/values-v30/colors.xml
@@ -0,0 +1,4 @@
+
+
+ @color/transparent
+
diff --git a/Habitica/res/values-v30/values.xml b/Habitica/res/values-v30/values.xml
new file mode 100644
index 000000000..1c0e099bb
--- /dev/null
+++ b/Habitica/res/values-v30/values.xml
@@ -0,0 +1,4 @@
+
+
+ true
+
diff --git a/Habitica/res/values/styles.xml b/Habitica/res/values/styles.xml
index 77007e147..c0ba51079 100644
--- a/Habitica/res/values/styles.xml
+++ b/Habitica/res/values/styles.xml
@@ -58,9 +58,9 @@
- @style/AlertDialogTheme
- false
- - @color/transparent
- - @color/transparent
- - true
+ - @color/system_bars
+ - @color/system_bars
+ - @bool/edge_to_edge
- @style/SearchViewStyle
- @color/text_primary
diff --git a/Habitica/res/values/values.xml b/Habitica/res/values/values.xml
index a542a4ebc..8b121cc01 100644
--- a/Habitica/res/values/values.xml
+++ b/Habitica/res/values/values.xml
@@ -1,6 +1,8 @@
+ true
+
- @string/repeatables_frequency_daily
- @string/repeatables_frequency_weekly
diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/extensions/WindowInsetsCompatExtensions.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/extensions/WindowInsetsCompatExtensions.kt
index 24894f244..d75d889d2 100644
--- a/Habitica/src/main/java/com/habitrpg/android/habitica/extensions/WindowInsetsCompatExtensions.kt
+++ b/Habitica/src/main/java/com/habitrpg/android/habitica/extensions/WindowInsetsCompatExtensions.kt
@@ -2,6 +2,7 @@ package com.habitrpg.android.habitica.extensions
import android.os.Build
import android.view.View
+import android.view.WindowInsets
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import androidx.core.view.updatePadding
@@ -11,6 +12,11 @@ fun consumeWindowInsetsAbove30(insets: WindowInsetsCompat): WindowInsetsCompat {
return insets
}
+fun consumeWindowInsetsAbove30(insets: WindowInsets?): WindowInsets? {
+ if (Build.VERSION.SDK_INT >= 30) return WindowInsets.CONSUMED
+ return insets
+}
+
fun applyScrollContentWindowInsets(view: View,
applyTop: Boolean = false,
applyBottom: Boolean = true,
diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/BaseActivity.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/BaseActivity.kt
index fb7633d14..befde2482 100644
--- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/BaseActivity.kt
+++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/BaseActivity.kt
@@ -102,7 +102,9 @@ abstract class BaseActivity : AppCompatActivity() {
internal var navigationBarStyle: SystemBarStyle? = null
override fun onCreate(savedInstanceState: Bundle?) {
- enableEdgeToEdge(navigationBarStyle = navigationBarStyle ?: defaultNavigationBarStyle)
+ if (resources.getBoolean(R.bool.edge_to_edge)) {
+ enableEdgeToEdge(navigationBarStyle = navigationBarStyle ?: defaultNavigationBarStyle)
+ }
val sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this)
val languageHelper = LanguageHelper(sharedPreferences.getString("language", "en"))
resources.forceLocale(this, languageHelper.locale)
@@ -116,7 +118,6 @@ abstract class BaseActivity : AppCompatActivity() {
loadTheme(sharedPreferences)
super.onCreate(savedInstanceState)
- WindowCompat.setDecorFitsSystemWindows(window, false)
habiticaApplication
getLayoutResId()?.let {