From 48d406cecc6cedaa206bf2be267d6ef9cf6cc0c3 Mon Sep 17 00:00:00 2001 From: Becca Hughes Date: Tue, 9 May 2023 21:03:57 +0000 Subject: [PATCH] If you tap outside dialog then re-enable Test: ondevice Bug: 281696686 Change-Id: I7aee51952b8a905010710a574e0dd39616b2e5d9 --- ...CredentialManagerPreferenceController.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/com/android/settings/applications/credentials/CredentialManagerPreferenceController.java b/src/com/android/settings/applications/credentials/CredentialManagerPreferenceController.java index a8996c35ae0..ed5804f8916 100644 --- a/src/com/android/settings/applications/credentials/CredentialManagerPreferenceController.java +++ b/src/com/android/settings/applications/credentials/CredentialManagerPreferenceController.java @@ -620,6 +620,9 @@ public class CredentialManagerPreferenceController extends BasePreferenceControl completeEnableProviderDialogBox( whichButton, packageName, setActivityResult); } + + @Override + public void onCancel() {} }; return new NewProviderConfirmationDialogFragment(host, packageName, appName); @@ -666,6 +669,9 @@ public class CredentialManagerPreferenceController extends BasePreferenceControl new DialogHost() { @Override public void onDialogClick(int whichButton) {} + + @Override + public void onCancel() {} }; return new ErrorDialogFragment(host); @@ -689,6 +695,12 @@ public class CredentialManagerPreferenceController extends BasePreferenceControl pref.setChecked(true); } } + + @Override + public void onCancel() { + // If we dismiss the dialog then re-enable. + pref.setChecked(true); + } }; return new ConfirmationDialogFragment(host, packageName, appName); @@ -705,6 +717,8 @@ public class CredentialManagerPreferenceController extends BasePreferenceControl /** Called when the dialog button is clicked. */ private static interface DialogHost { void onDialogClick(int whichButton); + + void onCancel(); } /** Called to send messages back to the parent fragment. */ @@ -754,6 +768,11 @@ public class CredentialManagerPreferenceController extends BasePreferenceControl public DialogHost getDialogHost() { return mDialogHost; } + + @Override + public void onCancel(@NonNull DialogInterface dialog) { + getDialogHost().onCancel(); + } } /** Dialog showing error when too many providers are selected. */