From 52af6b646bd3abc8223ed01a36f6da785b35085d Mon Sep 17 00:00:00 2001 From: Blazej Magnowski Date: Wed, 30 Sep 2015 15:46:17 -0700 Subject: [PATCH] Fixes in FalsingManager Classifiers and Evaluators and in DragDownHelper Fixed couple nits, fixed a bug in DragDownHelper and in EndPoinRatioClassifier, improved evaluation. Change-Id: I27e9c5584f7bf0a834ac39791ee124ccc11ba0cf --- .../systemui/classifier/AnglesPercentageEvaluator.java | 2 +- .../systemui/classifier/EndPointRatioClassifier.java | 8 +++++--- .../systemui/classifier/HumanInteractionClassifier.java | 2 +- .../classifier/SpeedAnglesPercentageEvaluator.java | 2 +- .../com/android/systemui/classifier/SpeedEvaluator.java | 7 ++++--- .../android/systemui/classifier/SpeedRatioEvaluator.java | 6 ++++-- .../systemui/classifier/SpeedVarianceEvaluator.java | 8 ++++---- .../com/android/systemui/statusbar/DragDownHelper.java | 5 +---- 8 files changed, 21 insertions(+), 19 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/classifier/AnglesPercentageEvaluator.java b/packages/SystemUI/src/com/android/systemui/classifier/AnglesPercentageEvaluator.java index a0ceb2958c330..e6c42da361cc9 100644 --- a/packages/SystemUI/src/com/android/systemui/classifier/AnglesPercentageEvaluator.java +++ b/packages/SystemUI/src/com/android/systemui/classifier/AnglesPercentageEvaluator.java @@ -20,8 +20,8 @@ public class AnglesPercentageEvaluator { public static float evaluate(float value) { float evaluation = 0.0f; if (value < 1.00) evaluation++; - if (value < 0.95) evaluation++; if (value < 0.90) evaluation++; + if (value < 0.70) evaluation++; return evaluation; } } diff --git a/packages/SystemUI/src/com/android/systemui/classifier/EndPointRatioClassifier.java b/packages/SystemUI/src/com/android/systemui/classifier/EndPointRatioClassifier.java index c125e0093db56..652d969f7256b 100644 --- a/packages/SystemUI/src/com/android/systemui/classifier/EndPointRatioClassifier.java +++ b/packages/SystemUI/src/com/android/systemui/classifier/EndPointRatioClassifier.java @@ -27,10 +27,12 @@ public class EndPointRatioClassifier extends StrokeClassifier { @Override public float getFalseTouchEvaluation(int type, Stroke stroke) { + float ratio; if (stroke.getTotalLength() == 0.0f) { - return 1.0f; + ratio = 1.0f; + } else { + ratio = stroke.getEndPointLength() / stroke.getTotalLength(); } - return EndPointRatioEvaluator.evaluate( - stroke.getEndPointLength() / stroke.getTotalLength()); + return EndPointRatioEvaluator.evaluate(ratio); } } \ No newline at end of file diff --git a/packages/SystemUI/src/com/android/systemui/classifier/HumanInteractionClassifier.java b/packages/SystemUI/src/com/android/systemui/classifier/HumanInteractionClassifier.java index a7a569419624d..27d4c0ecf1321 100644 --- a/packages/SystemUI/src/com/android/systemui/classifier/HumanInteractionClassifier.java +++ b/packages/SystemUI/src/com/android/systemui/classifier/HumanInteractionClassifier.java @@ -48,7 +48,7 @@ public class HumanInteractionClassifier extends Classifier { private final float mDpi; private HistoryEvaluator mHistoryEvaluator; - private boolean mEnableClassifier = true; + private boolean mEnableClassifier = false; private int mCurrentType = Classifier.GENERIC; protected final ContentObserver mSettingsObserver = new ContentObserver(mHandler) { diff --git a/packages/SystemUI/src/com/android/systemui/classifier/SpeedAnglesPercentageEvaluator.java b/packages/SystemUI/src/com/android/systemui/classifier/SpeedAnglesPercentageEvaluator.java index 2a45fa36dbc6a..d50d406f2fef1 100644 --- a/packages/SystemUI/src/com/android/systemui/classifier/SpeedAnglesPercentageEvaluator.java +++ b/packages/SystemUI/src/com/android/systemui/classifier/SpeedAnglesPercentageEvaluator.java @@ -20,8 +20,8 @@ public class SpeedAnglesPercentageEvaluator { public static float evaluate(float value) { float evaluation = 0.0f; if (value < 1.00) evaluation++; - if (value < 0.95) evaluation++; if (value < 0.90) evaluation++; + if (value < 0.70) evaluation++; return evaluation; } } diff --git a/packages/SystemUI/src/com/android/systemui/classifier/SpeedEvaluator.java b/packages/SystemUI/src/com/android/systemui/classifier/SpeedEvaluator.java index c0e4a2ddc89aa..afd8d01521727 100644 --- a/packages/SystemUI/src/com/android/systemui/classifier/SpeedEvaluator.java +++ b/packages/SystemUI/src/com/android/systemui/classifier/SpeedEvaluator.java @@ -19,9 +19,10 @@ package com.android.systemui.classifier; public class SpeedEvaluator { public static float evaluate(float value) { float evaluation = 0.0f; - if (value < 4.0 || value > 35.0) evaluation += 1.0; - if (value < 2.2) evaluation += 1.0; - if (value > 50.0) evaluation += 1.0; + if (value < 4.0) evaluation++; + if (value < 2.2) evaluation++; + if (value > 35.0) evaluation++; + if (value > 50.0) evaluation++; return evaluation; } } diff --git a/packages/SystemUI/src/com/android/systemui/classifier/SpeedRatioEvaluator.java b/packages/SystemUI/src/com/android/systemui/classifier/SpeedRatioEvaluator.java index 349aa9ed49d69..4c6cea0367adc 100644 --- a/packages/SystemUI/src/com/android/systemui/classifier/SpeedRatioEvaluator.java +++ b/packages/SystemUI/src/com/android/systemui/classifier/SpeedRatioEvaluator.java @@ -19,8 +19,10 @@ package com.android.systemui.classifier; public class SpeedRatioEvaluator { public static float evaluate(float value) { float evaluation = 0.0f; - if (value > 9.0) ++evaluation; - if (value > 18.0) ++evaluation; + if (value <= 1.0) evaluation++; + if (value <= 0.5) evaluation++; + if (value > 9.0) evaluation++; + if (value > 18.0) evaluation++; return evaluation; } } diff --git a/packages/SystemUI/src/com/android/systemui/classifier/SpeedVarianceEvaluator.java b/packages/SystemUI/src/com/android/systemui/classifier/SpeedVarianceEvaluator.java index 8f9a7e159638d..48b1b6e0dbf11 100644 --- a/packages/SystemUI/src/com/android/systemui/classifier/SpeedVarianceEvaluator.java +++ b/packages/SystemUI/src/com/android/systemui/classifier/SpeedVarianceEvaluator.java @@ -19,10 +19,10 @@ package com.android.systemui.classifier; public class SpeedVarianceEvaluator { public static float evaluate(float value) { float evaluation = 0.0f; - if (value > 0.06) evaluation += 1.0; - if (value > 0.15) evaluation += 1.0; - if (value > 0.3) evaluation += 1.0; - if (value > 0.6) evaluation += 1.0; + if (value > 0.06) evaluation++; + if (value > 0.15) evaluation++; + if (value > 0.3) evaluation++; + if (value > 0.6) evaluation++; return evaluation; } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/DragDownHelper.java b/packages/SystemUI/src/com/android/systemui/statusbar/DragDownHelper.java index 687f6c1b09225..7b0a44f7fe38d 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/DragDownHelper.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/DragDownHelper.java @@ -149,10 +149,7 @@ public class DragDownHelper implements Gefingerpoken { } private boolean isFalseTouch() { - if (mFalsingManager.isClassiferEnabled()) { - return mFalsingManager.isFalseTouch(); - } - return !mDraggedFarEnough; + return mFalsingManager.isFalseTouch() || !mDraggedFarEnough; } private void captureStartingChild(float x, float y) {