diff options
author | Jeff Brown <jeffbrown@google.com> | 2010-12-03 11:52:49 -0800 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2010-12-03 11:52:49 -0800 |
commit | 4b67b442446cb4a0ea8373a8aa942a069431d6bc (patch) | |
tree | 00810230da865087d9fbfac64ee61ebfad416221 /src/com/android | |
parent | 22c73e1b07c5b0a91e7c9f608855e651f49fea3e (diff) | |
parent | 1d0867c8de6a889bccde9b7e768daef182a25e5c (diff) | |
download | android_packages_apps_Trebuchet-4b67b442446cb4a0ea8373a8aa942a069431d6bc.tar.gz android_packages_apps_Trebuchet-4b67b442446cb4a0ea8373a8aa942a069431d6bc.tar.bz2 android_packages_apps_Trebuchet-4b67b442446cb4a0ea8373a8aa942a069431d6bc.zip |
Merge "Send live wallpaper taps."
Diffstat (limited to 'src/com/android')
-rw-r--r-- | src/com/android/launcher2/CellLayout.java | 3 | ||||
-rw-r--r-- | src/com/android/launcher2/PagedView.java | 11 | ||||
-rw-r--r-- | src/com/android/launcher2/Workspace.java | 19 |
3 files changed, 27 insertions, 6 deletions
diff --git a/src/com/android/launcher2/CellLayout.java b/src/com/android/launcher2/CellLayout.java index 023e9f480..8fe489dff 100644 --- a/src/com/android/launcher2/CellLayout.java +++ b/src/com/android/launcher2/CellLayout.java @@ -796,7 +796,8 @@ public class CellLayout extends ViewGroup implements Dimmable { final int[] cellXY = mTmpCellXY; getLocationOnScreen(cellXY); - mWallpaperManager.sendWallpaperCommand(getWindowToken(), "android.home.drop", + mWallpaperManager.sendWallpaperCommand(getWindowToken(), + WallpaperManager.COMMAND_DROP, cellXY[0] + childLeft + lp.width / 2, cellXY[1] + childTop + lp.height / 2, 0, null); diff --git a/src/com/android/launcher2/PagedView.java b/src/com/android/launcher2/PagedView.java index 31cfb5b21..257531ecd 100644 --- a/src/com/android/launcher2/PagedView.java +++ b/src/com/android/launcher2/PagedView.java @@ -757,8 +757,9 @@ public abstract class PagedView extends ViewGroup { break; } - case MotionEvent.ACTION_CANCEL: case MotionEvent.ACTION_UP: + onWallpaperTap(ev); + case MotionEvent.ACTION_CANCEL: mTouchState = TOUCH_STATE_REST; mAllowLongPress = false; mActivePointerId = INVALID_POINTER; @@ -958,6 +959,8 @@ public abstract class PagedView extends ViewGroup { } else { snapToDestination(); } + } else { + onWallpaperTap(ev); } mTouchState = TOUCH_STATE_REST; mActivePointerId = INVALID_POINTER; @@ -1011,6 +1014,12 @@ public abstract class PagedView extends ViewGroup { mVelocityTracker.clear(); } } + if (mTouchState == TOUCH_STATE_REST) { + onWallpaperTap(ev); + } + } + + protected void onWallpaperTap(MotionEvent ev) { } @Override diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java index b12d357f4..7027d8359 100644 --- a/src/com/android/launcher2/Workspace.java +++ b/src/com/android/launcher2/Workspace.java @@ -542,10 +542,6 @@ public class Workspace extends SmoothPagedView Launcher.setScreen(mCurrentPage); }; - private void updateWallpaperOffset() { - updateWallpaperOffset(getChildAt(getChildCount() - 1).getRight() - (mRight - mLeft)); - } - private void updateWallpaperOffset(int scrollRange) { final boolean isStaticWallpaper = (mWallpaperManager != null) && (mWallpaperManager.getWallpaperInfo() == null); @@ -892,6 +888,21 @@ public class Workspace extends SmoothPagedView return super.onTouchEvent(ev); } + @Override + protected void onWallpaperTap(MotionEvent ev) { + final int[] position = mTempCell; + getLocationOnScreen(position); + + int pointerIndex = ev.getActionIndex(); + position[0] += (int) ev.getX(pointerIndex); + position[1] += (int) ev.getY(pointerIndex); + + mWallpaperManager.sendWallpaperCommand(getWindowToken(), + ev.getAction() == MotionEvent.ACTION_UP + ? WallpaperManager.COMMAND_TAP : WallpaperManager.COMMAND_SECONDARY_TAP, + position[0], position[1], 0, null); + } + public boolean isSmall() { return mIsSmall; } |