summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/src/com/android/systemui/biometrics/ui/BiometricPromptLayout.java14
1 files changed, 13 insertions, 1 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/biometrics/ui/BiometricPromptLayout.java b/packages/SystemUI/src/com/android/systemui/biometrics/ui/BiometricPromptLayout.java
index 3753d101a8e7..fb246cd51d8a 100644
--- a/packages/SystemUI/src/com/android/systemui/biometrics/ui/BiometricPromptLayout.java
+++ b/packages/SystemUI/src/com/android/systemui/biometrics/ui/BiometricPromptLayout.java
@@ -19,9 +19,12 @@ package com.android.systemui.biometrics.ui;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.content.Context;
+import android.graphics.Insets;
import android.util.AttributeSet;
import android.util.Log;
import android.view.View;
+import android.view.WindowInsets;
+import android.view.WindowManager;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import android.widget.TextView;
@@ -44,6 +47,8 @@ public class BiometricPromptLayout extends LinearLayout {
private static final String TAG = "BiometricPromptLayout";
+ @NonNull
+ private final WindowManager mWindowManager;
@Nullable
private AuthController.ScaleFactorProvider mScaleFactorProvider;
@Nullable
@@ -60,6 +65,8 @@ public class BiometricPromptLayout extends LinearLayout {
public BiometricPromptLayout(Context context, AttributeSet attrs) {
super(context, attrs);
+ mWindowManager = context.getSystemService(WindowManager.class);
+
mUseCustomBpSize = getResources().getBoolean(R.bool.use_custom_bp_size);
mCustomBpWidth = getResources().getDimensionPixelSize(R.dimen.biometric_dialog_width);
mCustomBpHeight = getResources().getDimensionPixelSize(R.dimen.biometric_dialog_height);
@@ -144,8 +151,13 @@ public class BiometricPromptLayout extends LinearLayout {
width = Math.min(width, height);
}
+ // add nav bar insets since the parent AuthContainerView
+ // uses LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS
+ final Insets insets = mWindowManager.getMaximumWindowMetrics().getWindowInsets()
+ .getInsets(WindowInsets.Type.navigationBars());
final AuthDialog.LayoutParams params = onMeasureInternal(width, height);
- setMeasuredDimension(params.mMediumWidth, params.mMediumHeight);
+ setMeasuredDimension(params.mMediumWidth + insets.left + insets.right,
+ params.mMediumHeight + insets.bottom);
}
@Override