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

Commit adae4870 authored by Tony Huang's avatar Tony Huang
Browse files

Fix toucn unresponsive after half fold in split

After fold animation finished, it will always set null bounds crop
to surface and cause root task surface bounds abnormal.
Fix by ignoring root task surface in StageTaskUnfoldController
because it would not effect animation.

Fix: 211132158
Test: manual
Test: pass existing tests
Change-Id: Iece8f7e7d437bdff1cf9e738df3acc075729b993
parent a9831fcd
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -100,6 +100,9 @@ public class StageTaskUnfoldController implements UnfoldListener, OnInsetsChange
     * @param leash surface leash for the appeared task
     */
    public void onTaskAppeared(ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash) {
        // Only handle child task surface here.
        if (!taskInfo.hasParentTask()) return;

        AnimationContext context = new AnimationContext(leash);
        mAnimationContextByTaskId.put(taskInfo.taskId, context);
    }
@@ -109,6 +112,8 @@ public class StageTaskUnfoldController implements UnfoldListener, OnInsetsChange
     * @param taskInfo info for the vanished task
     */
    public void onTaskVanished(ActivityManager.RunningTaskInfo taskInfo) {
        if (!taskInfo.hasParentTask()) return;

        AnimationContext context = mAnimationContextByTaskId.get(taskInfo.taskId);
        if (context != null) {
            final SurfaceControl.Transaction transaction = mTransactionPool.acquire();