commit | 8721df88b9cc67f758613b96283e546c0c55bb45 | [log] [tgz] |
---|---|---|
author | Evan Rosky <erosky@google.com> | Thu May 06 00:49:18 2021 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Thu May 06 00:49:18 2021 +0000 |
tree | d7e90be2ec40187c8e7b43ec040946f60cc61e11 | |
parent | 95048f8422363a7c0316f24b93f150e5179558e9 [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: Ib7fff2de72a5ea23449158cb7e158111076b077e
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)); } }