Send live wallpaper taps.

Change-Id: I25465e6fa7a69ef5c35e69ddc375e65797f44bc6
diff --git a/src/com/android/launcher2/CellLayout.java b/src/com/android/launcher2/CellLayout.java
index 023e9f4..8fe489d 100644
--- a/src/com/android/launcher2/CellLayout.java
+++ b/src/com/android/launcher2/CellLayout.java
@@ -796,7 +796,8 @@
 
                     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 31cfb5b..257531e 100644
--- a/src/com/android/launcher2/PagedView.java
+++ b/src/com/android/launcher2/PagedView.java
@@ -757,8 +757,9 @@
                 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 @@
                 } else {
                     snapToDestination();
                 }
+            } else {
+                onWallpaperTap(ev);
             }
             mTouchState = TOUCH_STATE_REST;
             mActivePointerId = INVALID_POINTER;
@@ -1011,6 +1014,12 @@
                 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 b12d357..7027d83 100644
--- a/src/com/android/launcher2/Workspace.java
+++ b/src/com/android/launcher2/Workspace.java
@@ -542,10 +542,6 @@
         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 @@
         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;
     }