Guard double-showing of user credentials dialog
Only create & show the dialogfragment if it does not already exist.
Bug: 28058930
Change-Id: Ia48cc8a5fd60a12c3beb6c9263036a449cf8d67c
diff --git a/src/com/android/settings/UserCredentialsSettings.java b/src/com/android/settings/UserCredentialsSettings.java
index 6438764..a09800b 100644
--- a/src/com/android/settings/UserCredentialsSettings.java
+++ b/src/com/android/settings/UserCredentialsSettings.java
@@ -104,10 +104,12 @@
final Bundle args = new Bundle();
args.putParcelable(ARG_CREDENTIAL, item);
- final CredentialDialogFragment frag = new CredentialDialogFragment();
- frag.setTargetFragment(target, /* requestCode */ -1);
- frag.setArguments(args);
- frag.show(target.getFragmentManager(), TAG);
+ if (target.getFragmentManager().findFragmentByTag(TAG) == null) {
+ final DialogFragment frag = new CredentialDialogFragment();
+ frag.setTargetFragment(target, /* requestCode */ -1);
+ frag.setArguments(args);
+ frag.show(target.getFragmentManager(), TAG);
+ }
}
@Override