From b1861c3e89c3e869c95c5c01b78320a1dcef26ad Mon Sep 17 00:00:00 2001 From: Adam Powell Date: Sun, 16 Sep 2012 12:04:39 -0700 Subject: [PATCH] Minor fixes/clarifications for previous patch. Change-Id: Ib44f6de570064b3f3ddf70b6727b479a09ae5d7a --- core/java/android/view/ScaleGestureDetector.java | 5 ++--- core/res/res/values/config.xml | 8 +++++++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/core/java/android/view/ScaleGestureDetector.java b/core/java/android/view/ScaleGestureDetector.java index 7d896809de646..fa0313949e01c 100644 --- a/core/java/android/view/ScaleGestureDetector.java +++ b/core/java/android/view/ScaleGestureDetector.java @@ -213,8 +213,7 @@ public class ScaleGestureDetector { for (int i = 0; i < count; i++) { if (skipIndex == i) continue; - // touchMajor/Minor are axes of an ellipse; average them together and - // convert the resulting 'diameter' into a radius. + // Average touch major and touch minor and convert the resulting diameter into a radius. final float touchSize = (event.getTouchMajor(i) + event.getTouchMinor(i)) / 4; devSumX += Math.abs(event.getX(i) - focusX) + touchSize; devSumY += Math.abs(event.getY(i) - focusY) + touchSize; @@ -245,7 +244,7 @@ public class ScaleGestureDetector { mPrevSpanY = mCurrSpanY = spanY; mInitialSpan = mPrevSpan = mCurrSpan = span; } - if (!mInProgress && span > mMinSpan && + if (!mInProgress && span >= mMinSpan && (wasInProgress || Math.abs(span - mInitialSpan) > mSpanSlop)) { mPrevSpanX = mCurrSpanX = spanX; mPrevSpanY = mCurrSpanY = spanY; diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml index c97c2140704ae..93d7fcc4cdfdf 100755 --- a/core/res/res/values/config.xml +++ b/core/res/res/values/config.xml @@ -927,8 +927,14 @@ 1 + bucket should consider tuning this value in a device-specific overlay. + For best results, care should be taken such that this value remains + larger than the minimum reported touchMajor/touchMinor values + reported by the hardware. --> 25mm