summaryrefslogtreecommitdiffstats
path: root/src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java
diff options
context:
space:
mode:
authornebkat <nebkat@teamhacksung.org>2012-12-18 17:14:20 +0000
committernebkat <nebkat@teamhacksung.org>2012-12-18 17:14:20 +0000
commitabb448df67f9c818ce382d70221732e63aace2b4 (patch)
treefd140215f3c85f9e362037bc24bbf14335960a98 /src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java
parentee1d489eff284b35151586c214fb5ae0953b8a34 (diff)
downloadandroid_packages_apps_Trebuchet-abb448df67f9c818ce382d70221732e63aace2b4.tar.gz
android_packages_apps_Trebuchet-abb448df67f9c818ce382d70221732e63aace2b4.tar.bz2
android_packages_apps_Trebuchet-abb448df67f9c818ce382d70221732e63aace2b4.zip
Transition Effects Fixes
Change-Id: I30f82e067bc44128d7ca9859d2eaa7d2fc689e36
Diffstat (limited to 'src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java')
-rw-r--r--src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java30
1 files changed, 19 insertions, 11 deletions
diff --git a/src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java b/src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java
index 756662742..945d5b76e 100644
--- a/src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java
+++ b/src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java
@@ -303,6 +303,7 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
private static final float TRANSITION_SCREEN_ROTATION = 12.5f;
private boolean mScrollTransformsDirty = false;
private boolean mOverscrollTransformsDirty = false;
+ private int mCameraDistance;
private AccelerateInterpolator mAlphaInterpolator = new AccelerateInterpolator(0.9f);
private DecelerateInterpolator mLeftScreenAlphaInterpolator = new DecelerateInterpolator(4);
public enum TransitionEffect {
@@ -378,6 +379,8 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
Resources resources = context.getResources();
+ mCameraDistance = resources.getInteger(R.integer.config_cameraDistance);
+
// Preferences
mJoinWidgetsApps = PreferencesProvider.Interface.Drawer.getJoinWidgetsApps(context);
mVertical = PreferencesProvider.Interface.Drawer.getVertical(context);
@@ -1897,7 +1900,7 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
float alpha = 1 - Math.abs(scrollProgress);
if (in) {
- v.setCameraDistance(mDensity * CAMERA_DISTANCE);
+ v.setCameraDistance(mDensity * mCameraDistance);
}
if (!mVertical) {
@@ -2012,7 +2015,7 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
} else {
v.setTranslationY(v.getMeasuredHeight() * scrollProgress);
v.setRotationX(-rotation);
- v.setCameraDistance(mDensity * CAMERA_DISTANCE);
+ v.setCameraDistance(mDensity * mCameraDistance);
}
if (v.getVisibility() != VISIBLE) {
v.setVisibility(VISIBLE);
@@ -2110,20 +2113,25 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
View v = getPageAt(index);
if (v != null) {
float scrollProgress = getScrollProgress(screenScroll, v, index);
- float rotation = - TRANSITION_MAX_ROTATION * scrollProgress;
- v.setCameraDistance(mDensity * CAMERA_DISTANCE);
+ float rotation = -TRANSITION_MAX_ROTATION * scrollProgress;
+ v.setCameraDistance(mDensity * mCameraDistance);
+ if (!mOverscrollTransformsDirty) {
+ mOverscrollTransformsDirty = true;
+ if (!mVertical) {
+ v.setPivotX(v.getMeasuredWidth() * (index == 0 ? TRANSITION_PIVOT : 1 - TRANSITION_PIVOT));
+ v.setPivotY(v.getMeasuredHeight() * 0.5f);
+ v.setTranslationX(0);
+ } else {
+ v.setPivotX(v.getMeasuredWidth() * 0.5f);
+ v.setPivotY(v.getMeasuredHeight() * (index == 0 ? TRANSITION_PIVOT : 1 - TRANSITION_PIVOT));
+ v.setTranslationY(0);
+ }
+ }
if (!mVertical) {
- v.setPivotX(v.getMeasuredWidth() * (index == 0 ? TRANSITION_PIVOT : 1 - TRANSITION_PIVOT));
- v.setPivotY(v.getMeasuredHeight() * 0.5f);
v.setRotationY(rotation);
- v.setTranslationX(0);
} else {
- v.setPivotX(v.getMeasuredWidth() * 0.5f);
- v.setPivotY(v.getMeasuredHeight() * (index == 0 ? TRANSITION_PIVOT : 1 - TRANSITION_PIVOT));
v.setRotationX(-rotation);
- v.setTranslationY(0);
}
- mOverscrollTransformsDirty = true;
}
}
}