mirror of
https://github.com/MatsuriDayo/NekoBoxForAndroid.git
synced 2025-12-20 07:00:05 +08:00
Fix Android 15 toolbar
This commit is contained in:
parent
5ff4eb011c
commit
5276a4607c
@ -6,7 +6,12 @@ import android.widget.TextView
|
|||||||
import androidx.annotation.StringRes
|
import androidx.annotation.StringRes
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.core.app.ActivityCompat
|
import androidx.core.app.ActivityCompat
|
||||||
|
import androidx.core.view.ViewCompat
|
||||||
|
import androidx.core.view.WindowInsetsCompat
|
||||||
|
import androidx.core.view.updatePadding
|
||||||
|
import com.google.android.material.appbar.MaterialToolbar
|
||||||
import com.google.android.material.snackbar.Snackbar
|
import com.google.android.material.snackbar.Snackbar
|
||||||
|
import io.nekohasekai.sagernet.R
|
||||||
import io.nekohasekai.sagernet.utils.Theme
|
import io.nekohasekai.sagernet.utils.Theme
|
||||||
|
|
||||||
abstract class ThemedActivity : AppCompatActivity {
|
abstract class ThemedActivity : AppCompatActivity {
|
||||||
@ -28,6 +33,15 @@ abstract class ThemedActivity : AppCompatActivity {
|
|||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
|
|
||||||
uiMode = resources.configuration.uiMode
|
uiMode = resources.configuration.uiMode
|
||||||
|
|
||||||
|
findViewById<MaterialToolbar>(R.id.toolbar)?.let {
|
||||||
|
val appbarTopPadding = it.paddingTop
|
||||||
|
|
||||||
|
ViewCompat.setOnApplyWindowInsetsListener(it) { v, insets ->
|
||||||
|
v.updatePadding(top = appbarTopPadding + insets.getInsets(WindowInsetsCompat.Type.systemBars()).top)
|
||||||
|
insets
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun setTheme(resId: Int) {
|
override fun setTheme(resId: Int) {
|
||||||
@ -51,6 +65,7 @@ abstract class ThemedActivity : AppCompatActivity {
|
|||||||
maxLines = 10
|
maxLines = 10
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
internal open fun snackbarInternal(text: CharSequence): Snackbar = throw NotImplementedError()
|
internal open fun snackbarInternal(text: CharSequence): Snackbar = throw NotImplementedError()
|
||||||
|
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue
Block a user