From fdf5fd63c6e76fffd28df6d032ee6bac1417edf6 Mon Sep 17 00:00:00 2001 From: Joe Onorato Date: Tue, 31 Aug 2010 09:59:21 -0700 Subject: [PATCH] DO NOT MERGE - Allow the workspace to swipe while it's loading. You still can't modify the contents of the workspace while it's loading, but this makes it appear a little bit more responsive. Launching apps while the launcher is loading has always been possible. Bug: 2748595 Change-Id: Icf252beaee5b801b30216202ce6032c4d565cde3 --- src/com/android/launcher2/AllApps3D.java | 7 ++++++- src/com/android/launcher2/Workspace.java | 12 +++--------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/src/com/android/launcher2/AllApps3D.java b/src/com/android/launcher2/AllApps3D.java index b8aa8eccf1..308ad28d9c 100644 --- a/src/com/android/launcher2/AllApps3D.java +++ b/src/com/android/launcher2/AllApps3D.java @@ -726,7 +726,12 @@ public class AllApps3D extends RSSurfaceView } public boolean onLongClick(View v) { - if (mLocks != 0 || !isVisible()) { + // We don't accept long click events in these cases + // - If the workspace isn't ready to accept a drop + // - If we're not done loading (because we might be confused about which item + // to pick up + // - If we're not visible + if (!isVisible() || mLauncher.isWorkspaceLocked() || mLocks != 0) { return true; } if (sRollo.checkClickOK() && mCurrentIconIndex == mDownIconIndex diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java index c337c3078e..30b149449f 100644 --- a/src/com/android/launcher2/Workspace.java +++ b/src/com/android/launcher2/Workspace.java @@ -558,9 +558,7 @@ public class Workspace extends ViewGroup implements DropTarget, DragSource, Drag public boolean requestChildRectangleOnScreen(View child, Rect rectangle, boolean immediate) { int screen = indexOfChild(child); if (screen != mCurrentScreen || !mScroller.isFinished()) { - if (!mLauncher.isWorkspaceLocked()) { - snapToScreen(screen); - } + snapToScreen(screen); return true; } return false; @@ -625,7 +623,7 @@ public class Workspace extends ViewGroup implements DropTarget, DragSource, Drag @Override public boolean dispatchTouchEvent(MotionEvent ev) { if (ev.getAction() == MotionEvent.ACTION_DOWN) { - if (mLauncher.isWorkspaceLocked() || mLauncher.isAllAppsVisible()) { + if (mLauncher.isAllAppsVisible()) { return false; } } @@ -634,9 +632,8 @@ public class Workspace extends ViewGroup implements DropTarget, DragSource, Drag @Override public boolean onInterceptTouchEvent(MotionEvent ev) { - final boolean workspaceLocked = mLauncher.isWorkspaceLocked(); final boolean allAppsVisible = mLauncher.isAllAppsVisible(); - if (workspaceLocked || allAppsVisible) { + if (allAppsVisible) { return false; // We don't want the events. Let them fall through to the all apps view. } @@ -840,9 +837,6 @@ public class Workspace extends ViewGroup implements DropTarget, DragSource, Drag @Override public boolean onTouchEvent(MotionEvent ev) { - if (mLauncher.isWorkspaceLocked()) { - return false; // We don't want the events. Let them fall through to the all apps view. - } if (mLauncher.isAllAppsVisible()) { // Cancel any scrolling that is in progress. if (!mScroller.isFinished()) {