Merge "Clean up postWindowRemoveStartingWindowCleanUp" into udc-dev am: 050f26ee5e
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/23736106 Change-Id: I4deb3d9bd92af50ea455aa401302859ba21323f1 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -4516,7 +4516,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
|
||||
mTransitionChangeFlags |= FLAG_STARTING_WINDOW_TRANSFER_RECIPIENT;
|
||||
}
|
||||
// Post cleanup after the visibility and animation are transferred.
|
||||
fromActivity.postWindowRemoveStartingWindowCleanup(tStartingWindow);
|
||||
fromActivity.postWindowRemoveStartingWindowCleanup();
|
||||
fromActivity.mVisibleSetFromTransferredStartingWindow = false;
|
||||
|
||||
mWmService.updateFocusedWindowLocked(
|
||||
@@ -7430,27 +7430,12 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
|
||||
}
|
||||
}
|
||||
|
||||
void postWindowRemoveStartingWindowCleanup(WindowState win) {
|
||||
// TODO: Something smells about the code below...Is there a better way?
|
||||
if (mStartingWindow == win) {
|
||||
ProtoLog.v(WM_DEBUG_STARTING_WINDOW, "Notify removed startingWindow %s", win);
|
||||
removeStartingWindow();
|
||||
} else if (mChildren.size() == 0) {
|
||||
// If this is the last window and we had requested a starting transition window,
|
||||
// well there is no point now.
|
||||
ProtoLog.v(WM_DEBUG_STARTING_WINDOW, "Nulling last startingData");
|
||||
mStartingData = null;
|
||||
if (mVisibleSetFromTransferredStartingWindow) {
|
||||
// We set the visible state to true for the token from a transferred starting
|
||||
// window. We now reset it back to false since the starting window was the last
|
||||
// window in the token.
|
||||
setVisible(false);
|
||||
}
|
||||
} else if (mChildren.size() == 1 && mStartingSurface != null && !isRelaunching()) {
|
||||
// If this is the last window except for a starting transition window,
|
||||
// we need to get rid of the starting transition.
|
||||
ProtoLog.v(WM_DEBUG_STARTING_WINDOW, "Last window, removing starting window %s", win);
|
||||
removeStartingWindow();
|
||||
void postWindowRemoveStartingWindowCleanup() {
|
||||
if (mChildren.size() == 0 && mVisibleSetFromTransferredStartingWindow) {
|
||||
// We set the visible state to true for the token from a transferred starting
|
||||
// window. We now reset it back to false since the starting window was the last
|
||||
// window in the token.
|
||||
setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2020,7 +2020,7 @@ public class WindowManagerService extends IWindowManager.Stub
|
||||
}
|
||||
|
||||
if (win.mActivityRecord != null) {
|
||||
win.mActivityRecord.postWindowRemoveStartingWindowCleanup(win);
|
||||
win.mActivityRecord.postWindowRemoveStartingWindowCleanup();
|
||||
}
|
||||
|
||||
if (win.mAttrs.type == TYPE_WALLPAPER) {
|
||||
|
||||
Reference in New Issue
Block a user