Merge "Post view-drawing so that it happens after applying start transaction" into tm-qpr-dev am: 633202b4e1

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/19066503

Change-Id: I83e90572e11b6cc13ba8cec33571ab0f6dc161dc
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Evan Rosky
2022-06-27 15:14:40 +00:00
committed by Automerger Merge Worker
3 changed files with 2 additions and 6 deletions

View File

@@ -942,7 +942,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener,
// Re-set the PIP bounds to none. // Re-set the PIP bounds to none.
mPipBoundsState.setBounds(new Rect()); mPipBoundsState.setBounds(new Rect());
mPipUiEventLoggerLogger.setTaskInfo(null); mPipUiEventLoggerLogger.setTaskInfo(null);
mPipMenuController.detach(); mMainExecutor.executeDelayed(() -> mPipMenuController.detach(), 0);
if (info.displayId != Display.DEFAULT_DISPLAY && mOnDisplayIdChangeCallback != null) { if (info.displayId != Display.DEFAULT_DISPLAY && mOnDisplayIdChangeCallback != null) {
mOnDisplayIdChangeCallback.accept(Display.DEFAULT_DISPLAY); mOnDisplayIdChangeCallback.accept(Display.DEFAULT_DISPLAY);

View File

@@ -715,7 +715,7 @@ public class PipTransition extends PipTransitionController {
mSurfaceTransactionHelper mSurfaceTransactionHelper
.crop(finishTransaction, leash, destinationBounds) .crop(finishTransaction, leash, destinationBounds)
.round(finishTransaction, leash, true /* applyCornerRadius */); .round(finishTransaction, leash, true /* applyCornerRadius */);
mPipMenuController.attach(leash); mTransitions.getMainExecutor().executeDelayed(() -> mPipMenuController.attach(leash), 0);
if (taskInfo.pictureInPictureParams != null if (taskInfo.pictureInPictureParams != null
&& taskInfo.pictureInPictureParams.isAutoEnterEnabled() && taskInfo.pictureInPictureParams.isAutoEnterEnabled()

View File

@@ -28,9 +28,7 @@ import android.app.TaskInfo;
import android.content.ComponentName; import android.content.ComponentName;
import android.content.pm.ActivityInfo; import android.content.pm.ActivityInfo;
import android.graphics.Rect; import android.graphics.Rect;
import android.os.Handler;
import android.os.IBinder; import android.os.IBinder;
import android.os.Looper;
import android.view.SurfaceControl; import android.view.SurfaceControl;
import android.view.WindowManager; import android.view.WindowManager;
import android.window.TransitionInfo; import android.window.TransitionInfo;
@@ -56,7 +54,6 @@ public abstract class PipTransitionController implements Transitions.TransitionH
protected final ShellTaskOrganizer mShellTaskOrganizer; protected final ShellTaskOrganizer mShellTaskOrganizer;
protected final PipMenuController mPipMenuController; protected final PipMenuController mPipMenuController;
protected final Transitions mTransitions; protected final Transitions mTransitions;
private final Handler mMainHandler;
private final List<PipTransitionCallback> mPipTransitionCallbacks = new ArrayList<>(); private final List<PipTransitionCallback> mPipTransitionCallbacks = new ArrayList<>();
protected PipTaskOrganizer mPipOrganizer; protected PipTaskOrganizer mPipOrganizer;
@@ -144,7 +141,6 @@ public abstract class PipTransitionController implements Transitions.TransitionH
mPipBoundsAlgorithm = pipBoundsAlgorithm; mPipBoundsAlgorithm = pipBoundsAlgorithm;
mPipAnimationController = pipAnimationController; mPipAnimationController = pipAnimationController;
mTransitions = transitions; mTransitions = transitions;
mMainHandler = new Handler(Looper.getMainLooper());
if (Transitions.ENABLE_SHELL_TRANSITIONS) { if (Transitions.ENABLE_SHELL_TRANSITIONS) {
transitions.addHandler(this); transitions.addHandler(this);
} }