diff --git a/api/current.xml b/api/current.xml index 92d9eff9ee6fa..5bc2dd3653960 100644 --- a/api/current.xml +++ b/api/current.xml @@ -28643,6 +28643,17 @@ visibility="public" > + + - + diff --git a/core/java/android/app/DialogFragment.java b/core/java/android/app/DialogFragment.java index dee1ef3a0a27b..cce7cd6bd8fec 100644 --- a/core/java/android/app/DialogFragment.java +++ b/core/java/android/app/DialogFragment.java @@ -258,6 +258,16 @@ public class DialogFragment extends Fragment dismissInternal(false); } + /** + * Version of {@link #dismiss()} that uses + * {@link FragmentTransaction#commitAllowingStateLoss() + * FragmentTransaction.commitAllowingStateLoss()}. See linked + * documentation for further details. + */ + public void dismissAllowingStateLoss() { + dismissInternal(true); + } + void dismissInternal(boolean allowStateLoss) { if (mDismissed) { return; diff --git a/core/java/android/preference/PreferenceActivity.java b/core/java/android/preference/PreferenceActivity.java index 2b609ea7ed6c5..ad0bc84a40817 100644 --- a/core/java/android/preference/PreferenceActivity.java +++ b/core/java/android/preference/PreferenceActivity.java @@ -1049,7 +1049,7 @@ public abstract class PreferenceActivity extends ListActivity implements FragmentTransaction transaction = getFragmentManager().beginTransaction(); transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE); transaction.replace(com.android.internal.R.id.prefs, f); - transaction.commit(); + transaction.commitAllowingStateLoss(); } /** @@ -1144,7 +1144,7 @@ public abstract class PreferenceActivity extends ListActivity implements } else { transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE); } - transaction.commit(); + transaction.commitAllowingStateLoss(); } /** @@ -1184,7 +1184,7 @@ public abstract class PreferenceActivity extends ListActivity implements } transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN); transaction.addToBackStack(BACK_STACK_PREFS); - transaction.commit(); + transaction.commitAllowingStateLoss(); } }