Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 90b4e0e2 authored by Gaurav Bhola's avatar Gaurav Bhola
Browse files

Add small utility methods in Shell

- ShellTaskOrganizer#getRunningTasks() to get tasks on all the
  displays.
- TaskViewTransitions.isTaskViewTask() to detect if the given
  task is running in a task view.

Flag: EXEMPT bugfix
Bug: 355532757
Test: m
Change-Id: I9b6cc3d4a08c0e42c8db593eda52e6459522af0e
parent b0099534
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -690,6 +690,15 @@ public class ShellTaskOrganizer extends TaskOrganizer {
        return result;
    }

    /** Return list of {@link RunningTaskInfo}s on all the displays. */
    public ArrayList<RunningTaskInfo> getRunningTasks() {
        ArrayList<RunningTaskInfo> result = new ArrayList<>();
        for (int i = 0; i < mTasks.size(); i++) {
            result.add(mTasks.valueAt(i).getTaskInfo());
        }
        return result;
    }

    /** Gets running task by taskId. Returns {@code null} if no such task observed. */
    @Nullable
    public RunningTaskInfo getRunningTaskInfo(int taskId) {
+5 −0
Original line number Diff line number Diff line
@@ -217,6 +217,11 @@ public class TaskViewTransitions implements Transitions.TransitionHandler {
        return null;
    }

    /** Returns true if the given {@code taskInfo} belongs to a task view. */
    public boolean isTaskViewTask(ActivityManager.RunningTaskInfo taskInfo) {
        return findTaskView(taskInfo) != null;
    }

    void startTaskView(@NonNull WindowContainerTransaction wct,
            @NonNull TaskViewTaskController taskView, @NonNull IBinder launchCookie) {
        updateVisibilityState(taskView, true /* visible */);