Swap video frame rotation direction.
The DISPLAY_ORIENTATION_* values indicate the physical rotation of the
display, and not the rotation of the graphics surface (see
android.view.Display#getRotation()). To compensate for a physical
rotation in one direction, the video frame needs to be rotated in the
opposite direction.
Bug: 150382187
Test: atest libinput_tests inputflinger_tests
Change-Id: Iddd943c35084f7032a8e60273e5e63b59ad10d1c
diff --git a/libs/input/TouchVideoFrame.cpp b/libs/input/TouchVideoFrame.cpp
index 145b4ae..c62e098 100644
--- a/libs/input/TouchVideoFrame.cpp
+++ b/libs/input/TouchVideoFrame.cpp
@@ -43,13 +43,13 @@
void TouchVideoFrame::rotate(int32_t orientation) {
switch (orientation) {
case DISPLAY_ORIENTATION_90:
- rotateQuarterTurn(true /*clockwise*/);
+ rotateQuarterTurn(false /*clockwise*/);
break;
case DISPLAY_ORIENTATION_180:
rotate180();
break;
case DISPLAY_ORIENTATION_270:
- rotateQuarterTurn(false /*clockwise*/);
+ rotateQuarterTurn(true /*clockwise*/);
break;
}
}