Don't resize task in current stack when moving it to a docked stack

The creation of a docked stack resizies all other stacks and thier
resizeable tasks. This will cause a task we are moving to a docked
stack to be initially resized in the current stack before it is
moved to the docked stack. We now disable resizeablility on the
task we are moving during the creation of a stack so we don't
resize it in the current stack.

Bug: 23978723
Change-Id: Ibb1c6d2a8493971a6cbccd782a378459fedcb162
diff --git a/services/core/java/com/android/server/am/ActivityStackSupervisor.java b/services/core/java/com/android/server/am/ActivityStackSupervisor.java
index f546c1d..d6cd1f0 100644
--- a/services/core/java/com/android/server/am/ActivityStackSupervisor.java
+++ b/services/core/java/com/android/server/am/ActivityStackSupervisor.java
@@ -3210,7 +3210,13 @@
         final boolean wasFocused = isFrontStack(task.stack) && (topRunningActivityLocked() == r);
         final boolean wasResumed = wasFocused && (task.stack.mResumedActivity == r);
 
+        final boolean resizeable = task.mResizeable;
+        // Temporarily disable resizeablility of task we are moving. We don't want it to be resized
+        // if a docked stack is created below which will lead to the stack we are moving from and
+        // its resizeable tasks being resized.
+        task.mResizeable = false;
         final ActivityStack stack = getStack(stackId, CREATE_IF_NEEDED, toTop);
+        task.mResizeable = resizeable;
         mWindowManager.moveTaskToStack(task.taskId, stack.mStackId, toTop);
         if (task.stack != null) {
             task.stack.removeTask(task, reason, MOVING);