summaryrefslogtreecommitdiffstats
path: root/src/com/android/wallpaper
diff options
context:
space:
mode:
authorDianne Hackborn <hackbod@google.com>2009-11-10 15:28:29 -0800
committerDianne Hackborn <hackbod@google.com>2009-11-10 15:28:29 -0800
commitd4e57d4cb45c0c7db605420dccd9fd4db854e998 (patch)
tree8474ccdf467ef23f38c5d157723b52a304ed3a99 /src/com/android/wallpaper
parentc1664042a632eb25f68487eb54ca8310be90da65 (diff)
downloadandroid_packages_wallpapers_LivePicker-d4e57d4cb45c0c7db605420dccd9fd4db854e998.tar.gz
android_packages_wallpapers_LivePicker-d4e57d4cb45c0c7db605420dccd9fd4db854e998.tar.bz2
android_packages_wallpapers_LivePicker-d4e57d4cb45c0c7db605420dccd9fd4db854e998.zip
Related work on issue #2170897.
The wallpaper preview now delivers touch events to the wallpaper.
Diffstat (limited to 'src/com/android/wallpaper')
-rw-r--r--src/com/android/wallpaper/livepicker/LiveWallpaperPreview.java20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/com/android/wallpaper/livepicker/LiveWallpaperPreview.java b/src/com/android/wallpaper/livepicker/LiveWallpaperPreview.java
index cbc783d..f63d5a0 100644
--- a/src/com/android/wallpaper/livepicker/LiveWallpaperPreview.java
+++ b/src/com/android/wallpaper/livepicker/LiveWallpaperPreview.java
@@ -32,6 +32,7 @@ import android.os.RemoteException;
import android.os.IBinder;
import android.os.ParcelFileDescriptor;
import android.os.Bundle;
+import android.view.MotionEvent;
import android.view.View;
import android.view.WindowManager;
import android.view.ViewGroup;
@@ -182,6 +183,25 @@ public class LiveWallpaperPreview extends Activity {
mWallpaperConnection = null;
}
+ @Override
+ public boolean dispatchTouchEvent(MotionEvent ev) {
+ if (mWallpaperConnection != null && mWallpaperConnection.mEngine != null) {
+ MotionEvent dup = MotionEvent.obtainNoHistory(ev);
+ try {
+ mWallpaperConnection.mEngine.dispatchPointer(dup);
+ } catch (RemoteException e) {
+ }
+ }
+
+ if (ev.getAction() == MotionEvent.ACTION_DOWN) {
+ onUserInteraction();
+ }
+ if (getWindow().superDispatchTouchEvent(ev)) {
+ return true;
+ }
+ return onTouchEvent(ev);
+ }
+
class WallpaperConnection extends IWallpaperConnection.Stub implements ServiceConnection {
final Intent mIntent;
IWallpaperService mService;