diff options
author | Artem Shvadskiy <ashvadskiy@cyngn.com> | 2016-06-03 14:19:45 -0700 |
---|---|---|
committer | Gerrit Code Review <gerrit@cyanogenmod.org> | 2016-06-08 16:57:23 -0700 |
commit | d5c496cb7a2134316bb91424093947920f2512e7 (patch) | |
tree | 57bd8240da43fb7555bf33a7f66aecec5acc4580 /src/com/android/settings/blacklist | |
parent | 6716780ab9fa557da806c92a4b3602569f314b63 (diff) | |
download | packages_apps_Settings-d5c496cb7a2134316bb91424093947920f2512e7.zip packages_apps_Settings-d5c496cb7a2134316bb91424093947920f2512e7.tar.gz packages_apps_Settings-d5c496cb7a2134316bb91424093947920f2512e7.tar.bz2 |
Use child fragment manager for nested dialog fragment
Change-Id: I7748b15f45c88b00bc1251121d6760cf16e25646
issue-id: CYNGNOS-2911
Diffstat (limited to 'src/com/android/settings/blacklist')
-rw-r--r-- | src/com/android/settings/blacklist/EntryEditDialogFragment.java | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/src/com/android/settings/blacklist/EntryEditDialogFragment.java b/src/com/android/settings/blacklist/EntryEditDialogFragment.java index 6a387bc..57797b9 100644 --- a/src/com/android/settings/blacklist/EntryEditDialogFragment.java +++ b/src/com/android/settings/blacklist/EntryEditDialogFragment.java @@ -20,6 +20,7 @@ import android.app.Activity; import android.app.AlertDialog; import android.app.Dialog; import android.app.DialogFragment; +import android.app.FragmentManager; import android.content.ContentUris; import android.content.Context; import android.content.DialogInterface; @@ -73,6 +74,8 @@ public class EntryEditDialogFragment extends DialogFragment private static final String STATE_MESSAGE = "message"; private static final String STATE_EDIT_ENABLED = "edit_enabled"; + private static final String DELETE_CONFIRM_FRAGMENT_TAG = "delete_confirm"; + public static EntryEditDialogFragment newInstance(long id) { Bundle args = new Bundle(); args.putLong("id", id); @@ -114,9 +117,11 @@ public class EntryEditDialogFragment extends DialogFragment neutralButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - EntryEditDialogFragment parent = EntryEditDialogFragment.this; - DialogFragment confirm = DeleteConfirmationFragment.newInstance(parent); - confirm.show(getFragmentManager(), "delete_confirm"); + FragmentManager fragMan = getChildFragmentManager(); + if (fragMan.findFragmentByTag(DELETE_CONFIRM_FRAGMENT_TAG) == null) { + DeleteConfirmationFragment.newInstance() + .show(fragMan, DELETE_CONFIRM_FRAGMENT_TAG); + } } }); @@ -297,10 +302,9 @@ public class EntryEditDialogFragment extends DialogFragment implements DialogInterface.OnClickListener { public DeleteConfirmationFragment() { } - public static DialogFragment newInstance(EntryEditDialogFragment parent) { - DialogFragment fragment = new DeleteConfirmationFragment(); - fragment.setTargetFragment(parent, 0); - return fragment; + + public static DialogFragment newInstance() { + return new DeleteConfirmationFragment(); } @Override @@ -317,7 +321,7 @@ public class EntryEditDialogFragment extends DialogFragment @Override public void onClick(DialogInterface dialog, int which) { - EntryEditDialogFragment parent = (EntryEditDialogFragment) getTargetFragment(); + EntryEditDialogFragment parent = (EntryEditDialogFragment) getParentFragment(); parent.onDeleteConfirmResult(which == DialogInterface.BUTTON_POSITIVE); } } |