Merge "DO NOT MERGE : Fix measuring with outset for orientation" into klp-modular-dev
This commit is contained in:
@@ -2259,7 +2259,6 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback {
|
|||||||
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
|
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
|
||||||
final DisplayMetrics metrics = getContext().getResources().getDisplayMetrics();
|
final DisplayMetrics metrics = getContext().getResources().getDisplayMetrics();
|
||||||
final boolean isPortrait = metrics.widthPixels < metrics.heightPixels;
|
final boolean isPortrait = metrics.widthPixels < metrics.heightPixels;
|
||||||
|
|
||||||
final int widthMode = getMode(widthMeasureSpec);
|
final int widthMode = getMode(widthMeasureSpec);
|
||||||
final int heightMode = getMode(heightMeasureSpec);
|
final int heightMode = getMode(heightMeasureSpec);
|
||||||
|
|
||||||
@@ -2306,11 +2305,17 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback {
|
|||||||
|
|
||||||
if (mOutsetBottom != null) {
|
if (mOutsetBottom != null) {
|
||||||
int mode = MeasureSpec.getMode(heightMeasureSpec);
|
int mode = MeasureSpec.getMode(heightMeasureSpec);
|
||||||
if (mode != MeasureSpec.UNSPECIFIED) {
|
if (mode != MeasureSpec.UNSPECIFIED && !isPortrait) {
|
||||||
int outset = (int) mOutsetBottom.getDimension(metrics);
|
int outset = (int) mOutsetBottom.getDimension(metrics);
|
||||||
int height = MeasureSpec.getSize(heightMeasureSpec);
|
int height = MeasureSpec.getSize(heightMeasureSpec);
|
||||||
heightMeasureSpec = MeasureSpec.makeMeasureSpec(height + outset, mode);
|
heightMeasureSpec = MeasureSpec.makeMeasureSpec(height + outset, mode);
|
||||||
}
|
}
|
||||||
|
mode = MeasureSpec.getMode(widthMeasureSpec);
|
||||||
|
if (mode != MeasureSpec.UNSPECIFIED && isPortrait) {
|
||||||
|
int outset = (int) mOutsetBottom.getDimension(metrics);
|
||||||
|
int width = MeasureSpec.getSize(widthMeasureSpec);
|
||||||
|
widthMeasureSpec = MeasureSpec.makeMeasureSpec(width + outset, mode);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
|
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
|
||||||
|
|||||||
Reference in New Issue
Block a user