Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8a43b9e0 authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 7981408 from af87b942 to sc-v2-release

Change-Id: I1b9532e1f9225fd1798e9ed1ddde8f9584f3cdad
parents 59817805 af87b942
Loading
Loading
Loading
Loading
+35 −0
Original line number Diff line number Diff line
@@ -19,10 +19,12 @@ package com.android.settings.biometrics.face;
import android.app.admin.DevicePolicyManager;
import android.app.settings.SettingsEnums;
import android.content.Intent;
import android.hardware.SensorPrivacyManager;
import android.hardware.biometrics.BiometricAuthenticator;
import android.hardware.face.FaceManager;
import android.hardware.face.FaceSensorPropertiesInternal;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
@@ -34,10 +36,12 @@ import androidx.annotation.StringRes;

import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.biometrics.BiometricEnrollActivity;
import com.android.settings.biometrics.BiometricEnrollIntroduction;
import com.android.settings.biometrics.BiometricUtils;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.password.ChooseLockSettingsHelper;
import com.android.settings.utils.SensorPrivacyManagerHelper;
import com.android.settingslib.RestrictedLockUtilsInternal;

import com.google.android.setupcompat.template.FooterButton;
@@ -57,6 +61,7 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction {
    private FaceFeatureProvider mFaceFeatureProvider;
    @Nullable private FooterButton mPrimaryFooterButton;
    @Nullable private FooterButton mSecondaryFooterButton;
    @Nullable private SensorPrivacyManager mSensorPrivacyManager;

    @Override
    protected void onCancelButtonClick(View view) {
@@ -150,6 +155,14 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction {
                });
            }
        }

        mSensorPrivacyManager = getApplicationContext()
                .getSystemService(SensorPrivacyManager.class);
        final SensorPrivacyManagerHelper helper = SensorPrivacyManagerHelper
                .getInstance(getApplicationContext());
        final boolean cameraPrivacyEnabled = helper
                .isSensorBlocked(SensorPrivacyManager.Sensors.CAMERA, mUserId);
        Log.v(TAG, "cameraPrivacyEnabled : " + cameraPrivacyEnabled);
    }

    protected boolean generateChallengeOnCreate() {
@@ -308,6 +321,28 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction {
        return BiometricAuthenticator.TYPE_FACE;
    }

    @Override
    protected void onNextButtonClick(View view) {
        final boolean parentelConsentRequired =
                getIntent()
                .getBooleanExtra(BiometricEnrollActivity.EXTRA_REQUIRE_PARENTAL_CONSENT, false);
        final boolean cameraPrivacyEnabled = SensorPrivacyManagerHelper
                .getInstance(getApplicationContext())
                .isSensorBlocked(SensorPrivacyManager.Sensors.CAMERA, mUserId);
        final boolean isSetupWizard = WizardManagerHelper.isAnySetupWizard(getIntent());
        final boolean isSettingUp = isSetupWizard || (parentelConsentRequired
                && !WizardManagerHelper.isUserSetupComplete(this));
        if (cameraPrivacyEnabled && !isSettingUp) {
            if (mSensorPrivacyManager == null) {
                mSensorPrivacyManager = getApplicationContext()
                        .getSystemService(SensorPrivacyManager.class);
            }
            mSensorPrivacyManager.showSensorUseDialog(SensorPrivacyManager.Sensors.CAMERA);
        } else {
            super.onNextButtonClick(view);
        }
    }

    @Override
    @NonNull
    protected FooterButton getPrimaryFooterButton() {