Fix unexpected surface visible after closing animation

As CL[1] introduced a behavior to keep the window surface when
performing the closing transition.

However in ActivityRecord#postApplyAnimation didn't call
onAnimationFinished when app transition finished because
the logic of delayed for isAnimating added TRANSITION flag to keep
delaying the finish callback.

That makes ActivityRecord#onExitAnimationDone will not be executed
expectedly and some surfaces will end up not remove and caused
some app compatibility issue. (i.e. Launching activity from nova
launcher's shortcut and going to home to all apps will see the
previous shortcut surface persisted on the screen)

Since adding TRANSITION flag here maybe too rough and
might be error-prone since "transitioning" is not yet to be running
animation, basically we don't expect it should delay the finished
animation callback.

[1]: I4da65a8d302af6ab846a19132397bfbac4ff2f4e

Fix: 202373844
Test: atest ActivityRecordTests#testInClosingAnimation_doNotHideSurface
Test: manual as issue steps:
   1. Have Nova launcher by default
   2. Launch a activity from nova launcher's shortcut
   3. Swipe up to get the applications drawer
   4. Click and type the top searchbox to filter apps
   5: Expect there is no icon surface shown to block the typing on the
      soft-keyboard.

Change-Id: Id3b653f93404f41febf654ece1f57cc6262ae257
2 files changed