From 7fb1c306a6e304d154bc6532f443e5f84533bd6e Mon Sep 17 00:00:00 2001 From: Ben Lin Date: Fri, 6 Aug 2021 14:35:53 -0700 Subject: [PATCH] PiP Transition: Only allow TRANSIT_PIP and TRANSIT_OPEN types for enter animation. Bug: 165793917 Test: Enable Shell transition, run flicker tests for PIP Change-Id: Ia6c77a71ebfb443dd3d6e54dc3cd19df5780379f --- .../Shell/src/com/android/wm/shell/pip/PipTransition.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTransition.java b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTransition.java index ae17a93ef1dc9..ea587c69c0c05 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTransition.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTransition.java @@ -19,6 +19,7 @@ package com.android.wm.shell.pip; import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; import static android.util.RotationUtils.deltaRotation; +import static android.view.WindowManager.TRANSIT_OPEN; import static android.view.WindowManager.TRANSIT_PIP; import static android.window.TransitionInfo.FLAG_IS_WALLPAPER; @@ -126,6 +127,12 @@ public class PipTransition extends PipTransitionController { return true; } + // We only support TRANSIT_PIP type (from RootWindowContainer) or TRANSIT_OPEN (from apps + // that enter PiP instantly on opening, mostly from CTS/Flicker tests) + if (info.getType() != TRANSIT_PIP && info.getType() != TRANSIT_OPEN) { + return false; + } + // Search for an Enter PiP transition (along with a show wallpaper one) TransitionInfo.Change enterPip = null; TransitionInfo.Change wallpaper = null;