diff options
| -rw-r--r-- | api/current.xml | 13 | ||||
| -rw-r--r-- | core/java/android/app/DialogFragment.java | 10 | ||||
| -rw-r--r-- | core/java/android/preference/PreferenceActivity.java | 6 |
3 files changed, 25 insertions, 4 deletions
diff --git a/api/current.xml b/api/current.xml index 92d9eff9ee6f..5bc2dd365396 100644 --- a/api/current.xml +++ b/api/current.xml @@ -28643,6 +28643,17 @@ visibility="public" > </method> +<method name="dismissAllowingStateLoss" + return="void" + abstract="false" + native="false" + synchronized="false" + static="false" + final="false" + deprecated="not deprecated" + visibility="public" +> +</method> <method name="getDialog" return="android.app.Dialog" abstract="false" @@ -267031,7 +267042,7 @@ deprecated="not deprecated" visibility="public" > -<parameter name="t" type="T"> +<parameter name="arg0" type="T"> </parameter> </method> </interface> diff --git a/core/java/android/app/DialogFragment.java b/core/java/android/app/DialogFragment.java index dee1ef3a0a27..cce7cd6bd8fe 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 2b609ea7ed6c..ad0bc84a4081 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(); } } |