Merge "Fix NPE in TaskView." into sc-dev am: 52d3773622
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/13428611 MUST ONLY BE SUBMITTED BY AUTOMERGER Change-Id: Icbaf41096c7ee297fe5e559cb3366c271da074ea
This commit is contained in:
@@ -225,8 +225,9 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback,
|
|||||||
mTaskOrganizer.applyTransaction(wct);
|
mTaskOrganizer.applyTransaction(wct);
|
||||||
// TODO(b/151449487): Only call callback once we enable synchronization
|
// TODO(b/151449487): Only call callback once we enable synchronization
|
||||||
if (mListener != null) {
|
if (mListener != null) {
|
||||||
|
final int taskId = mTaskInfo.taskId;
|
||||||
mListenerExecutor.execute(() -> {
|
mListenerExecutor.execute(() -> {
|
||||||
mListener.onTaskVisibilityChanged(mTaskInfo.taskId, mSurfaceCreated);
|
mListener.onTaskVisibilityChanged(taskId, mSurfaceCreated);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -256,8 +257,10 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (mListener != null) {
|
if (mListener != null) {
|
||||||
|
final int taskId = taskInfo.taskId;
|
||||||
|
final ComponentName baseActivity = taskInfo.baseActivity;
|
||||||
mListenerExecutor.execute(() -> {
|
mListenerExecutor.execute(() -> {
|
||||||
mListener.onTaskCreated(taskInfo.taskId, taskInfo.baseActivity);
|
mListener.onTaskCreated(taskId, baseActivity);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -267,8 +270,9 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback,
|
|||||||
if (mTaskToken == null || !mTaskToken.equals(taskInfo.token)) return;
|
if (mTaskToken == null || !mTaskToken.equals(taskInfo.token)) return;
|
||||||
|
|
||||||
if (mListener != null) {
|
if (mListener != null) {
|
||||||
|
final int taskId = taskInfo.taskId;
|
||||||
mListenerExecutor.execute(() -> {
|
mListenerExecutor.execute(() -> {
|
||||||
mListener.onTaskRemovalStarted(taskInfo.taskId);
|
mListener.onTaskRemovalStarted(taskId);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
mTaskOrganizer.setInterceptBackPressedOnTaskRoot(mTaskToken, false);
|
mTaskOrganizer.setInterceptBackPressedOnTaskRoot(mTaskToken, false);
|
||||||
@@ -289,8 +293,9 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback,
|
|||||||
public void onBackPressedOnTaskRoot(ActivityManager.RunningTaskInfo taskInfo) {
|
public void onBackPressedOnTaskRoot(ActivityManager.RunningTaskInfo taskInfo) {
|
||||||
if (mTaskToken == null || !mTaskToken.equals(taskInfo.token)) return;
|
if (mTaskToken == null || !mTaskToken.equals(taskInfo.token)) return;
|
||||||
if (mListener != null) {
|
if (mListener != null) {
|
||||||
|
final int taskId = taskInfo.taskId;
|
||||||
mListenerExecutor.execute(() -> {
|
mListenerExecutor.execute(() -> {
|
||||||
mListener.onBackPressedOnTaskRoot(taskInfo.taskId);
|
mListener.onBackPressedOnTaskRoot(taskId);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user