diff options
| -rw-r--r-- | services/core/java/com/android/server/wm/WindowContainer.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/wm/WindowContainer.java b/services/core/java/com/android/server/wm/WindowContainer.java index 33c0fe13af11..91afa04555ab 100644 --- a/services/core/java/com/android/server/wm/WindowContainer.java +++ b/services/core/java/com/android/server/wm/WindowContainer.java @@ -3216,6 +3216,10 @@ class WindowContainer<E extends WindowContainer> extends ConfigurationContainer< void resetSurfacePositionForAnimationLeash(Transaction t) { t.setPosition(mSurfaceControl, 0, 0); + if (mSyncState != SYNC_STATE_NONE && t != mSyncTransaction) { + // Avoid restoring to old position if the sync transaction is applied later. + mSyncTransaction.setPosition(mSurfaceControl, 0, 0); + } mLastSurfacePosition.set(0, 0); } |