From 300768fea5e1bedbf667c8c8a83d5aa3981312d3 Mon Sep 17 00:00:00 2001 From: Dianne Hackborn Date: Thu, 27 Jan 2011 20:39:21 -0800 Subject: [PATCH] Fix issue #3400255 Dialog fragments crash on rotation in Settings app Change-Id: I337c1fb41e3fbedd7982418df497487481bb35d2 --- .../settings/SettingsPreferenceFragment.java | 25 +++++++++------------- 1 file changed, 10 insertions(+), 15 deletions(-) diff --git a/src/com/android/settings/SettingsPreferenceFragment.java b/src/com/android/settings/SettingsPreferenceFragment.java index dd078baba7..77f703ca1c 100644 --- a/src/com/android/settings/SettingsPreferenceFragment.java +++ b/src/com/android/settings/SettingsPreferenceFragment.java @@ -161,7 +161,16 @@ public class SettingsPreferenceFragment extends PreferenceFragment } @Override - public void onActivityCreated(Bundle savedInstanceState) { + public void onSaveInstanceState(Bundle outState) { + super.onSaveInstanceState(outState); + if (mParentFragment != null) { + outState.putInt(KEY_DIALOG_ID, mDialogId); + outState.putInt(KEY_PARENT_FRAGMENT_ID, mParentFragment.getId()); + } + } + + @Override + public Dialog onCreateDialog(Bundle savedInstanceState) { if (savedInstanceState != null) { mDialogId = savedInstanceState.getInt(KEY_DIALOG_ID, 0); int mParentFragmentId = savedInstanceState.getInt(KEY_PARENT_FRAGMENT_ID, -1); @@ -174,20 +183,6 @@ public class SettingsPreferenceFragment extends PreferenceFragment } } } - super.onActivityCreated(savedInstanceState); - } - - @Override - public void onSaveInstanceState(Bundle outState) { - super.onSaveInstanceState(outState); - if (mParentFragment != null) { - outState.putInt(KEY_DIALOG_ID, mDialogId); - outState.putInt(KEY_PARENT_FRAGMENT_ID, mParentFragment.getId()); - } - } - - @Override - public Dialog onCreateDialog(Bundle savedInstanceState) { return ((DialogCreatable) mParentFragment).onCreateDialog(mDialogId); } -- 2.11.0