Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit bf6b4287 authored by Ming-Shin Lu's avatar Ming-Shin Lu
Browse files

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
parent db885833
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment