mirror of
https://github.com/Helium314/HeliBoard.git
synced 2025-04-22 07:09:10 +00:00
Add bottom inset padding on Android15+ (#1457)
This commit is contained in:
parent
d4960c73dc
commit
f4b4705e81
1 changed files with 15 additions and 0 deletions
|
@ -8,9 +8,14 @@ package helium314.keyboard.keyboard.internal;
|
|||
|
||||
import android.content.Context;
|
||||
import android.content.res.TypedArray;
|
||||
import android.graphics.Insets;
|
||||
import android.os.Build;
|
||||
import android.util.AttributeSet;
|
||||
import android.util.SparseIntArray;
|
||||
|
||||
import android.view.WindowInsets;
|
||||
import android.view.WindowManager;
|
||||
import android.view.WindowMetrics;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
|
@ -225,6 +230,16 @@ public class KeyboardParams {
|
|||
mBottomPadding = (int) (keyboardAttr.getFraction(
|
||||
R.styleable.Keyboard_keyboardBottomPadding, height, height, 0)
|
||||
* Settings.getValues().mBottomPaddingScale);
|
||||
|
||||
if (Build.VERSION.SDK_INT >= 35) {
|
||||
WindowManager wm = context.getSystemService(WindowManager.class);
|
||||
WindowMetrics windowMetrics = wm.getCurrentWindowMetrics();
|
||||
WindowInsets windowInsets = windowMetrics.getWindowInsets();
|
||||
int insetTypes = WindowInsets.Type.systemBars() | WindowInsets.Type.displayCutout();
|
||||
Insets insets = windowInsets.getInsetsIgnoringVisibility(insetTypes);
|
||||
mBottomPadding += insets.bottom;
|
||||
}
|
||||
|
||||
mLeftPadding = (int) (keyboardAttr.getFraction(
|
||||
R.styleable.Keyboard_keyboardLeftPadding, width, width, 0)
|
||||
* Settings.getValues().mSidePaddingScale);
|
||||
|
|
Loading…
Add table
Reference in a new issue