Merge "Ensure that ML model results are still bounded by the gesture insets" into rvc-qpr-dev am: 64394decb9

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/13812875

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Id12b88d47334d77b436a2ac777a24dd51f43d5b5
This commit is contained in:
Winson Chung
2021-03-11 05:34:24 +00:00
committed by Automerger Merge Worker

View File

@@ -560,20 +560,21 @@ public class EdgeBackGestureHandler extends CurrentUserTracker implements Displa
if (mVocab != null) {
app = mVocab.getOrDefault(mPackageName, -1);
}
// Check if we are within the tightest bounds beyond which
// we would not need to run the ML model.
boolean withinRange = x <= mMLEnableWidth + mLeftInset
|| x >= (mDisplaySize.x - mMLEnableWidth - mRightInset);
if (!withinRange) {
// Denotes whether we should proceed with the gesture. Even if it is false, we may want to
// log it assuming it is not invalid due to exclusion.
boolean withinRange = x < mEdgeWidthLeft + mLeftInset
|| x >= (mDisplaySize.x - mEdgeWidthRight - mRightInset);
if (withinRange) {
int results = -1;
if (mUseMLModel && (results = getBackGesturePredictionsCategory(x, y, app)) != -1) {
withinRange = results == 1;
} else {
// Denotes whether we should proceed with the gesture.
// Even if it is false, we may want to log it assuming
// it is not invalid due to exclusion.
withinRange = x <= mEdgeWidthLeft + mLeftInset
|| x >= (mDisplaySize.x - mEdgeWidthRight - mRightInset);
// Check if we are within the tightest bounds beyond which we would not need to run the
// ML model
boolean withinMinRange = x < mMLEnableWidth + mLeftInset
|| x >= (mDisplaySize.x - mMLEnableWidth - mRightInset);
if (!withinMinRange && mUseMLModel
&& (results = getBackGesturePredictionsCategory(x, y, app)) != -1) {
withinRange = (results == 1);
}
}