Merge "Fixes for fingerprint profile challenge" into nyc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
4d2186a9b3
@@ -835,6 +835,7 @@
|
|||||||
|
|
||||||
<!-- Message shown in a dialog which asks the user to confirm when the last fingerprint gets deleted by him. [CHAR LIMIT=NONE]-->
|
<!-- Message shown in a dialog which asks the user to confirm when the last fingerprint gets deleted by him. [CHAR LIMIT=NONE]-->
|
||||||
<string name="fingerprint_last_delete_message">You won\'t be able to use your fingerprints to unlock your phone, authorize purchases, or sign in to apps with them.</string>
|
<string name="fingerprint_last_delete_message">You won\'t be able to use your fingerprints to unlock your phone, authorize purchases, or sign in to apps with them.</string>
|
||||||
|
<string name="fingerprint_last_delete_message_profile_challenge">You won\'t be able to use your fingerprints to unlock your work profile, authorize purchases, or sign in to work apps.</string>
|
||||||
|
|
||||||
<!-- Button to confirm the last removing the last fingerprint. [CHAR LIMIT=20]-->
|
<!-- Button to confirm the last removing the last fingerprint. [CHAR LIMIT=20]-->
|
||||||
<string name="fingerprint_last_delete_confirm">Yes, remove</string>
|
<string name="fingerprint_last_delete_confirm">Yes, remove</string>
|
||||||
|
@@ -38,6 +38,7 @@ import android.os.Bundle;
|
|||||||
import android.os.CancellationSignal;
|
import android.os.CancellationSignal;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.UserHandle;
|
import android.os.UserHandle;
|
||||||
|
import android.os.UserManager;
|
||||||
import android.support.v7.preference.Preference;
|
import android.support.v7.preference.Preference;
|
||||||
import android.support.v7.preference.Preference.OnPreferenceChangeListener;
|
import android.support.v7.preference.Preference.OnPreferenceChangeListener;
|
||||||
import android.support.v7.preference.PreferenceGroup;
|
import android.support.v7.preference.PreferenceGroup;
|
||||||
@@ -66,6 +67,7 @@ import com.android.settings.HelpUtils;
|
|||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.SettingsPreferenceFragment;
|
import com.android.settings.SettingsPreferenceFragment;
|
||||||
import com.android.settings.SubSettings;
|
import com.android.settings.SubSettings;
|
||||||
|
import com.android.settings.Utils;
|
||||||
import com.android.settingslib.RestrictedLockUtils;
|
import com.android.settingslib.RestrictedLockUtils;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -638,12 +640,15 @@ public class FingerprintSettings extends SubSettings {
|
|||||||
mFp.getFingerId());
|
mFp.getFingerId());
|
||||||
FingerprintSettingsFragment parent
|
FingerprintSettingsFragment parent
|
||||||
= (FingerprintSettingsFragment) getTargetFragment();
|
= (FingerprintSettingsFragment) getTargetFragment();
|
||||||
if (parent.mFingerprintManager.getEnrolledFingerprints().size() > 1) {
|
final boolean isProfileChallengeUser =
|
||||||
|
Utils.isManagedProfile(UserManager.get(getContext()), parent.mUserId);
|
||||||
|
if (parent.mFingerprintManager.getEnrolledFingerprints(parent.mUserId).size() > 1) {
|
||||||
parent.deleteFingerPrint(mFp);
|
parent.deleteFingerPrint(mFp);
|
||||||
} else {
|
} else {
|
||||||
ConfirmLastDeleteDialog lastDeleteDialog = new ConfirmLastDeleteDialog();
|
ConfirmLastDeleteDialog lastDeleteDialog = new ConfirmLastDeleteDialog();
|
||||||
Bundle args = new Bundle();
|
Bundle args = new Bundle();
|
||||||
args.putParcelable("fingerprint", mFp);
|
args.putParcelable("fingerprint", mFp);
|
||||||
|
args.putBoolean("isProfileChallengeUser", isProfileChallengeUser);
|
||||||
lastDeleteDialog.setArguments(args);
|
lastDeleteDialog.setArguments(args);
|
||||||
lastDeleteDialog.setTargetFragment(getTargetFragment(), 0);
|
lastDeleteDialog.setTargetFragment(getTargetFragment(), 0);
|
||||||
lastDeleteDialog.show(getFragmentManager(),
|
lastDeleteDialog.show(getFragmentManager(),
|
||||||
@@ -671,9 +676,13 @@ public class FingerprintSettings extends SubSettings {
|
|||||||
@Override
|
@Override
|
||||||
public Dialog onCreateDialog(Bundle savedInstanceState) {
|
public Dialog onCreateDialog(Bundle savedInstanceState) {
|
||||||
mFp = getArguments().getParcelable("fingerprint");
|
mFp = getArguments().getParcelable("fingerprint");
|
||||||
|
final boolean isProfileChallengeUser =
|
||||||
|
getArguments().getBoolean("isProfileChallengeUser");
|
||||||
final AlertDialog alertDialog = new AlertDialog.Builder(getActivity())
|
final AlertDialog alertDialog = new AlertDialog.Builder(getActivity())
|
||||||
.setTitle(R.string.fingerprint_last_delete_title)
|
.setTitle(R.string.fingerprint_last_delete_title)
|
||||||
.setMessage(R.string.fingerprint_last_delete_message)
|
.setMessage((isProfileChallengeUser)
|
||||||
|
? R.string.fingerprint_last_delete_message_profile_challenge
|
||||||
|
: R.string.fingerprint_last_delete_message)
|
||||||
.setPositiveButton(R.string.fingerprint_last_delete_confirm,
|
.setPositiveButton(R.string.fingerprint_last_delete_confirm,
|
||||||
new DialogInterface.OnClickListener() {
|
new DialogInterface.OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
|
Reference in New Issue
Block a user