From 5c4fcb2bf23230772b0ca04a850286257de5086e Mon Sep 17 00:00:00 2001 From: Daniel Chapin Date: Wed, 21 Jul 2021 16:23:00 +0000 Subject: [PATCH] Revert "Deferring visibility updates while applying WCT" This reverts commit be3d9a3bde16692b812e4196e8bf37be25ef2517. Reason for revert: Droidfood Weekly blocking bug: 194040982 Change-Id: If36f29b9275196d6042f0d110ad3cd6346c08931 --- .../android/server/wm/ActivityTaskSupervisor.java | 14 -------------- .../com/android/server/wm/RootWindowContainer.java | 3 +-- services/core/java/com/android/server/wm/Task.java | 6 ++---- .../server/wm/WindowOrganizerController.java | 3 --- 4 files changed, 3 insertions(+), 23 deletions(-) diff --git a/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java b/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java index 74efe0c7422f4..08bca353f910d 100644 --- a/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java +++ b/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java @@ -347,12 +347,6 @@ public class ActivityTaskSupervisor implements RecentTasks.Callbacks { */ private int mVisibilityTransactionDepth; - /** - * Whether to the visibility updates that started from {@code RootWindowContainer} should be - * deferred. - */ - private boolean mDeferRootVisibilityUpdate; - private ActivityMetricsLogger mActivityMetricsLogger; /** Check if placing task or activity on specified display is allowed. */ @@ -2269,14 +2263,6 @@ public class ActivityTaskSupervisor implements RecentTasks.Callbacks { return mVisibilityTransactionDepth > 0; } - void setDeferRootVisibilityUpdate(boolean deferUpdate) { - mDeferRootVisibilityUpdate = deferUpdate; - } - - boolean isRootVisibilityUpdateDeferred() { - return mDeferRootVisibilityUpdate; - } - /** * Called when the state or visibility of an attached activity is changed. * diff --git a/services/core/java/com/android/server/wm/RootWindowContainer.java b/services/core/java/com/android/server/wm/RootWindowContainer.java index 0b80bae71ab83..539bea2faef91 100644 --- a/services/core/java/com/android/server/wm/RootWindowContainer.java +++ b/services/core/java/com/android/server/wm/RootWindowContainer.java @@ -1973,8 +1973,7 @@ class RootWindowContainer extends WindowContainer */ void ensureActivitiesVisible(ActivityRecord starting, int configChanges, boolean preserveWindows, boolean notifyClients) { - if (mTaskSupervisor.inActivityVisibilityUpdate() - || mTaskSupervisor.isRootVisibilityUpdateDeferred()) { + if (mTaskSupervisor.inActivityVisibilityUpdate()) { // Don't do recursive work. return; } diff --git a/services/core/java/com/android/server/wm/Task.java b/services/core/java/com/android/server/wm/Task.java index c803f06840d09..88c082146d369 100644 --- a/services/core/java/com/android/server/wm/Task.java +++ b/services/core/java/com/android/server/wm/Task.java @@ -4500,10 +4500,8 @@ class Task extends TaskFragment { mAtmService.continueWindowLayout(); } - if (!mTaskSupervisor.isRootVisibilityUpdateDeferred()) { - mRootWindowContainer.ensureActivitiesVisible(null, 0, PRESERVE_WINDOWS); - mRootWindowContainer.resumeFocusedTasksTopActivities(); - } + mRootWindowContainer.ensureActivitiesVisible(null, 0, PRESERVE_WINDOWS); + mRootWindowContainer.resumeFocusedTasksTopActivities(); } void resumeNextFocusAfterReparent() { diff --git a/services/core/java/com/android/server/wm/WindowOrganizerController.java b/services/core/java/com/android/server/wm/WindowOrganizerController.java index eeb83c66ce2bf..b82819c8396eb 100644 --- a/services/core/java/com/android/server/wm/WindowOrganizerController.java +++ b/services/core/java/com/android/server/wm/WindowOrganizerController.java @@ -275,7 +275,6 @@ class WindowOrganizerController extends IWindowOrganizerController.Stub int effects = 0; ProtoLog.v(WM_DEBUG_WINDOW_ORGANIZER, "Apply window transaction, syncId=%d", syncId); mService.deferWindowLayout(); - mService.mTaskSupervisor.setDeferRootVisibilityUpdate(true /* deferUpdate */); try { if (transition != null) { // First check if we have a display rotation transition and if so, update it. @@ -364,7 +363,6 @@ class WindowOrganizerController extends IWindowOrganizerController.Stub task.setMainWindowSizeChangeTransaction(sft); } if ((effects & TRANSACT_EFFECTS_LIFECYCLE) != 0) { - mService.mTaskSupervisor.setDeferRootVisibilityUpdate(false /* deferUpdate */); // Already calls ensureActivityConfig mService.mRootWindowContainer.ensureActivitiesVisible(null, 0, PRESERVE_WINDOWS); mService.mRootWindowContainer.resumeFocusedTasksTopActivities(); @@ -386,7 +384,6 @@ class WindowOrganizerController extends IWindowOrganizerController.Stub mService.addWindowLayoutReasons(LAYOUT_REASON_CONFIG_CHANGED); } } finally { - mService.mTaskSupervisor.setDeferRootVisibilityUpdate(false /* deferUpdate */); mService.continueWindowLayout(); } }