summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Dianne Hackborn <hackbod@google.com> 2011-06-03 17:54:28 -0700
committer Android Git Automerger <android-git-automerger@android.com> 2011-06-03 17:54:28 -0700
commitb4815f47e6d612da6e2d0650a2d8f103626e3ec7 (patch)
tree2f616f98bfcb4d9acacebb476e3b766c458f9f82
parent076138357027189f1bb90caf8c2e1a09497d78ac (diff)
parentbd754205d0b59315582855329649dad925a04b82 (diff)
am bd754205: Merge "Fix to not lose state when saving a deactivated fragment." into honeycomb-mr2
* commit 'bd754205d0b59315582855329649dad925a04b82': Fix to not lose state when saving a deactivated fragment.
-rw-r--r--core/java/android/app/FragmentManager.java14
1 files changed, 6 insertions, 8 deletions
diff --git a/core/java/android/app/FragmentManager.java b/core/java/android/app/FragmentManager.java
index 2164ada862b9..3b2e108af9d0 100644
--- a/core/java/android/app/FragmentManager.java
+++ b/core/java/android/app/FragmentManager.java
@@ -1109,7 +1109,6 @@ final class FragmentManagerImpl extends FragmentManager {
mNeedMenuInvalidate = true;
}
fragment.mAdded = false;
- fragment.mRemoving = true;
moveToState(fragment, Fragment.CREATED, transition, transitionStyle);
}
}
@@ -1122,7 +1121,6 @@ final class FragmentManagerImpl extends FragmentManager {
if (!fragment.mAdded) {
mAdded.add(fragment);
fragment.mAdded = true;
- fragment.mRemoving = false;
if (fragment.mHasMenu) {
mNeedMenuInvalidate = true;
}
@@ -1435,13 +1433,13 @@ final class FragmentManagerImpl extends FragmentManager {
if (f.mView != null) {
saveFragmentViewState(f);
- if (f.mSavedViewState != null) {
- if (result == null) {
- result = new Bundle();
- }
- result.putSparseParcelableArray(
- FragmentManagerImpl.VIEW_STATE_TAG, f.mSavedViewState);
+ }
+ if (f.mSavedViewState != null) {
+ if (result == null) {
+ result = new Bundle();
}
+ result.putSparseParcelableArray(
+ FragmentManagerImpl.VIEW_STATE_TAG, f.mSavedViewState);
}
return result;