summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher2/AllAppsView.java
diff options
context:
space:
mode:
authorJoe Onorato <joeo@android.com>2009-09-28 14:37:53 -0400
committerJoe Onorato <joeo@android.com>2009-09-28 17:34:44 -0400
commit360d0353fdc8ecfcb7131ca0976c9a126b8a0d18 (patch)
treef6177267d79af8394f0c948ae120a8e0bada2a31 /src/com/android/launcher2/AllAppsView.java
parent0a8dc2cd98ddb89ebde88096de8053ad57c45e09 (diff)
downloadandroid_packages_apps_Trebuchet-360d0353fdc8ecfcb7131ca0976c9a126b8a0d18.tar.gz
android_packages_apps_Trebuchet-360d0353fdc8ecfcb7131ca0976c9a126b8a0d18.tar.bz2
android_packages_apps_Trebuchet-360d0353fdc8ecfcb7131ca0976c9a126b8a0d18.zip
Reset rollo to page 0 when it's fully zoomed out.
Diffstat (limited to 'src/com/android/launcher2/AllAppsView.java')
-rw-r--r--src/com/android/launcher2/AllAppsView.java31
1 files changed, 22 insertions, 9 deletions
diff --git a/src/com/android/launcher2/AllAppsView.java b/src/com/android/launcher2/AllAppsView.java
index ae4467749..17d9a78f7 100644
--- a/src/com/android/launcher2/AllAppsView.java
+++ b/src/com/android/launcher2/AllAppsView.java
@@ -87,6 +87,7 @@ public class AllAppsView extends RSSurfaceView
private int mMotionDownRawY;
private int mScrollHandleTop;
private long mTouchTime;
+ private boolean mZoomSwipeInProgress;
static class Defines {
private static float farSize(float sizeAt0) {
@@ -236,16 +237,17 @@ public class AllAppsView extends RSSurfaceView
break;
case MotionEvent.ACTION_UP:
case MotionEvent.ACTION_CANCEL:
+ if (!mZoomSwipeInProgress) {
+ mRollo.mState.newPositionX = ev.getRawX() / Defines.SCREEN_WIDTH_PX;
+ mRollo.mState.newTouchDown = 0;
- mRollo.mState.newPositionX = ev.getRawX() / Defines.SCREEN_WIDTH_PX;
- mRollo.mState.newTouchDown = 0;
-
- mVelocity.computeCurrentVelocity(1000 /* px/sec */,
- mConfig.getScaledMaximumFlingVelocity());
- mRollo.mState.flingVelocityX = mVelocity.getXVelocity() / Defines.SCREEN_WIDTH_PX;
- mRollo.clearSelectedIcon();
- mRollo.mState.save();
- mRollo.mInvokeFling.execute();
+ mVelocity.computeCurrentVelocity(1000 /* px/sec */,
+ mConfig.getScaledMaximumFlingVelocity());
+ mRollo.mState.flingVelocityX = mVelocity.getXVelocity() / Defines.SCREEN_WIDTH_PX;
+ mRollo.clearSelectedIcon();
+ mRollo.mState.save();
+ mRollo.mInvokeFling.execute();
+ }
mLastMotionX = -10000;
mVelocity.recycle();
mVelocity = null;
@@ -297,6 +299,15 @@ public class AllAppsView extends RSSurfaceView
public void onDropCompleted(View target, boolean success) {
}
+ public void setZoomSwipeInProgress(boolean swiping, boolean touchStillDown) {
+ mZoomSwipeInProgress = swiping;
+ if (!touchStillDown) {
+ mRollo.mState.newTouchDown = 0;
+ mRollo.mState.save();
+ mRollo.mInvokeTouchUp.execute();
+ }
+ }
+
public void setZoomTarget(float amount) {
zoom(amount, true);
}
@@ -403,6 +414,7 @@ public class AllAppsView extends RSSurfaceView
private Script.Invokable mInvokeFling;
private Script.Invokable mInvokeSetZoomTarget;
private Script.Invokable mInvokeSetZoom;
+ private Script.Invokable mInvokeTouchUp;
private Sampler mSampler;
private Sampler mSamplerText;
@@ -631,6 +643,7 @@ public class AllAppsView extends RSSurfaceView
mInvokeFling = sb.addInvokable("fling");
mInvokeSetZoomTarget = sb.addInvokable("setZoomTarget");
mInvokeSetZoom = sb.addInvokable("setZoom");
+ mInvokeTouchUp = sb.addInvokable("touchUp");
mScript = sb.create();
mScript.setClearColor(0.0f, 0.0f, 0.0f, 0.0f);