From abf3d3b948687758cfd02cbc31eda59d10ff7b68 Mon Sep 17 00:00:00 2001 From: Hongwei Wang Date: Thu, 11 Nov 2021 16:05:39 -0800 Subject: [PATCH] Update PiP dismiss target on theme change Re-initiate the DismissCircleView upon theme change to make sure the PiP dismiss target inherits the right theme color. Bug: 199359063 Video: http://recall/-/aaaaaabFQoRHlzixHdtY/bIMe3fAFoW6Nw47Ye894MZ Test: manually, see video Change-Id: Ia65c633fd636114ddbdc2ff497245e2cb73f7745 --- .../src/com/android/wm/shell/pip/phone/PipController.java | 1 + .../src/com/android/wm/shell/pip/phone/PipTouchHandler.java | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipController.java b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipController.java index 10bc7e250cc82..6ce43a0412996 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipController.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipController.java @@ -463,6 +463,7 @@ public class PipController implements PipTransitionController.PipTransitionCallb } private void onOverlayChanged() { + mTouchHandler.onOverlayChanged(); onDisplayChanged(new DisplayLayout(mContext, mContext.getDisplay()), false /* saveRestoreSnapFraction */); } diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipTouchHandler.java b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipTouchHandler.java index 570fd5eab9f67..3ace5f405d36c 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipTouchHandler.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/pip/phone/PipTouchHandler.java @@ -259,6 +259,11 @@ public class PipTouchHandler { mPipDismissTargetHandler.updateMagneticTargetSize(); } + public void onOverlayChanged() { + // onOverlayChanged is triggered upon theme change, update the dismiss target accordingly. + mPipDismissTargetHandler.init(); + } + private boolean shouldShowResizeHandle() { return false; }