From 44a44a2993fa9deffa24cc97d687be60dad4dc13 Mon Sep 17 00:00:00 2001 From: rsx Date: Mon, 17 Jun 2024 14:26:38 +0200 Subject: [PATCH] MainActivity.java: add systemBars insets to main view padding --- java/MainActivity.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/java/MainActivity.java b/java/MainActivity.java index eb99cd55..66a82ff2 100644 --- a/java/MainActivity.java +++ b/java/MainActivity.java @@ -21,6 +21,7 @@ import android.content.Context; import android.content.Intent; +import android.content.res.Configuration; import android.graphics.Color; import android.graphics.Insets; @@ -207,7 +208,16 @@ public ResizingLayout(Context context){ public WindowInsets onApplyWindowInsets(View v, WindowInsets insets) { if (Build.VERSION.SDK_INT >= 30) { Insets imeInsets = insets.getInsets(WindowInsets.Type.ime()); - v.setPadding(0, 0, 0, imeInsets.bottom); + Insets sysInsets = insets.getInsets(WindowInsets.Type.systemBars()); + + // The sys insets change when orientation changes and sys bars + // change position. + v.setPadding( + sysInsets.left, + sysInsets.top, + sysInsets.right, + imeInsets.bottom + sysInsets.bottom + ); } return insets; }