Loading packages/SystemUI/src/com/android/systemui/classifier/BrightLineFalsingManager.java +27 −22 Original line number Diff line number Diff line Loading @@ -197,12 +197,11 @@ public class BrightLineFalsingManager implements FalsingManager { public boolean isFalseTouch(@Classifier.InteractionType int interactionType) { mPriorInteractionType = interactionType; if (skipFalsing()) { mPriorResults = getPassedResult(1); logDebug("Skipped falsing"); return false; } final boolean booleanResult; if (!mTestHarness && !mDataProvider.isJustUnlockedWithFace() && !mDockManager.isDocked()) { final boolean[] localResult = {false}; mPriorResults = mClassifiers.stream().map(falsingClassifier -> { FalsingClassifier.Result r = falsingClassifier.classifyGesture( Loading @@ -213,15 +212,10 @@ public class BrightLineFalsingManager implements FalsingManager { return r; }).collect(Collectors.toList()); booleanResult = localResult[0]; } else { booleanResult = false; mPriorResults = Collections.singleton(FalsingClassifier.Result.passed(1)); } logDebug("False Gesture: " + booleanResult); logDebug("False Gesture: " + localResult[0]); return booleanResult; return localResult[0]; } @Override Loading @@ -236,6 +230,8 @@ public class BrightLineFalsingManager implements FalsingManager { @Override public boolean isFalseTap(@Penalty int penalty) { if (skipFalsing()) { mPriorResults = getPassedResult(1); logDebug("Skipped falsing"); return false; } Loading Loading @@ -264,7 +260,7 @@ public class BrightLineFalsingManager implements FalsingManager { if (!singleTapResult.isFalse()) { if (mDataProvider.isJustUnlockedWithFace()) { // Immediately pass if a face is detected. mPriorResults = Collections.singleton(FalsingClassifier.Result.passed(1)); mPriorResults = getPassedResult(1); logDebug("False Single Tap: false (face detected)"); return false; } else if (!isFalseDoubleTap()) { Loading @@ -281,7 +277,7 @@ public class BrightLineFalsingManager implements FalsingManager { mFalsingTapListeners.forEach(FalsingTapListener::onDoubleTapRequired); return true; } else { mPriorResults = Collections.singleton(FalsingClassifier.Result.passed(0.1)); mPriorResults = getPassedResult(0.1); logDebug("False Single Tap: false (default)"); return false; } Loading @@ -296,6 +292,8 @@ public class BrightLineFalsingManager implements FalsingManager { @Override public boolean isFalseDoubleTap() { if (skipFalsing()) { mPriorResults = getPassedResult(1); logDebug("Skipped falsing"); return false; } Loading @@ -309,7 +307,10 @@ public class BrightLineFalsingManager implements FalsingManager { } private boolean skipFalsing() { return !mKeyguardStateController.isShowing(); return !mKeyguardStateController.isShowing() || mTestHarness || mDataProvider.isJustUnlockedWithFace() || mDockManager.isDocked(); } @Override Loading Loading @@ -411,6 +412,10 @@ public class BrightLineFalsingManager implements FalsingManager { mHistoryTracker.removeBeliefListener(mBeliefListener); } private static Collection<FalsingClassifier.Result> getPassedResult(double confidence) { return Collections.singleton(FalsingClassifier.Result.passed(confidence)); } static void logDebug(String msg) { logDebug(msg, null); } Loading Loading
packages/SystemUI/src/com/android/systemui/classifier/BrightLineFalsingManager.java +27 −22 Original line number Diff line number Diff line Loading @@ -197,12 +197,11 @@ public class BrightLineFalsingManager implements FalsingManager { public boolean isFalseTouch(@Classifier.InteractionType int interactionType) { mPriorInteractionType = interactionType; if (skipFalsing()) { mPriorResults = getPassedResult(1); logDebug("Skipped falsing"); return false; } final boolean booleanResult; if (!mTestHarness && !mDataProvider.isJustUnlockedWithFace() && !mDockManager.isDocked()) { final boolean[] localResult = {false}; mPriorResults = mClassifiers.stream().map(falsingClassifier -> { FalsingClassifier.Result r = falsingClassifier.classifyGesture( Loading @@ -213,15 +212,10 @@ public class BrightLineFalsingManager implements FalsingManager { return r; }).collect(Collectors.toList()); booleanResult = localResult[0]; } else { booleanResult = false; mPriorResults = Collections.singleton(FalsingClassifier.Result.passed(1)); } logDebug("False Gesture: " + booleanResult); logDebug("False Gesture: " + localResult[0]); return booleanResult; return localResult[0]; } @Override Loading @@ -236,6 +230,8 @@ public class BrightLineFalsingManager implements FalsingManager { @Override public boolean isFalseTap(@Penalty int penalty) { if (skipFalsing()) { mPriorResults = getPassedResult(1); logDebug("Skipped falsing"); return false; } Loading Loading @@ -264,7 +260,7 @@ public class BrightLineFalsingManager implements FalsingManager { if (!singleTapResult.isFalse()) { if (mDataProvider.isJustUnlockedWithFace()) { // Immediately pass if a face is detected. mPriorResults = Collections.singleton(FalsingClassifier.Result.passed(1)); mPriorResults = getPassedResult(1); logDebug("False Single Tap: false (face detected)"); return false; } else if (!isFalseDoubleTap()) { Loading @@ -281,7 +277,7 @@ public class BrightLineFalsingManager implements FalsingManager { mFalsingTapListeners.forEach(FalsingTapListener::onDoubleTapRequired); return true; } else { mPriorResults = Collections.singleton(FalsingClassifier.Result.passed(0.1)); mPriorResults = getPassedResult(0.1); logDebug("False Single Tap: false (default)"); return false; } Loading @@ -296,6 +292,8 @@ public class BrightLineFalsingManager implements FalsingManager { @Override public boolean isFalseDoubleTap() { if (skipFalsing()) { mPriorResults = getPassedResult(1); logDebug("Skipped falsing"); return false; } Loading @@ -309,7 +307,10 @@ public class BrightLineFalsingManager implements FalsingManager { } private boolean skipFalsing() { return !mKeyguardStateController.isShowing(); return !mKeyguardStateController.isShowing() || mTestHarness || mDataProvider.isJustUnlockedWithFace() || mDockManager.isDocked(); } @Override Loading Loading @@ -411,6 +412,10 @@ public class BrightLineFalsingManager implements FalsingManager { mHistoryTracker.removeBeliefListener(mBeliefListener); } private static Collection<FalsingClassifier.Result> getPassedResult(double confidence) { return Collections.singleton(FalsingClassifier.Result.passed(confidence)); } static void logDebug(String msg) { logDebug(msg, null); } Loading