Avoid calling getTopMostTask() twice in Task#fillTaskInfo()
getTopMostTask() is a expensive recursive call that we know won't change result in a single fillTaskInfo() call, so let's stop calling it twice in a request. Bug: 174209413 Test: Builds. Change-Id: I8239f6e812d41d636573d33f2053bf361db3fc8d
This commit is contained in:
@@ -4092,7 +4092,7 @@ class Task extends WindowContainer<WindowContainer> {
|
||||
info.positionInParent = getRelativePosition();
|
||||
info.parentBounds = getParentBounds();
|
||||
|
||||
info.pictureInPictureParams = getPictureInPictureParams();
|
||||
info.pictureInPictureParams = getPictureInPictureParams(top);
|
||||
info.topActivityInfo = mReuseActivitiesReport.top != null
|
||||
? mReuseActivitiesReport.top.info
|
||||
: null;
|
||||
@@ -4109,7 +4109,10 @@ class Task extends WindowContainer<WindowContainer> {
|
||||
}
|
||||
|
||||
@Nullable PictureInPictureParams getPictureInPictureParams() {
|
||||
final Task top = getTopMostTask();
|
||||
return getPictureInPictureParams(getTopMostTask());
|
||||
}
|
||||
|
||||
private @Nullable PictureInPictureParams getPictureInPictureParams(Task top) {
|
||||
if (top == null) return null;
|
||||
final ActivityRecord rootActivity = top.getRootActivity();
|
||||
return (rootActivity == null || rootActivity.pictureInPictureArgs.empty())
|
||||
|
||||
Reference in New Issue
Block a user