diff options
2 files changed, 21 insertions, 0 deletions
diff --git a/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListener.java b/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListener.java index 6186589ab086..5f92b2811807 100644 --- a/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListener.java +++ b/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListener.java @@ -89,6 +89,14 @@ public abstract class TaskStackChangeListener { onTaskMovedToFront(taskInfo.taskId); } + /** + * Called when a task’s description is changed due to an activity calling + * ActivityManagerService.setTaskDescription + * + * @param taskInfo info about the task which changed, with {@link TaskInfo#taskDescription} + */ + public void onTaskDescriptionChanged(RunningTaskInfo taskInfo) { } + public void onActivityRequestedOrientationChanged(int taskId, int requestedOrientation) { } public void onSizeCompatModeActivityChanged(int displayId, IBinder activityToken) { } diff --git a/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListeners.java b/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListeners.java index 8d823ca34b39..074ef53aa57c 100644 --- a/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListeners.java +++ b/packages/SystemUI/shared/src/com/android/systemui/shared/system/TaskStackChangeListeners.java @@ -230,6 +230,11 @@ public class TaskStackChangeListeners extends TaskStackListener { .sendToTarget(); } + @Override + public void onTaskDescriptionChanged(RunningTaskInfo taskInfo) { + mHandler.obtainMessage(H.ON_TASK_DESCRIPTION_CHANGED, taskInfo).sendToTarget(); + } + private final class H extends Handler { private static final int ON_TASK_STACK_CHANGED = 1; private static final int ON_TASK_SNAPSHOT_CHANGED = 2; @@ -254,6 +259,7 @@ public class TaskStackChangeListeners extends TaskStackListener { private static final int ON_TASK_LIST_UPDATED = 21; private static final int ON_SINGLE_TASK_DISPLAY_EMPTY = 22; private static final int ON_TASK_LIST_FROZEN_UNFROZEN = 23; + private static final int ON_TASK_DESCRIPTION_CHANGED = 24; public H(Looper looper) { @@ -421,6 +427,13 @@ public class TaskStackChangeListeners extends TaskStackListener { } break; } + case ON_TASK_DESCRIPTION_CHANGED: { + final RunningTaskInfo info = (RunningTaskInfo) msg.obj; + for (int i = mTaskStackListeners.size() - 1; i >= 0; i--) { + mTaskStackListeners.get(i).onTaskDescriptionChanged(info); + } + break; + } } } } |