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

Commit 8efa41fc authored by Min Chen's avatar Min Chen Committed by Android (Google) Code Review
Browse files

Merge "Make `GroupedTaskInfo.getTaskInfo1` nullable" into main

parents ae37d64b 8a8ec655
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -224,19 +224,20 @@ public class GroupedTaskInfo implements Parcelable {

    /**
     * Get primary {@link TaskInfo}.
     * Nullable only if the group if TYPE_DESK, non-null for TYPE_FULLSCREEN and TYPE_SPLIT.
     *
     * @throws IllegalStateException if the group is TYPE_MIXED.
     */
    @NonNull
    @Nullable
    public TaskInfo getTaskInfo1() {
        if (mType == TYPE_MIXED) {
            throw new IllegalStateException("No indexed tasks for a mixed task");
        }
        return mTasks.getFirst();
        return CollectionsKt.firstOrNull(mTasks);
    }

    /**
     * Get secondary {@link TaskInfo}, used primarily for TYPE_SPLIT.
     * Get secondary {@link TaskInfo}, used primarily for TYPE_SPLIT, not null for TYPE_SPLIT.
     *
     * @throws IllegalStateException if the group is TYPE_MIXED.
     */
+6 −8
Original line number Diff line number Diff line
@@ -55,7 +55,7 @@ class GroupedTaskInfoTest : ShellTestCase() {
    @Test
    fun testSingleTask_task1Set_task2Null() {
        val group = singleTaskGroupInfo()
        assertThat(group.taskInfo1.taskId).isEqualTo(1)
        assertThat(group.taskInfo1?.taskId).isEqualTo(1)
        assertThat(group.taskInfo2).isNull()
    }

@@ -74,7 +74,7 @@ class GroupedTaskInfoTest : ShellTestCase() {
    @Test
    fun testSplitTasks_task1Set_task2Set_boundsSet() {
        val group = splitTasksGroupInfo()
        assertThat(group.taskInfo1.taskId).isEqualTo(1)
        assertThat(group.taskInfo1?.taskId).isEqualTo(1)
        assertThat(group.taskInfo2?.taskId).isEqualTo(2)
        assertThat(group.splitBounds).isNotNull()
    }
@@ -169,7 +169,7 @@ class GroupedTaskInfoTest : ShellTestCase() {
        val taskInfoFromParcel: GroupedTaskInfo =
            GroupedTaskInfo.CREATOR.createFromParcel(parcel)
        assertThat(taskInfoFromParcel.isBaseType(TYPE_FULLSCREEN)).isTrue()
        assertThat(taskInfoFromParcel.taskInfo1.taskId).isEqualTo(1)
        assertThat(taskInfoFromParcel.taskInfo1?.taskId).isEqualTo(1)
        assertThat(taskInfoFromParcel.taskInfo2).isNull()
    }

@@ -183,11 +183,9 @@ class GroupedTaskInfoTest : ShellTestCase() {
        val taskInfoFromParcel: GroupedTaskInfo =
            GroupedTaskInfo.CREATOR.createFromParcel(parcel)
        assertThat(taskInfoFromParcel.isBaseType(TYPE_SPLIT)).isTrue()
        assertThat(taskInfoFromParcel.taskInfo1.taskId).isEqualTo(1)
        assertThat(taskInfoFromParcel.taskInfo2).isNotNull()
        assertThat(taskInfoFromParcel.taskInfo2!!.taskId).isEqualTo(2)
        assertThat(taskInfoFromParcel.splitBounds).isNotNull()
        assertThat(taskInfoFromParcel.splitBounds!!.snapPosition).isEqualTo(SNAP_TO_2_50_50)
        assertThat(taskInfoFromParcel.taskInfo1?.taskId).isEqualTo(1)
        assertThat(taskInfoFromParcel.taskInfo2?.taskId).isEqualTo(2)
        assertThat(taskInfoFromParcel.splitBounds?.snapPosition).isEqualTo(SNAP_TO_2_50_50)
    }

    @Test
+8 −6
Original line number Diff line number Diff line
@@ -66,12 +66,14 @@ constructor(
            val foregroundTaskIds = listOfNotNull(foregroundTaskId1, foregroundTaskId2)
            groupedTasks.flatMap {
                val task1 =
                    if (it.taskInfo1 != null) {
                        RecentTask(
                        it.taskInfo1,
                        it.taskInfo1.taskId in foregroundTaskIds && it.taskInfo1.isVisible,
                        userManager.getUserInfo(it.taskInfo1.userId).toUserType(),
                            it.taskInfo1!!,
                            it.taskInfo1!!.taskId in foregroundTaskIds && it.taskInfo1!!.isVisible,
                            userManager.getUserInfo(it.taskInfo1!!.userId).toUserType(),
                            it.splitBounds,
                        )
                    } else null

                val task2 =
                    if (it.taskInfo2 != null) {