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

Commit 849976c8 authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 12730349 from 16740cd2 to 25Q1-release

Change-Id: Ia701f02fcaa706222b513b00ab43688f0ee3cd2d
parents 8cdfc7ba 16740cd2
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -523,7 +523,8 @@ public class TouchInteractionService extends Service {
        }

        protected void onOverviewTargetChange() {
            for (Runnable listener : mOnOverviewTargetChangeListeners) {
            Set<Runnable> listeners = new HashSet<>(mOnOverviewTargetChangeListeners);
            for (Runnable listener : listeners) {
                listener.run();
            }
        }
+5 −0
Original line number Diff line number Diff line
@@ -36,11 +36,13 @@ import com.android.launcher3.BaseActivity
import com.android.launcher3.LauncherAnimationRunner
import com.android.launcher3.LauncherAnimationRunner.RemoteAnimationFactory
import com.android.launcher3.R
import com.android.launcher3.compat.AccessibilityManagerCompat
import com.android.launcher3.statehandlers.DesktopVisibilityController
import com.android.launcher3.statemanager.StateManager
import com.android.launcher3.statemanager.StateManager.AtomicAnimationFactory
import com.android.launcher3.statemanager.StatefulContainer
import com.android.launcher3.taskbar.TaskbarUIController
import com.android.launcher3.testing.shared.TestProtocol.OVERVIEW_STATE_ORDINAL
import com.android.launcher3.util.ContextTracker
import com.android.launcher3.util.DisplayController
import com.android.launcher3.util.RunnableList
@@ -355,6 +357,9 @@ class RecentsWindowManager(context: Context) :
        if (state == HOME || state == BG_LAUNCHER) {
            cleanupRecentsWindow()
        }
        if (state === DEFAULT) {
            AccessibilityManagerCompat.sendStateEventToTest(baseContext, OVERVIEW_STATE_ORDINAL)
        }
    }

    private fun getStateName(state: RecentsState?): String {
+1 −0
Original line number Diff line number Diff line
@@ -1566,6 +1566,7 @@ constructor(
    }

    private fun onModalnessUpdated(modalness: Float) {
        isClickable = modalness == 0f
        taskContainers.forEach {
            it.iconView.setModalAlpha(1 - modalness)
            it.digitalWellBeingToast?.bannerOffsetPercentage = modalness
+39 −9
Original line number Diff line number Diff line
@@ -17,14 +17,17 @@
package com.android.launcher3.model.data

import android.content.ComponentName
import android.content.Context
import android.content.Intent
import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.platform.app.InstrumentationRegistry
import com.android.launcher3.Flags.enableRefactorTaskThumbnail
import com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_NOT_PINNABLE
import com.android.launcher3.model.data.TaskViewItemInfo.Companion.createTaskViewAtom
import com.android.launcher3.pm.UserCache
import com.android.launcher3.util.MainThreadInitializedObject.SandboxContext
import com.android.launcher3.util.SplitConfigurationOptions
import com.android.launcher3.util.TransformingTouchDelegate
import com.android.launcher3.util.UserIconInfo
import com.android.quickstep.TaskOverlayFactory
import com.android.quickstep.TaskOverlayFactory.TaskOverlay
import com.android.quickstep.recents.di.RecentsDependencies
@@ -48,10 +51,12 @@ import org.mockito.kotlin.whenever
/** Test for [TaskViewItemInfo] */
@RunWith(AndroidJUnit4::class)
class TaskViewItemInfoTest {
    private val context = mock<Context>()
    private val context = SandboxContext(InstrumentationRegistry.getInstrumentation().targetContext)
    private val taskView = mock<TaskView>()
    private val recentsView = mock<RecentsView<*, *>>()
    private val overlayFactory = mock<TaskOverlayFactory>()
    private val userCache = mock<UserCache>()
    private val userInfo = mock<UserIconInfo>()

    @Before
    fun setUp() {
@@ -59,7 +64,10 @@ class TaskViewItemInfoTest {
        whenever(taskView.context).thenReturn(context)
        whenever(taskView.recentsView).thenReturn(recentsView)
        whenever(recentsView.indexOfChild(taskView)).thenReturn(TASK_VIEW_INDEX)
        RecentsDependencies.initialize(InstrumentationRegistry.getInstrumentation().targetContext)
        whenever(userInfo.isPrivate).thenReturn(false)
        whenever(userCache.getUserInfo(any())).thenReturn(userInfo)
        context.putObject(UserCache.INSTANCE, userCache)
        RecentsDependencies.initialize(context)
    }

    @Test
@@ -69,9 +77,8 @@ class TaskViewItemInfoTest {
        whenever(taskView.taskContainers).thenReturn(taskContainers)

        val taskViewItemInfo = TaskViewItemInfo(taskContainers[0])
        val taskViewAtom = taskViewItemInfo.taskViewAtom

        assertThat(taskViewAtom)
        assertThat(taskViewItemInfo.taskViewAtom)
            .isEqualTo(
                createTaskViewAtom(
                    type = 0,
@@ -80,6 +87,7 @@ class TaskViewItemInfoTest {
                    cardinality = 1,
                )
            )
        assertThat(taskViewItemInfo.runtimeStatusFlags and FLAG_NOT_PINNABLE).isEqualTo(0)
    }

    @Test
@@ -90,9 +98,8 @@ class TaskViewItemInfoTest {
        whenever(taskView.taskContainers).thenReturn(taskContainers)

        val taskViewItemInfo = TaskViewItemInfo(taskContainers[0])
        val taskViewAtom = taskViewItemInfo.taskViewAtom

        assertThat(taskViewAtom)
        assertThat(taskViewItemInfo.taskViewAtom)
            .isEqualTo(
                createTaskViewAtom(
                    type = 1,
@@ -101,6 +108,7 @@ class TaskViewItemInfoTest {
                    cardinality = 2,
                )
            )
        assertThat(taskViewItemInfo.runtimeStatusFlags and FLAG_NOT_PINNABLE).isEqualTo(0)
    }

    @Test
@@ -115,9 +123,8 @@ class TaskViewItemInfoTest {
        whenever(taskView.taskContainers).thenReturn(taskContainers)

        val taskViewItemInfo = TaskViewItemInfo(taskContainers[0])
        val taskViewAtom = taskViewItemInfo.taskViewAtom

        assertThat(taskViewAtom)
        assertThat(taskViewItemInfo.taskViewAtom)
            .isEqualTo(
                createTaskViewAtom(
                    type = 2,
@@ -126,6 +133,29 @@ class TaskViewItemInfoTest {
                    cardinality = 3,
                )
            )
        assertThat(taskViewItemInfo.runtimeStatusFlags and FLAG_NOT_PINNABLE).isEqualTo(0)
    }

    @Test
    fun privateTask() {
        val taskContainers = listOf(createTaskContainer(createTask(1)))
        whenever(taskView.type).thenReturn(TaskViewType.SINGLE)
        whenever(taskView.taskContainers).thenReturn(taskContainers)
        whenever(userInfo.isPrivate).thenReturn(true)

        val taskViewItemInfo = TaskViewItemInfo(taskContainers[0])

        assertThat(taskViewItemInfo.taskViewAtom)
            .isEqualTo(
                createTaskViewAtom(
                    type = 0,
                    index = TASK_VIEW_INDEX,
                    componentName = "${PACKAGE}/${CLASS}",
                    cardinality = 1,
                )
            )
        assertThat(taskViewItemInfo.runtimeStatusFlags and FLAG_NOT_PINNABLE)
            .isEqualTo(FLAG_NOT_PINNABLE)
    }

    private fun createTask(id: Int) =
+10 −0
Original line number Diff line number Diff line
@@ -71,6 +71,7 @@ import com.android.launcher3.model.data.ItemInfo;
import com.android.launcher3.model.data.LauncherAppWidgetInfo;
import com.android.launcher3.util.CellAndSpan;
import com.android.launcher3.util.GridOccupancy;
import com.android.launcher3.util.MSDLPlayerWrapper;
import com.android.launcher3.util.MultiTranslateDelegate;
import com.android.launcher3.util.ParcelableSparseArray;
import com.android.launcher3.util.Themes;
@@ -78,6 +79,8 @@ import com.android.launcher3.util.Thunk;
import com.android.launcher3.views.ActivityContext;
import com.android.launcher3.widget.LauncherAppWidgetHostView;

import com.google.android.msdl.data.model.MSDLToken;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
@@ -204,6 +207,8 @@ public class CellLayout extends ViewGroup {

    private static final Paint sPaint = new Paint();

    private final MSDLPlayerWrapper mMSDLPlayerWrapper;

    // Related to accessible drag and drop
    DragAndDropAccessibilityDelegate mTouchHelper;

@@ -237,6 +242,8 @@ public class CellLayout extends ViewGroup {
        mContainerType = a.getInteger(R.styleable.CellLayout_containerType, WORKSPACE);
        a.recycle();

        mMSDLPlayerWrapper = MSDLPlayerWrapper.INSTANCE.get(context);

        // A ViewGroup usually does not draw, but CellLayout needs to draw a rectangle to show
        // the user where a dragged item will land when dropped.
        setWillNotDraw(false);
@@ -1153,6 +1160,9 @@ public class CellLayout extends ViewGroup {
            DropTarget.DragObject dragObject) {
        if (mDragCell[0] != cellX || mDragCell[1] != cellY || mDragCellSpan[0] != spanX
                || mDragCellSpan[1] != spanY) {
            if (Flags.msdlFeedback()) {
                mMSDLPlayerWrapper.playToken(MSDLToken.DRAG_INDICATOR_DISCRETE);
            }
            mDragCell[0] = cellX;
            mDragCell[1] = cellY;
            mDragCellSpan[0] = spanX;
Loading