diff options
| author | 2019-09-19 21:47:41 -0700 | |
|---|---|---|
| committer | 2019-09-26 18:20:51 +0000 | |
| commit | c5125f40bae594125d903e8dbf380aa5a58a1e4c (patch) | |
| tree | 418fe43d86841cd0d14cfe6c8dae290c6dd34877 | |
| parent | 4252183449824d77f5c4035e8c12bf504619a5b1 (diff) | |
Scale back up the task screenshot surface.
Fixes: 141340023
Test: Switch to another task in Overview in live tile mode, and make
sure the task screenshot upon recents animation is of the right size.
Change-Id: I209d43de48a2b952ce004acc748b52dab4f5080c
| -rw-r--r-- | services/core/java/com/android/server/wm/TaskScreenshotAnimatable.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/wm/TaskScreenshotAnimatable.java b/services/core/java/com/android/server/wm/TaskScreenshotAnimatable.java index d36ebf01bcc1..f291573f854a 100644 --- a/services/core/java/com/android/server/wm/TaskScreenshotAnimatable.java +++ b/services/core/java/com/android/server/wm/TaskScreenshotAnimatable.java @@ -38,8 +38,8 @@ class TaskScreenshotAnimatable implements SurfaceAnimator.Animatable { private int mWidth; private int mHeight; - TaskScreenshotAnimatable(Function<SurfaceSession, SurfaceControl.Builder> surfaceControlFactory, Task task, - SurfaceControl.ScreenshotGraphicBuffer screenshotBuffer) { + TaskScreenshotAnimatable(Function<SurfaceSession, SurfaceControl.Builder> surfaceControlFactory, + Task task, SurfaceControl.ScreenshotGraphicBuffer screenshotBuffer) { GraphicBuffer buffer = screenshotBuffer == null ? null : screenshotBuffer.getGraphicBuffer(); mTask = task; @@ -58,6 +58,8 @@ class TaskScreenshotAnimatable implements SurfaceAnimator.Animatable { surface.copyFrom(mSurfaceControl); surface.attachAndQueueBufferWithColorSpace(buffer, screenshotBuffer.getColorSpace()); surface.release(); + final float scale = 1.0f * mTask.getBounds().width() / mWidth; + mSurfaceControl.setMatrix(scale, 0, 0, scale); } getPendingTransaction().show(mSurfaceControl); } |