diff --git a/quickstep/src/com/android/quickstep/views/FloatingTaskView.java b/quickstep/src/com/android/quickstep/views/FloatingTaskView.java index 283c6745df..0cea45e41d 100644 --- a/quickstep/src/com/android/quickstep/views/FloatingTaskView.java +++ b/quickstep/src/com/android/quickstep/views/FloatingTaskView.java @@ -129,7 +129,7 @@ public class FloatingTaskView extends FrameLayout { public void update(RectF position, float progress, float windowRadius) { MarginLayoutParams lp = (MarginLayoutParams) getLayoutParams(); - float dX = position.left - lp.getMarginStart(); + float dX = position.left - mStartingPosition.left; float dY = position.top - lp.topMargin; setTranslationX(dX); @@ -160,10 +160,15 @@ public class FloatingTaskView extends FrameLayout { lp.ignoreInsets = true; // Position the floating view exactly on top of the original lp.topMargin = Math.round(pos.top); - lp.setMarginStart(Math.round(pos.left)); + if (mIsRtl) { + lp.setMarginStart(mLauncher.getDeviceProfile().widthPx - Math.round(pos.right)); + } else { + lp.setMarginStart(Math.round(pos.left)); + } + // Set the properties here already to make sure they are available when running the first // animation frame. - int left = lp.leftMargin; + int left = (int) pos.left; layout(left, lp.topMargin, left + lp.width, lp.topMargin + lp.height); }