Merge "Merge "Fix clipRect transform rounding errors" into nyc-dev am: 2957d9d604 am: 0c63355719" into nyc-mr1-dev-plus-aosp
This commit is contained in:
committed by
Android (Google) Code Review
commit
4321845b8d
@@ -2732,14 +2732,14 @@ final class WindowState implements WindowManagerPolicy.WindowState {
|
|||||||
return mStringNameCache;
|
return mStringNameCache;
|
||||||
}
|
}
|
||||||
|
|
||||||
void transformFromScreenToSurfaceSpace(Rect rect) {
|
void transformClipRectFromScreenToSurfaceSpace(Rect clipRect) {
|
||||||
if (mHScale >= 0) {
|
if (mHScale >= 0) {
|
||||||
rect.left = (int) (rect.left / mHScale);
|
clipRect.left = (int) (clipRect.left / mHScale);
|
||||||
rect.right = (int) (rect.right / mHScale);
|
clipRect.right = (int) Math.ceil(clipRect.right / mHScale);
|
||||||
}
|
}
|
||||||
if (mVScale >= 0) {
|
if (mVScale >= 0) {
|
||||||
rect.top = (int) (rect.top / mVScale);
|
clipRect.top = (int) (clipRect.top / mVScale);
|
||||||
rect.bottom = (int) (rect.bottom / mVScale);
|
clipRect.bottom = (int) Math.ceil(clipRect.bottom / mVScale);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1281,7 +1281,7 @@ class WindowStateAnimator {
|
|||||||
if (DEBUG_WINDOW_CROP) Slog.d(TAG,
|
if (DEBUG_WINDOW_CROP) Slog.d(TAG,
|
||||||
"win=" + w + " Clip rect after stack adjustment=" + clipRect);
|
"win=" + w + " Clip rect after stack adjustment=" + clipRect);
|
||||||
|
|
||||||
w.transformFromScreenToSurfaceSpace(clipRect);
|
w.transformClipRectFromScreenToSurfaceSpace(clipRect);
|
||||||
|
|
||||||
// See {@link WindowState#notifyMovedInStack} for why this is necessary.
|
// See {@link WindowState#notifyMovedInStack} for why this is necessary.
|
||||||
if (w.hasJustMovedInStack() && mLastClipRect.isEmpty() && !clipRect.isEmpty()) {
|
if (w.hasJustMovedInStack() && mLastClipRect.isEmpty() && !clipRect.isEmpty()) {
|
||||||
|
|||||||
Reference in New Issue
Block a user