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