Skip to content

Commit ddbf138

Browse files
author
Brian Colonna
committed
Fixed misplacement of cancel(X) button for Face Unlock
Before the FUL service started, the FUL cancel button was positioned off of the right side of the window. This was because the FaceUnlockView (derived from RelativeLayout) was calling super.onMeasure() incorrectly, preventing it from using the new 'square' size when laying out child views. Change-Id: I2f1e86617da5c8f37123febab2e433288bdea062
1 parent 68d257d commit ddbf138

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

core/java/com/android/internal/widget/FaceUnlockView.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,15 +53,17 @@ private int resolveMeasured(int measureSpec, int desired)
5353

5454
@Override
5555
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
56-
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
57-
5856
final int minimumWidth = getSuggestedMinimumWidth();
5957
final int minimumHeight = getSuggestedMinimumHeight();
6058
int viewWidth = resolveMeasured(widthMeasureSpec, minimumWidth);
6159
int viewHeight = resolveMeasured(heightMeasureSpec, minimumHeight);
6260

63-
viewWidth = viewHeight = Math.min(viewWidth, viewHeight);
64-
Log.v(TAG, "FaceUnlockView dimensions: " + viewWidth + "x" + viewHeight);
65-
setMeasuredDimension(viewWidth, viewHeight);
61+
final int chosenSize = Math.min(viewWidth, viewHeight);
62+
final int newWidthMeasureSpec =
63+
MeasureSpec.makeMeasureSpec(chosenSize, MeasureSpec.AT_MOST);
64+
final int newHeightMeasureSpec =
65+
MeasureSpec.makeMeasureSpec(chosenSize, MeasureSpec.AT_MOST);
66+
67+
super.onMeasure(newWidthMeasureSpec, newHeightMeasureSpec);
6668
}
6769
}

0 commit comments

Comments
 (0)