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

Commit 89283aa3 authored by Alex Chau's avatar Alex Chau
Browse files

Override pivot in TaskViewSimulator as well for zoom in launch animation

- When launching large tiles, we zoom in RecentsView into the task we're launching, override pivot of RecentsView in the process
- This pivot override to be applied to TaskViewSimulator if a live tile is on screen, to avoid live tile animating to wrong position
- Also ensure the live tile draws above RecentsView, to avoid wallpaper blur from applying on the live tile

Fix: 361744056
Test: Launch central/side large tile with different live tile combinations
Flag: com.android.launcher3.enable_large_desktop_windowing_tile
Change-Id: I804edb988fb157d939dba34bc596c8b43aac8a45
parent 98f79233
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -304,6 +304,14 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy {
        calculateTaskSize();
    }

    /**
     * Override the pivot used to apply scale changes.
     */
    public void setPivotOverride(PointF pivotOverride) {
        mPivotOverride = pivotOverride;
        getFullScreenScale();
    }

    /**
     * Adds animation for all the components corresponding to transition from an app to overview.
     */
+7 −0
Original line number Diff line number Diff line
@@ -5418,6 +5418,13 @@ public abstract class RecentsView<
                            mTempPointF);
                    setPivotX(mTempPointF.x);
                    setPivotY(mTempPointF.y);
                    runActionOnRemoteHandles(
                            remoteTargetHandle -> {
                                remoteTargetHandle.getTaskViewSimulator().setPivotOverride(
                                        mTempPointF);
                                remoteTargetHandle.getTaskViewSimulator().setDrawsBelowRecents(
                                        false);
                            });
                }
            });
        } else if (!showAsGrid) {