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