Loading src/com/cyanogenmod/trebuchet/Workspace.java +60 −60 Original line number Diff line number Diff line Loading @@ -81,6 +81,8 @@ public class Workspace extends PagedView DragController.DragListener, LauncherTransitionable, ViewGroup.OnHierarchyChangeListener { private static final String TAG = "Trebuchet.Workspace"; private static final boolean DEBUG_CHANGE_STATE_ANIMATIONS = false; // Y rotation to apply to the workspace screens private static final float WORKSPACE_ROTATION = 12.5f; private static final float WORKSPACE_OVERSCROLL_ROTATION = 24f; Loading Loading @@ -2212,9 +2214,9 @@ public class Workspace extends PagedView } } if (stateIsNormal) { // Zoom Effects if ((mTransitionEffect == TransitionEffect.ZoomIn || mTransitionEffect == TransitionEffect.ZoomOut) && stateIsNormal) { if ((mTransitionEffect == TransitionEffect.ZoomIn || mTransitionEffect == TransitionEffect.ZoomOut)) { if (i != mCurrentPage) { scale = (mTransitionEffect == TransitionEffect.ZoomIn ? 0.5f : 1.1f); } Loading @@ -2222,34 +2224,25 @@ public class Workspace extends PagedView // Stack Effect if (mTransitionEffect == TransitionEffect.Stack) { if (stateIsSpringLoaded) { cl.setVisibility(VISIBLE); } else if (stateIsNormal) { if (i <= mCurrentPage) { cl.setVisibility(VISIBLE); } else { cl.setVisibility(INVISIBLE); } } } // Flip Effect if (mTransitionEffect == TransitionEffect.Flip) { if (stateIsSpringLoaded) { cl.setVisibility(VISIBLE); } else if (stateIsNormal) { if (mTransitionEffect == TransitionEffect.Flip || mTransitionEffect == TransitionEffect.Accordion) { if (i == mCurrentPage) { cl.setVisibility(VISIBLE); } else { cl.setVisibility(INVISIBLE); } } } // Rotate Effects if ((mTransitionEffect == TransitionEffect.RotateUp || mTransitionEffect == TransitionEffect.RotateDown) && stateIsNormal) { if ((mTransitionEffect == TransitionEffect.RotateUp || mTransitionEffect == TransitionEffect.RotateDown)) { boolean up = mTransitionEffect == TransitionEffect.RotateUp; rotation = (up ? WORKSPACE_ROTATION : -WORKSPACE_ROTATION) * Math.max(-1.0f, Math.min(1.0f , mCurrentPage - i)); translationX = cl.getMeasuredWidth() * (Math.max(-1.0f, Math.min(1.0f, i - mCurrentPage))) + Loading @@ -2260,7 +2253,7 @@ public class Workspace extends PagedView } // Cube Effects if ((mTransitionEffect == TransitionEffect.CubeIn || mTransitionEffect == TransitionEffect.CubeOut) && stateIsNormal) { if ((mTransitionEffect == TransitionEffect.CubeIn || mTransitionEffect == TransitionEffect.CubeOut)) { if (i < mCurrentPage) { rotationY = mTransitionEffect == TransitionEffect.CubeOut ? -90.0f : 90.0f; } else if (i > mCurrentPage) { Loading @@ -2269,40 +2262,33 @@ public class Workspace extends PagedView } // Cylinder Effects if ((mTransitionEffect == TransitionEffect.CylinderIn || mTransitionEffect == TransitionEffect.CylinderOut) && stateIsNormal) { if ((mTransitionEffect == TransitionEffect.CylinderIn || mTransitionEffect == TransitionEffect.CylinderOut)) { if (i < mCurrentPage) { rotationY = mTransitionEffect == TransitionEffect.CylinderOut ? -WORKSPACE_ROTATION : WORKSPACE_ROTATION; cl.setPivotX(cl.getMeasuredWidth()); cl.setTranslationX(0); } else if (i > mCurrentPage) { rotationY = mTransitionEffect == TransitionEffect.CylinderOut ? WORKSPACE_ROTATION : -WORKSPACE_ROTATION; cl.setPivotX(0); cl.setTranslationX(0); } } // Carousel Effects if (mTransitionEffect == TransitionEffect.CarouselLeft || mTransitionEffect == TransitionEffect.CarouselRight && stateIsNormal) { if (mTransitionEffect == TransitionEffect.CarouselLeft || mTransitionEffect == TransitionEffect.CarouselRight) { if (i < mCurrentPage) { rotationY = 90.0f; } else if (i > mCurrentPage) { rotationY = -90.0f; } } // Accordion Effect if (mTransitionEffect == TransitionEffect.Accordion) { if (stateIsSpringLoaded) { cl.setVisibility(VISIBLE); } else if (stateIsNormal) { if (i == mCurrentPage) { cl.setVisibility(VISIBLE); } else { cl.setVisibility(INVISIBLE); } } } if (stateIsSmall || stateIsSpringLoaded) { cl.setCameraDistance(1280 * mDensity); cl.setPivotX(cl.getMeasuredWidth() * 0.5f); cl.setPivotY(cl.getMeasuredHeight() * 0.5f); cl.setVisibility(VISIBLE); } // Determine the pages alpha during the state transition Loading Loading @@ -2350,8 +2336,22 @@ public class Workspace extends PagedView } if (animated) { if (DEBUG_CHANGE_STATE_ANIMATIONS) Log.d(TAG, oldState + " > " + state); for (int index = 0; index < getChildCount(); index++) { final int i = index; if (DEBUG_CHANGE_STATE_ANIMATIONS) { Log.d(TAG, i + " alpha: " + mOldAlphas[i] + " > " + mNewAlphas[i]); Log.d(TAG, i + " translationX: " + mOldTranslationXs[i] + " > " + mNewTranslationXs[i]); Log.d(TAG, i + " translationY: " + mOldTranslationYs[i] + " > " + mNewTranslationYs[i]); Log.d(TAG, i + " scaleX: " + mOldScaleXs[i] + " > " + mNewScaleXs[i]); Log.d(TAG, i + " scaleY: " + mOldScaleYs[i] + " > " + mNewScaleYs[i]); Log.d(TAG, i + " alpha: " + mOldAlphas[i] + " > " + mNewAlphas[i]); Log.d(TAG, i + " backgroundAlpha: " + mOldBackgroundAlphas[i] + " > " + mNewBackgroundAlphas[i]); Log.d(TAG, i + " rotation: " + mOldRotations[i] + " > " + mNewRotations[i]); Log.d(TAG, i + " rotationY: " + mOldRotationYs[i] + " > " + mNewRotationYs[i]); } final CellLayout cl = (CellLayout) getChildAt(i); float currentAlpha = cl.getShortcutsAndWidgets().getAlpha(); if (mOldAlphas[i] == 0 && mNewAlphas[i] == 0) { Loading Loading
src/com/cyanogenmod/trebuchet/Workspace.java +60 −60 Original line number Diff line number Diff line Loading @@ -81,6 +81,8 @@ public class Workspace extends PagedView DragController.DragListener, LauncherTransitionable, ViewGroup.OnHierarchyChangeListener { private static final String TAG = "Trebuchet.Workspace"; private static final boolean DEBUG_CHANGE_STATE_ANIMATIONS = false; // Y rotation to apply to the workspace screens private static final float WORKSPACE_ROTATION = 12.5f; private static final float WORKSPACE_OVERSCROLL_ROTATION = 24f; Loading Loading @@ -2212,9 +2214,9 @@ public class Workspace extends PagedView } } if (stateIsNormal) { // Zoom Effects if ((mTransitionEffect == TransitionEffect.ZoomIn || mTransitionEffect == TransitionEffect.ZoomOut) && stateIsNormal) { if ((mTransitionEffect == TransitionEffect.ZoomIn || mTransitionEffect == TransitionEffect.ZoomOut)) { if (i != mCurrentPage) { scale = (mTransitionEffect == TransitionEffect.ZoomIn ? 0.5f : 1.1f); } Loading @@ -2222,34 +2224,25 @@ public class Workspace extends PagedView // Stack Effect if (mTransitionEffect == TransitionEffect.Stack) { if (stateIsSpringLoaded) { cl.setVisibility(VISIBLE); } else if (stateIsNormal) { if (i <= mCurrentPage) { cl.setVisibility(VISIBLE); } else { cl.setVisibility(INVISIBLE); } } } // Flip Effect if (mTransitionEffect == TransitionEffect.Flip) { if (stateIsSpringLoaded) { cl.setVisibility(VISIBLE); } else if (stateIsNormal) { if (mTransitionEffect == TransitionEffect.Flip || mTransitionEffect == TransitionEffect.Accordion) { if (i == mCurrentPage) { cl.setVisibility(VISIBLE); } else { cl.setVisibility(INVISIBLE); } } } // Rotate Effects if ((mTransitionEffect == TransitionEffect.RotateUp || mTransitionEffect == TransitionEffect.RotateDown) && stateIsNormal) { if ((mTransitionEffect == TransitionEffect.RotateUp || mTransitionEffect == TransitionEffect.RotateDown)) { boolean up = mTransitionEffect == TransitionEffect.RotateUp; rotation = (up ? WORKSPACE_ROTATION : -WORKSPACE_ROTATION) * Math.max(-1.0f, Math.min(1.0f , mCurrentPage - i)); translationX = cl.getMeasuredWidth() * (Math.max(-1.0f, Math.min(1.0f, i - mCurrentPage))) + Loading @@ -2260,7 +2253,7 @@ public class Workspace extends PagedView } // Cube Effects if ((mTransitionEffect == TransitionEffect.CubeIn || mTransitionEffect == TransitionEffect.CubeOut) && stateIsNormal) { if ((mTransitionEffect == TransitionEffect.CubeIn || mTransitionEffect == TransitionEffect.CubeOut)) { if (i < mCurrentPage) { rotationY = mTransitionEffect == TransitionEffect.CubeOut ? -90.0f : 90.0f; } else if (i > mCurrentPage) { Loading @@ -2269,40 +2262,33 @@ public class Workspace extends PagedView } // Cylinder Effects if ((mTransitionEffect == TransitionEffect.CylinderIn || mTransitionEffect == TransitionEffect.CylinderOut) && stateIsNormal) { if ((mTransitionEffect == TransitionEffect.CylinderIn || mTransitionEffect == TransitionEffect.CylinderOut)) { if (i < mCurrentPage) { rotationY = mTransitionEffect == TransitionEffect.CylinderOut ? -WORKSPACE_ROTATION : WORKSPACE_ROTATION; cl.setPivotX(cl.getMeasuredWidth()); cl.setTranslationX(0); } else if (i > mCurrentPage) { rotationY = mTransitionEffect == TransitionEffect.CylinderOut ? WORKSPACE_ROTATION : -WORKSPACE_ROTATION; cl.setPivotX(0); cl.setTranslationX(0); } } // Carousel Effects if (mTransitionEffect == TransitionEffect.CarouselLeft || mTransitionEffect == TransitionEffect.CarouselRight && stateIsNormal) { if (mTransitionEffect == TransitionEffect.CarouselLeft || mTransitionEffect == TransitionEffect.CarouselRight) { if (i < mCurrentPage) { rotationY = 90.0f; } else if (i > mCurrentPage) { rotationY = -90.0f; } } // Accordion Effect if (mTransitionEffect == TransitionEffect.Accordion) { if (stateIsSpringLoaded) { cl.setVisibility(VISIBLE); } else if (stateIsNormal) { if (i == mCurrentPage) { cl.setVisibility(VISIBLE); } else { cl.setVisibility(INVISIBLE); } } } if (stateIsSmall || stateIsSpringLoaded) { cl.setCameraDistance(1280 * mDensity); cl.setPivotX(cl.getMeasuredWidth() * 0.5f); cl.setPivotY(cl.getMeasuredHeight() * 0.5f); cl.setVisibility(VISIBLE); } // Determine the pages alpha during the state transition Loading Loading @@ -2350,8 +2336,22 @@ public class Workspace extends PagedView } if (animated) { if (DEBUG_CHANGE_STATE_ANIMATIONS) Log.d(TAG, oldState + " > " + state); for (int index = 0; index < getChildCount(); index++) { final int i = index; if (DEBUG_CHANGE_STATE_ANIMATIONS) { Log.d(TAG, i + " alpha: " + mOldAlphas[i] + " > " + mNewAlphas[i]); Log.d(TAG, i + " translationX: " + mOldTranslationXs[i] + " > " + mNewTranslationXs[i]); Log.d(TAG, i + " translationY: " + mOldTranslationYs[i] + " > " + mNewTranslationYs[i]); Log.d(TAG, i + " scaleX: " + mOldScaleXs[i] + " > " + mNewScaleXs[i]); Log.d(TAG, i + " scaleY: " + mOldScaleYs[i] + " > " + mNewScaleYs[i]); Log.d(TAG, i + " alpha: " + mOldAlphas[i] + " > " + mNewAlphas[i]); Log.d(TAG, i + " backgroundAlpha: " + mOldBackgroundAlphas[i] + " > " + mNewBackgroundAlphas[i]); Log.d(TAG, i + " rotation: " + mOldRotations[i] + " > " + mNewRotations[i]); Log.d(TAG, i + " rotationY: " + mOldRotationYs[i] + " > " + mNewRotationYs[i]); } final CellLayout cl = (CellLayout) getChildAt(i); float currentAlpha = cl.getShortcutsAndWidgets().getAlpha(); if (mOldAlphas[i] == 0 && mNewAlphas[i] == 0) { Loading