diff options
Diffstat (limited to 'native/android/surface_control.cpp')
-rw-r--r-- | native/android/surface_control.cpp | 23 |
1 files changed, 1 insertions, 22 deletions
diff --git a/native/android/surface_control.cpp b/native/android/surface_control.cpp index a8c2ea544d38..93a54445a033 100644 --- a/native/android/surface_control.cpp +++ b/native/android/surface_control.cpp @@ -454,28 +454,7 @@ void ASurfaceTransaction_setGeometry(ASurfaceTransaction* aSurfaceTransaction, sourceRect.makeInvalid(); } transaction->setBufferCrop(surfaceControl, sourceRect); - - int destW = destRect.width(); - int destH = destRect.height(); - if (destRect.left < 0) { - destRect.left = 0; - destRect.right = destW; - } - if (destRect.top < 0) { - destRect.top = 0; - destRect.bottom = destH; - } - - if (!sourceRect.isEmpty()) { - float sx = destW / static_cast<float>(sourceRect.width()); - float sy = destH / static_cast<float>(sourceRect.height()); - transaction->setPosition(surfaceControl, destRect.left - (sourceRect.left * sx), - destRect.top - (sourceRect.top * sy)); - transaction->setMatrix(surfaceControl, sx, 0, 0, sy); - } else { - transaction->setPosition(surfaceControl, destRect.left, destRect.top); - } - + transaction->setDestinationFrame(surfaceControl, destRect); transaction->setTransform(surfaceControl, transform); bool transformToInverseDisplay = (NATIVE_WINDOW_TRANSFORM_INVERSE_DISPLAY & transform) == NATIVE_WINDOW_TRANSFORM_INVERSE_DISPLAY; |