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

Commit 7e9d6e7d authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Refine FingerprintEnrollmentActivity" into udc-dev

parents e34d95d6 94b421b2
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -242,7 +242,14 @@ public class BiometricUtils {
     */
    public static Intent getFingerprintFindSensorIntent(@NonNull Context context,
            @NonNull Intent activityIntent) {
        if (FeatureFlagUtils.isEnabled(context, FeatureFlagUtils.SETTINGS_BIOMETRICS2_ENROLLMENT)) {
            final Intent intent = new Intent(context, FingerprintEnrollmentActivity.class);
            intent.putExtra(BiometricEnrollActivity.EXTRA_SKIP_INTRO, true);
            if (WizardManagerHelper.isAnySetupWizard(activityIntent)) {
                SetupWizardUtils.copySetupExtras(activityIntent, intent);
            }
            return intent;
        } else if (WizardManagerHelper.isAnySetupWizard(activityIntent)) {
            Intent intent = new Intent(context, SetupFingerprintEnrollFindSensor.class);
            SetupWizardUtils.copySetupExtras(activityIntent, intent);
            return intent;
+10 −2
Original line number Diff line number Diff line
@@ -68,6 +68,7 @@ import com.android.settings.Utils;
import com.android.settings.biometrics.BiometricEnrollBase;
import com.android.settings.biometrics.BiometricUtils;
import com.android.settings.biometrics.GatekeeperPasswordProvider;
import com.android.settings.biometrics2.ui.model.EnrollmentRequest;
import com.android.settings.biometrics2.ui.view.FingerprintEnrollmentActivity;
import com.android.settings.core.SettingsBaseActivity;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
@@ -687,8 +688,15 @@ public class FingerprintSettings extends SubSettings {
            if (KEY_FINGERPRINT_ADD.equals(key)) {
                mIsEnrolling = true;
                Intent intent = new Intent();
                if (FeatureFlagUtils.isEnabled(getContext(),
                        FeatureFlagUtils.SETTINGS_BIOMETRICS2_ENROLLMENT)) {
                    intent.setClassName(SETTINGS_PACKAGE_NAME,
                            FingerprintEnrollmentActivity.class.getName());
                    intent.putExtra(EnrollmentRequest.EXTRA_SKIP_FIND_SENSOR, true);
                } else {
                    intent.setClassName(SETTINGS_PACKAGE_NAME,
                            FingerprintEnrollEnrolling.class.getName());
                }
                intent.putExtra(Intent.EXTRA_USER_ID, mUserId);
                intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_CHALLENGE_TOKEN, mToken);
                startActivityForResult(intent, ADD_FINGERPRINT_REQUEST);
+18 −1
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@ import android.os.Bundle;
import androidx.annotation.NonNull;

import com.android.settings.SetupWizardUtils;
import com.android.settings.biometrics.BiometricEnrollActivity;

import com.google.android.setupcompat.util.WizardManagerHelper;

@@ -36,13 +37,19 @@ import com.google.android.setupcompat.util.WizardManagerHelper;
 * 2. isAfterSuwOrSuwSuggestedAction
 * 3. theme
 * 4. isFromSettingsSummery
 * 5. a helper method, getSetupWizardExtras
 * 5. isSkipIntro
 * 6. isSkipFindSensor
 * 7. a helper method, getSetupWizardExtras
 */
public final class EnrollmentRequest {

    public static final String EXTRA_SKIP_FIND_SENSOR = "skip_find_sensor";

    private final boolean mIsSuw;
    private final boolean mIsAfterSuwOrSuwSuggestedAction;
    private final boolean mIsFromSettingsSummery;
    private final boolean mIsSkipIntro;
    private final boolean mIsSkipFindSensor;
    private final int mTheme;
    private final Bundle mSuwExtras;

@@ -53,6 +60,8 @@ public final class EnrollmentRequest {
                || intent.getBooleanExtra(EXTRA_IS_SUW_SUGGESTED_ACTION_FLOW, false);
        mSuwExtras = getSuwExtras(mIsSuw, intent);
        mIsFromSettingsSummery = intent.getBooleanExtra(EXTRA_FROM_SETTINGS_SUMMARY, false);
        mIsSkipIntro = intent.getBooleanExtra(BiometricEnrollActivity.EXTRA_SKIP_INTRO, false);
        mIsSkipFindSensor = intent.getBooleanExtra(EXTRA_SKIP_FIND_SENSOR, false);
        mTheme = SetupWizardUtils.getTheme(context, intent);
    }

@@ -68,6 +77,14 @@ public final class EnrollmentRequest {
        return mIsFromSettingsSummery;
    }

    public boolean isSkipIntro() {
        return mIsSkipIntro;
    }

    public boolean isSkipFindSensor() {
        return mIsSkipFindSensor;
    }

    public int getTheme() {
        return mTheme;
    }
+15 −46
Original line number Diff line number Diff line
@@ -35,7 +35,6 @@ import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.view.animation.Interpolator;
import android.widget.ProgressBar;
@@ -43,7 +42,6 @@ import android.widget.TextView;

import androidx.activity.OnBackPressedCallback;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentActivity;
import androidx.lifecycle.Observer;
@@ -127,60 +125,29 @@ public class FingerprintEnrollEnrollingRfpsFragment extends Fragment {
        }
    };

    @Override
    public void onAttach(@NonNull Context context) {
        final FragmentActivity activity = getActivity();
        final ViewModelProvider provider = new ViewModelProvider(activity);
        mEnrollingViewModel = provider.get(FingerprintEnrollEnrollingViewModel.class);
        mProgressViewModel = provider.get(FingerprintEnrollProgressViewModel.class);
        super.onAttach(context);
        requireActivity().getOnBackPressedDispatcher().addCallback(new OnBackPressedCallback(true) {
    private final OnBackPressedCallback mOnBackPressedCallback = new OnBackPressedCallback(true) {
        @Override
        public void handleOnBackPressed() {
            setEnabled(false);
            mEnrollingViewModel.setOnBackPressed();
            cancelEnrollment();
        }
        });
    }

    @Nullable
    @Override
    public Animation onCreateAnimation(int transit, boolean enter, int nextAnim) {
        if (enter && nextAnim == R.anim.sud_slide_next_in) {
            final Animation animation = AnimationUtils.loadAnimation(getActivity(), nextAnim);
            if (animation != null) {
                animation.setAnimationListener(new Animation.AnimationListener() {
                    @Override
                    public void onAnimationStart(Animation animation) {
                    }

                    @Override
                    public void onAnimationEnd(Animation animation) {
                        mAnimationCancelled = false;
                        startIconAnimation();
                    }

                    @Override
                    public void onAnimationRepeat(Animation animation) {
                    }
                });
                return animation;
            }
        }
        return super.onCreateAnimation(transit, enter, nextAnim);
    }
    };

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mEnrollingViewModel.restoreSavedState(savedInstanceState);
    public void onAttach(@NonNull Context context) {
        final FragmentActivity activity = getActivity();
        final ViewModelProvider provider = new ViewModelProvider(activity);
        mEnrollingViewModel = provider.get(FingerprintEnrollEnrollingViewModel.class);
        mProgressViewModel = provider.get(FingerprintEnrollProgressViewModel.class);
        super.onAttach(context);
        activity.getOnBackPressedDispatcher().addCallback(mOnBackPressedCallback);
    }

    @Override
    public void onSaveInstanceState(@NonNull Bundle outState) {
        mEnrollingViewModel.onSaveInstanceState(outState);
        super.onSaveInstanceState(outState);
    public void onDetach() {
        mOnBackPressedCallback.setEnabled(false);
        super.onDetach();
    }

    @Override
@@ -248,6 +215,8 @@ public class FingerprintEnrollEnrollingRfpsFragment extends Fragment {
    @Override
    public void onStart() {
        super.onStart();
        mAnimationCancelled = false;
        startIconAnimation();
        startEnrollment();
        updateProgress(false /* animate */, mProgressViewModel.getProgressLiveData().getValue());
        updateTitleAndDescription();
+0 −12
Original line number Diff line number Diff line
@@ -151,18 +151,6 @@ public class FingerprintEnrollEnrollingSfpsFragment extends Fragment {
        });
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mEnrollingViewModel.restoreSavedState(savedInstanceState);
    }

    @Override
    public void onSaveInstanceState(@NonNull Bundle outState) {
        mEnrollingViewModel.onSaveInstanceState(outState);
        super.onSaveInstanceState(outState);
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
Loading