diff options
| author | 2023-08-24 12:47:23 +0000 | |
|---|---|---|
| committer | 2023-08-24 12:47:23 +0000 | |
| commit | 17739d4663ab119c3f7eaa57b5bb849eb50f8d12 (patch) | |
| tree | ab2a9d960de192bf28d2785693aa223acd9ecf90 | |
| parent | d42c6cf3073ff413690f507345ce1035a89a59c4 (diff) | |
| parent | fecfdb0d2d245b055b52da0f963c182ccea0df58 (diff) | |
Merge "Do not bypass wallpaper visibility update during keyguard going away." into udc-qpr-dev am: fecfdb0d2d
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/24517689
Change-Id: I33577d8bcef9042c0425f5eabc2ed8e6750d6532
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
3 files changed, 3 insertions, 51 deletions
diff --git a/services/core/java/com/android/server/wm/KeyguardController.java b/services/core/java/com/android/server/wm/KeyguardController.java index d03388a8455e..c396a3188ab8 100644 --- a/services/core/java/com/android/server/wm/KeyguardController.java +++ b/services/core/java/com/android/server/wm/KeyguardController.java @@ -226,7 +226,6 @@ class KeyguardController { final DisplayContent dc = mRootWindowContainer.getDefaultDisplay(); dc.requestTransitionAndLegacyPrepare( TRANSIT_TO_FRONT, TRANSIT_FLAG_KEYGUARD_APPEARING); - dc.mWallpaperController.showWallpaperInTransition(false /* showHome */); mWindowManager.executeAppTransition(); } } @@ -283,8 +282,6 @@ class KeyguardController { TRANSIT_TO_BACK, transitFlags, null /* trigger */, dc); updateKeyguardSleepToken(); - // Make the home wallpaper visible - dc.mWallpaperController.showWallpaperInTransition(true /* showHome */); // Some stack visibility might change (e.g. docked stack) mRootWindowContainer.resumeFocusedTasksTopActivities(); mRootWindowContainer.ensureActivitiesVisible(null, 0, !PRESERVE_WINDOWS); diff --git a/services/core/java/com/android/server/wm/WallpaperController.java b/services/core/java/com/android/server/wm/WallpaperController.java index 00bedcd6d45e..9c08c74458ff 100644 --- a/services/core/java/com/android/server/wm/WallpaperController.java +++ b/services/core/java/com/android/server/wm/WallpaperController.java @@ -314,31 +314,6 @@ class WallpaperController { || !mWallpaperTarget.mActivityRecord.isWaitingForTransitionStart()); } - /** - * Make one wallpaper visible, according to {@attr showHome}. - * This is called during the keyguard unlocking transition - * (see {@link KeyguardController#keyguardGoingAway(int, int)}), - * or when a keyguard unlock is cancelled (see {@link KeyguardController}) - */ - public void showWallpaperInTransition(boolean showHome) { - updateWallpaperWindowsTarget(mFindResults); - - if (!mFindResults.hasTopShowWhenLockedWallpaper()) { - Slog.w(TAG, "There is no wallpaper for the lock screen"); - return; - } - WindowState hideWhenLocked = mFindResults.mTopWallpaper.mTopHideWhenLockedWallpaper; - WindowState showWhenLocked = mFindResults.mTopWallpaper.mTopShowWhenLockedWallpaper; - if (!mFindResults.hasTopHideWhenLockedWallpaper()) { - // Shared wallpaper, ensure its visibility - showWhenLocked.mToken.asWallpaperToken().updateWallpaperWindows(true); - } else { - // Separate lock and home wallpapers: show the correct wallpaper in transition - hideWhenLocked.mToken.asWallpaperToken().updateWallpaperWindowsInTransition(showHome); - showWhenLocked.mToken.asWallpaperToken().updateWallpaperWindowsInTransition(!showHome); - } - } - void hideDeferredWallpapersIfNeededLegacy() { for (int i = mWallpaperTokens.size() - 1; i >= 0; i--) { final WallpaperWindowToken token = mWallpaperTokens.get(i); @@ -840,10 +815,7 @@ class WallpaperController { } } - if (!mDisplayContent.isKeyguardGoingAway() || !mIsLockscreenLiveWallpaperEnabled) { - // When keyguard goes away, KeyguardController handles the visibility - updateWallpaperTokens(visible, mDisplayContent.isKeyguardLocked()); - } + updateWallpaperTokens(visible, mDisplayContent.isKeyguardLocked()); if (DEBUG_WALLPAPER) { Slog.v(TAG, "adjustWallpaperWindows: wallpaper visibility " + visible diff --git a/services/core/java/com/android/server/wm/WallpaperWindowToken.java b/services/core/java/com/android/server/wm/WallpaperWindowToken.java index 8e0ad0d01cfe..c7fd147cfb4a 100644 --- a/services/core/java/com/android/server/wm/WallpaperWindowToken.java +++ b/services/core/java/com/android/server/wm/WallpaperWindowToken.java @@ -128,20 +128,6 @@ class WallpaperWindowToken extends WindowToken { } } - /** - * Update the visibility of the token to {@param visible}. If a transition will collect the - * wallpaper, then the visibility will be committed during the execution of the transition. - * - * waitingToShow is reset at the beginning of the transition: - * {@link Transition#onTransactionReady(int, SurfaceControl.Transaction)} - */ - void updateWallpaperWindowsInTransition(boolean visible) { - if (mTransitionController.isCollecting() && mVisibleRequested != visible) { - waitingToShow = true; - } - updateWallpaperWindows(visible); - } - void updateWallpaperWindows(boolean visible) { if (mVisibleRequested != visible) { ProtoLog.d(WM_DEBUG_WALLPAPER, "Wallpaper token %s visible=%b", @@ -212,12 +198,9 @@ class WallpaperWindowToken extends WindowToken { commitVisibility(visible); } - /** - * Commits the visibility of this token. This will directly update the visibility unless the - * wallpaper is in a transition. - */ + /** Commits the visibility of this token. This will directly update the visibility. */ void commitVisibility(boolean visible) { - if (visible == isVisible() || waitingToShow) return; + if (visible == isVisible()) return; ProtoLog.v(WM_DEBUG_APP_TRANSITIONS, "commitVisibility: %s: visible=%b mVisibleRequested=%b", this, |