commit | a1837f7e34b98cdc1e33d85da482878f30fb322f | [log] [tgz] |
---|---|---|
author | Evan Rosky <erosky@google.com> | Thu May 06 00:51:09 2021 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Thu May 06 00:51:09 2021 +0000 |
tree | a493423c0af43daf33b82a4d355f392804acbed3 | |
parent | 0804768c9f05061297d05d6c198a0eb22d5cf685 [diff] | |
parent | 6255fd20f814487c81913fb8936d9457ac2d86f3 [diff] |
Merge "Fix a bug in TouchInteractionService for fixed-display input rotation" into sc-dev am: 6255fd20f8 Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/14429344 Change-Id: Id86e853bd2581d5c6fca54c3bfbd9b2615378ae4
diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java index 4fc9770..338a6ef 100644 --- a/quickstep/src/com/android/quickstep/TouchInteractionService.java +++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java
@@ -496,6 +496,13 @@ Point sz = new Point(); display.getRealSize(sz); if (rotation != Surface.ROTATION_0) { + if ((rotation % 2) != 0) { + // via display-manager, the display size is unrotated, so "rotate" its size + // to match the rotation we are transforming the event into. + final int tmpX = sz.x; + sz.x = sz.y; + sz.y = tmpX; + } event.transform(InputChannelCompat.createRotationMatrix(rotation, sz.x, sz.y)); } }