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

Commit 440f0683 authored by Ming-Shin Lu's avatar Ming-Shin Lu
Browse files

Re-compute IME target after the transition finished

With enabling the shell transition, launcher will setTransientLaunch
as true when starting the recents animation for launcher to make
it is not IME target during transitioning.

but shell didn't re-compute IME target again after the transition
finish, so when swiping to all apps won't see the IME is visible with
enabling the device search feature.

Simply adding the correct check in
RootWindowContainer#checkAppTransitionReady to invoke
handleAnimatingStoppedAndTransition with re-compute IME target
when finishing shell-transition playing. In case
missing the IME target update when the window has no longer in this
transient state.

Fix: 210390668
Test: manual as steps:
0) Enabling the shell transition.
1) launching an app with focusing the editor to show IME.
2) swiping out to the home screen.
3) swiping up to enter the all apps, tapping the editor and expecting
   the IME is visible

Change-Id: I0569d728888e81160ecb96303f26f033875ee4d5
parent b413b9a1
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -1037,7 +1037,13 @@ class RootWindowContainer extends WindowContainer<DisplayContent>
                }
            }

            if (curDisplay.mAppTransition.isRunning() && !curDisplay.isAppTransitioning()) {
            final boolean curDisplayInTransitNotAnimate =
                    // legacy transition
                    (curDisplay.mAppTransition.isRunning() && !curDisplay.isAppTransitioning())
                    // shell transition
                    || (curDisplay.mTransitionController.isShellTransitionsEnabled()
                            && !curDisplay.mTransitionController.isPlaying());
            if (curDisplayInTransitNotAnimate) {
                // We have finished the animation of an app transition. To do this, we have
                // delayed a lot of operations like showing and hiding apps, moving apps in
                // Z-order, etc.