Loading services/core/java/com/android/server/wm/DockedStackDividerController.java +8 −1 Original line number Diff line number Diff line Loading @@ -396,6 +396,10 @@ public class DockedStackDividerController { if (mAdjustedForIme != adjustedForIme || (adjustedForIme && mImeHeight != imeHeight) || mAdjustedForDivider != adjustedForDivider) { if (animate && !mAnimatingForMinimizedDockedStack) { // Notify SystemUI to set the target docked stack size according current docked // state without animation when calling startImeAdjustAnimation. notifyDockedStackMinimizedChanged(mMinimizedDock, false /* animate */, isHomeStackResizable()); startImeAdjustAnimation(adjustedForIme, adjustedForDivider, imeWin); } else { // Animation might be delayed, so only notify if we don't run an animation. Loading Loading @@ -889,7 +893,10 @@ public class DockedStackDividerController { } if (mAnimatingForMinimizedDockedStack) { return animateForMinimizedDockedStack(now); } else if (mAnimatingForIme) { } else if (mAnimatingForIme && !mDisplayContent.mAppTransition.isRunning()) { // To prevent task stack resize animation may flicking when playing app transition // animation & IME window enter animation in parallel, make sure app transition is done // and then start to animate for IME. return animateForIme(now); } return false; Loading services/core/java/com/android/server/wm/TaskStack.java +8 −0 Original line number Diff line number Diff line Loading @@ -1163,6 +1163,14 @@ public class TaskStack extends WindowContainer<Task> implements } private boolean adjustForIME(final WindowState imeWin) { // To prevent task stack resize animation may flicking when playing app transition // animation & IME window enter animation in parallel, we need to make sure app // transition is done and then adjust task size for IME, skip the new adjusted frame when // app transition is still running. if (getDisplayContent().mAppTransition.isRunning()) { return false; } final int dockedSide = getDockSide(); final boolean dockedTopOrBottom = dockedSide == DOCKED_TOP || dockedSide == DOCKED_BOTTOM; if (imeWin == null || !dockedTopOrBottom) { Loading Loading
services/core/java/com/android/server/wm/DockedStackDividerController.java +8 −1 Original line number Diff line number Diff line Loading @@ -396,6 +396,10 @@ public class DockedStackDividerController { if (mAdjustedForIme != adjustedForIme || (adjustedForIme && mImeHeight != imeHeight) || mAdjustedForDivider != adjustedForDivider) { if (animate && !mAnimatingForMinimizedDockedStack) { // Notify SystemUI to set the target docked stack size according current docked // state without animation when calling startImeAdjustAnimation. notifyDockedStackMinimizedChanged(mMinimizedDock, false /* animate */, isHomeStackResizable()); startImeAdjustAnimation(adjustedForIme, adjustedForDivider, imeWin); } else { // Animation might be delayed, so only notify if we don't run an animation. Loading Loading @@ -889,7 +893,10 @@ public class DockedStackDividerController { } if (mAnimatingForMinimizedDockedStack) { return animateForMinimizedDockedStack(now); } else if (mAnimatingForIme) { } else if (mAnimatingForIme && !mDisplayContent.mAppTransition.isRunning()) { // To prevent task stack resize animation may flicking when playing app transition // animation & IME window enter animation in parallel, make sure app transition is done // and then start to animate for IME. return animateForIme(now); } return false; Loading
services/core/java/com/android/server/wm/TaskStack.java +8 −0 Original line number Diff line number Diff line Loading @@ -1163,6 +1163,14 @@ public class TaskStack extends WindowContainer<Task> implements } private boolean adjustForIME(final WindowState imeWin) { // To prevent task stack resize animation may flicking when playing app transition // animation & IME window enter animation in parallel, we need to make sure app // transition is done and then adjust task size for IME, skip the new adjusted frame when // app transition is still running. if (getDisplayContent().mAppTransition.isRunning()) { return false; } final int dockedSide = getDockSide(); final boolean dockedTopOrBottom = dockedSide == DOCKED_TOP || dockedSide == DOCKED_BOTTOM; if (imeWin == null || !dockedTopOrBottom) { Loading