diff options
author | Tor Lillqvist <tml@iki.fi> | 2013-03-02 20:56:04 +0200 |
---|---|---|
committer | Tor Lillqvist <tml@iki.fi> | 2013-03-02 21:00:01 +0200 |
commit | ec7986d43be123f66a952ab9619c4beccd0c8446 (patch) | |
tree | 316b1652ff4979f52c027b7be6b8c4ff79fd0070 /android/experimental/desktop/src | |
parent | bcfd6ac251afeba25413c0ffa7fd2344d11bf308 (diff) |
Try to make the temporary pinch/spread hack look nicer
Change-Id: Id293e04c089b9304721f83fb4eb77cffab67cedd
Diffstat (limited to 'android/experimental/desktop/src')
-rw-r--r-- | android/experimental/desktop/src/org/libreoffice/experimental/desktop/Desktop.java | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/android/experimental/desktop/src/org/libreoffice/experimental/desktop/Desktop.java b/android/experimental/desktop/src/org/libreoffice/experimental/desktop/Desktop.java index 7664bf88e715..786bcad12d9d 100644 --- a/android/experimental/desktop/src/org/libreoffice/experimental/desktop/Desktop.java +++ b/android/experimental/desktop/src/org/libreoffice/experimental/desktop/Desktop.java @@ -162,6 +162,7 @@ public class Desktop { Bitmap mBitmap; boolean renderedOnce; + boolean scalingInProgress; ScaleGestureDetector gestureDetector; float scale = 1; @@ -189,6 +190,7 @@ public class Desktop Log.i(TAG, "onScaleBegin: pivot=(" + detector.getFocusX() + ", " + detector.getFocusY() + ")"); setPivotX(detector.getFocusX()); setPivotY(detector.getFocusY()); + scalingInProgress = true; return true; } @@ -211,6 +213,7 @@ public class Desktop scale = 1; setScaleX(scale); setScaleY(scale); + scalingInProgress = false; } }); } @@ -229,7 +232,8 @@ public class Desktop renderedOnce = true; // re-call ourselves a bit later ... - invalidate(); + if (!scalingInProgress) + invalidate(); } @Override public boolean onKeyDown(int keyCode, KeyEvent event) @@ -263,7 +267,12 @@ public class Desktop @Override public boolean onTouchEvent(MotionEvent event) { - if (gestureDetector.onTouchEvent(event)) + Log.i(TAG, "onTouchEvent, scalingInProgress=" + scalingInProgress); + + // For now, when during scaling we just scale the bitmap + // view, if a scaling gesture is in progress no other + // touch processing should be done. + if (gestureDetector.onTouchEvent(event) && scalingInProgress) return true; if (!renderedOnce) |