Merge "Update new BiometricPromptLayout to include cutout region." into udc-dev am: 1b99cfcfba am: 2ade4f0315

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/23353838

Change-Id: I0c5591f1d66d8ea22a1ea5d8b0b871d4501e91b2
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Joe Bolinger
2023-05-20 01:33:42 +00:00
committed by Automerger Merge Worker

View File

@@ -19,9 +19,12 @@ package com.android.systemui.biometrics.ui;
import android.annotation.NonNull; import android.annotation.NonNull;
import android.annotation.Nullable; import android.annotation.Nullable;
import android.content.Context; import android.content.Context;
import android.graphics.Insets;
import android.util.AttributeSet; import android.util.AttributeSet;
import android.util.Log; import android.util.Log;
import android.view.View; import android.view.View;
import android.view.WindowInsets;
import android.view.WindowManager;
import android.widget.FrameLayout; import android.widget.FrameLayout;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.TextView; import android.widget.TextView;
@@ -44,6 +47,8 @@ public class BiometricPromptLayout extends LinearLayout {
private static final String TAG = "BiometricPromptLayout"; private static final String TAG = "BiometricPromptLayout";
@NonNull
private final WindowManager mWindowManager;
@Nullable @Nullable
private AuthController.ScaleFactorProvider mScaleFactorProvider; private AuthController.ScaleFactorProvider mScaleFactorProvider;
@Nullable @Nullable
@@ -60,6 +65,8 @@ public class BiometricPromptLayout extends LinearLayout {
public BiometricPromptLayout(Context context, AttributeSet attrs) { public BiometricPromptLayout(Context context, AttributeSet attrs) {
super(context, attrs); super(context, attrs);
mWindowManager = context.getSystemService(WindowManager.class);
mUseCustomBpSize = getResources().getBoolean(R.bool.use_custom_bp_size); mUseCustomBpSize = getResources().getBoolean(R.bool.use_custom_bp_size);
mCustomBpWidth = getResources().getDimensionPixelSize(R.dimen.biometric_dialog_width); mCustomBpWidth = getResources().getDimensionPixelSize(R.dimen.biometric_dialog_width);
mCustomBpHeight = getResources().getDimensionPixelSize(R.dimen.biometric_dialog_height); mCustomBpHeight = getResources().getDimensionPixelSize(R.dimen.biometric_dialog_height);
@@ -144,8 +151,13 @@ public class BiometricPromptLayout extends LinearLayout {
width = Math.min(width, height); 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); final AuthDialog.LayoutParams params = onMeasureInternal(width, height);
setMeasuredDimension(params.mMediumWidth, params.mMediumHeight); setMeasuredDimension(params.mMediumWidth + insets.left + insets.right,
params.mMediumHeight + insets.bottom);
} }
@Override @Override