Fix PiP regression when the stack animation is canceled

- We should immediately run the animation-end logic when the PiP animation
  is canceled and the final resize does not happen. Also ensure we call
  this animation end logic when not running a PiP animation (though nothing
  currently does this).

Bug: 109712078
Test: Enter PiP from a landscape app, ensure that the animation state is
      cleared
Test: atest CtsActivityManagerDeviceTestCases:ActivityManagerPinnedStackTests

Change-Id: Icd559a5377215eddc5fa4b1d3629d914396d9a3d
This commit is contained in:
Winson Chung
2018-06-05 16:03:12 -07:00
parent f5976be9f4
commit e40082ea4c

View File

@@ -1682,6 +1682,10 @@ public class TaskStack extends WindowContainer<Task> implements
if (finalStackSize != null) {
setPinnedStackSize(finalStackSize, null);
} else {
// We have been canceled, so the final stack size is null, still run the
// animation-end logic
onPipAnimationEndResize();
}
try {
@@ -1693,6 +1697,9 @@ public class TaskStack extends WindowContainer<Task> implements
} catch (RemoteException e) {
// I don't believe you...
}
} else {
// No PiP animation, just run the normal animation-end logic
onPipAnimationEndResize();
}
}