Remove unnecessary wallpaper adjustment on transition

Since WallpaperController won't change wallpaper target if the
closing target is in transition, the adjustWallpaperWindows
won't change any state when transition is ready but spend the
time to traverse.

The entry points from AR#setVisibility->requestUpdateWallpaperIfNeeded
and transition finish->commitVisibility->postApplyAnimation
->FINISH_LAYOUT_REDO_WALLPAPER are already enough to update.

Bug: 258880446
Test: WallpaperControllerTests
Change-Id: I6b48099c455c2987c74b31b9d6d7d06d484a7c56
This commit is contained in:
Riddle Hsu
2022-11-17 23:40:09 +08:00
parent 020a6ef402
commit 46332a8e65
2 changed files with 0 additions and 16 deletions

View File

@@ -911,13 +911,6 @@ class Transition extends Binder implements BLASTSyncEngine.TransactionReadyListe
mOverrideOptions = null;
return;
}
// Ensure that wallpaper visibility is updated with the latest wallpaper target.
for (int i = mParticipants.size() - 1; i >= 0; --i) {
final WindowContainer<?> wc = mParticipants.valueAt(i);
if (isWallpaper(wc) && wc.getDisplayContent() != null) {
wc.getDisplayContent().mWallpaperController.adjustWallpaperWindows();
}
}
mState = STATE_PLAYING;
mStartTransaction = transaction;

View File

@@ -372,15 +372,6 @@ public class WallpaperControllerTests extends WindowTestsBase {
dc.mTransitionController.finishTransition(transit);
assertFalse(wallpaperWindow.isVisible());
assertFalse(token.isVisible());
// Assume wallpaper was visible. When transaction is ready without wallpaper target,
// wallpaper should be requested to be invisible.
token.setVisibility(true);
transit = dc.mTransitionController.createTransition(TRANSIT_CLOSE);
dc.mTransitionController.collect(token);
transit.onTransactionReady(transit.getSyncId(), t);
assertFalse(token.isVisibleRequested());
assertTrue(token.isVisible());
}
private static void prepareSmallerSecondDisplay(DisplayContent dc, int width, int height) {