X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=android_pandora.git;a=blobdiff_plain;f=apps%2FAndroidSupportV2%2Fsrc%2Fandroid%2Fsupport%2Fv2%2Fapp%2FBackStackRecord.java;fp=apps%2FAndroidSupportV2%2Fsrc%2Fandroid%2Fsupport%2Fv2%2Fapp%2FBackStackRecord.java;h=0000000000000000000000000000000000000000;hp=e3b1f4fcbb669381159b658e38ea5e9120b931e7;hb=86591c820f761cc27e31f78790c5a447b8411a33;hpb=ebcf0cf7399e3ec5ba51c5a904553fbcc55725e5 diff --git a/apps/AndroidSupportV2/src/android/support/v2/app/BackStackRecord.java b/apps/AndroidSupportV2/src/android/support/v2/app/BackStackRecord.java deleted file mode 100644 index e3b1f4f..0000000 --- a/apps/AndroidSupportV2/src/android/support/v2/app/BackStackRecord.java +++ /dev/null @@ -1,664 +0,0 @@ -/* - * Copyright (C) 2011 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package android.support.v2.app; - -import android.os.Parcel; -import android.os.Parcelable; -import android.text.TextUtils; -import android.util.Log; - -import java.io.FileDescriptor; -import java.io.PrintWriter; -import java.util.ArrayList; - -final class BackStackState implements Parcelable { - final int[] mOps; - final int mTransition; - final int mTransitionStyle; - final String mName; - final int mIndex; - final int mBreadCrumbTitleRes; - final CharSequence mBreadCrumbTitleText; - final int mBreadCrumbShortTitleRes; - final CharSequence mBreadCrumbShortTitleText; - - public BackStackState(FragmentManagerImpl fm, BackStackRecord bse) { - int numRemoved = 0; - BackStackRecord.Op op = bse.mHead; - while (op != null) { - if (op.removed != null) numRemoved += op.removed.size(); - op = op.next; - } - mOps = new int[bse.mNumOp*5 + numRemoved]; - - if (!bse.mAddToBackStack) { - throw new IllegalStateException("Not on back stack"); - } - - op = bse.mHead; - int pos = 0; - while (op != null) { - mOps[pos++] = op.cmd; - mOps[pos++] = op.fragment.mIndex; - mOps[pos++] = op.enterAnim; - mOps[pos++] = op.exitAnim; - if (op.removed != null) { - final int N = op.removed.size(); - mOps[pos++] = N; - for (int i=0; i 0) { - op.removed = new ArrayList(N); - for (int i=0; i CREATOR - = new Parcelable.Creator() { - public BackStackState createFromParcel(Parcel in) { - return new BackStackState(in); - } - - public BackStackState[] newArray(int size) { - return new BackStackState[size]; - } - }; -} - -/** - * @hide Entry of an operation on the fragment back stack. - */ -final class BackStackRecord extends FragmentTransaction implements - FragmentManager.BackStackEntry, Runnable { - static final String TAG = "BackStackEntry"; - - final FragmentManagerImpl mManager; - - static final int OP_NULL = 0; - static final int OP_ADD = 1; - static final int OP_REPLACE = 2; - static final int OP_REMOVE = 3; - static final int OP_HIDE = 4; - static final int OP_SHOW = 5; - - static final class Op { - Op next; - Op prev; - int cmd; - Fragment fragment; - int enterAnim; - int exitAnim; - ArrayList removed; - } - - Op mHead; - Op mTail; - int mNumOp; - int mEnterAnim; - int mExitAnim; - int mTransition; - int mTransitionStyle; - boolean mAddToBackStack; - boolean mAllowAddToBackStack = true; - String mName; - boolean mCommitted; - int mIndex; - - int mBreadCrumbTitleRes; - CharSequence mBreadCrumbTitleText; - int mBreadCrumbShortTitleRes; - CharSequence mBreadCrumbShortTitleText; - - public void dump(String prefix, FileDescriptor fd, PrintWriter writer, String[] args) { - writer.print(prefix); writer.print("mName="); writer.print(mName); - writer.print(" mIndex="); writer.print(mIndex); - writer.print(" mCommitted="); writer.println(mCommitted); - if (mTransition != FragmentTransaction.TRANSIT_NONE) { - writer.print(prefix); writer.print("mTransition=#"); - writer.print(Integer.toHexString(mTransition)); - writer.print(" mTransitionStyle=#"); - writer.println(Integer.toHexString(mTransitionStyle)); - } - if (mEnterAnim != 0 || mExitAnim !=0) { - writer.print(prefix); writer.print("mEnterAnim=#"); - writer.print(Integer.toHexString(mEnterAnim)); - writer.print(" mExitAnim=#"); - writer.println(Integer.toHexString(mExitAnim)); - } - if (mBreadCrumbTitleRes != 0 || mBreadCrumbTitleText != null) { - writer.print(prefix); writer.print("mBreadCrumbTitleRes=#"); - writer.print(Integer.toHexString(mBreadCrumbTitleRes)); - writer.print(" mBreadCrumbTitleText="); - writer.println(mBreadCrumbTitleText); - } - if (mBreadCrumbShortTitleRes != 0 || mBreadCrumbShortTitleText != null) { - writer.print(prefix); writer.print("mBreadCrumbShortTitleRes=#"); - writer.print(Integer.toHexString(mBreadCrumbShortTitleRes)); - writer.print(" mBreadCrumbShortTitleText="); - writer.println(mBreadCrumbShortTitleText); - } - - if (mHead != null) { - writer.print(prefix); writer.println("Operations:"); - String innerPrefix = prefix + " "; - Op op = mHead; - int num = 0; - while (op != null) { - writer.print(prefix); writer.print(" Op #"); writer.print(num); - writer.println(":"); - writer.print(innerPrefix); writer.print("cmd="); writer.print(op.cmd); - writer.print(" fragment="); writer.println(op.fragment); - if (op.enterAnim != 0 || op.exitAnim != 0) { - writer.print(prefix); writer.print("enterAnim="); writer.print(op.enterAnim); - writer.print(" exitAnim="); writer.println(op.exitAnim); - } - if (op.removed != null && op.removed.size() > 0) { - for (int i=0; i=0; i--) { - Fragment r = op.removed.get(i); - r.mBackStackNesting += amt; - if (FragmentManagerImpl.DEBUG) Log.v(TAG, "Bump nesting of " - + r + " to " + r.mBackStackNesting); - } - } - op = op.next; - } - } - - public int commit() { - return commitInternal(false); - } - - public int commitAllowingStateLoss() { - return commitInternal(true); - } - - int commitInternal(boolean allowStateLoss) { - if (mCommitted) throw new IllegalStateException("commit already called"); - if (FragmentManagerImpl.DEBUG) Log.v(TAG, "Commit: " + this); - mCommitted = true; - if (mAddToBackStack) { - mIndex = mManager.allocBackStackIndex(this); - } else { - mIndex = -1; - } - mManager.enqueueAction(this, allowStateLoss); - return mIndex; - } - - public void run() { - if (FragmentManagerImpl.DEBUG) Log.v(TAG, "Run: " + this); - - if (mAddToBackStack) { - if (mIndex < 0) { - throw new IllegalStateException("addToBackStack() called after commit()"); - } - } - - bumpBackStackNesting(1); - - Op op = mHead; - while (op != null) { - switch (op.cmd) { - case OP_ADD: { - Fragment f = op.fragment; - f.mNextAnim = op.enterAnim; - mManager.addFragment(f, false); - } break; - case OP_REPLACE: { - Fragment f = op.fragment; - if (mManager.mAdded != null) { - for (int i=0; i= 0) { - mManager.freeBackStackIndex(mIndex); - mIndex = -1; - } - } - - public String getName() { - return mName; - } - - public int getTransition() { - return mTransition; - } - - public int getTransitionStyle() { - return mTransitionStyle; - } - - public boolean isEmpty() { - return mNumOp == 0; - } -}