Fix: Adjust layout padding to respect display cutouts

This commit is contained in:
cmclark00 2025-04-01 11:47:10 -04:00
parent 501e5b37fc
commit 6044b0d93b
8 changed files with 176 additions and 84 deletions

View file

@ -1,12 +1,17 @@
package com.pixelmintdrop
import android.graphics.Color
import android.graphics.Rect
import android.os.Bundle
import android.view.View
import androidx.appcompat.app.AlertDialog
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import androidx.core.view.updatePadding
import com.pixelmintdrop.databinding.ActivityStatsBinding
import com.pixelmintdrop.model.StatsManager
import com.pixelmintdrop.model.PlayerProgressionManager
import android.graphics.Color
import java.text.SimpleDateFormat
import java.util.*
@ -21,6 +26,20 @@ class StatsActivity : AppCompatActivity() {
binding = ActivityStatsBinding.inflate(layoutInflater)
setContentView(binding.root)
// Apply insets to the root view
val initialPadding = Rect(binding.root.paddingLeft, binding.root.paddingTop,
binding.root.paddingRight, binding.root.paddingBottom)
ViewCompat.setOnApplyWindowInsetsListener(binding.root) { view, windowInsets ->
val insets = windowInsets.getInsets(WindowInsetsCompat.Type.systemBars())
view.updatePadding(
left = initialPadding.left + insets.left,
top = initialPadding.top + insets.top,
right = initialPadding.right + insets.right,
bottom = initialPadding.bottom + insets.bottom
)
WindowInsetsCompat.CONSUMED
}
statsManager = StatsManager(this)
progressionManager = PlayerProgressionManager(this)