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

Commit cdb04025 authored by mpodolian's avatar mpodolian
Browse files

Simplified LauncherIcon DraggedObject views configuration

Bug: 411505605
Flag: com.android.wm.shell.enable_bubble_anything
Test: DragZoneFactoryTest, DropTargetManagerTest
Change-Id: I85dfa04ae0da029e7ffb9031dbf8b3e8a3c2d663
parent b31c65d8
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -244,8 +244,8 @@ class DragZoneFactory(
                dragZones.addAll(createBubbleHalfScreenDragZones(forBubbleBar = false))
            }
            is DraggedObject.LauncherIcon -> {
                val showDropTarget = draggedObject.showDropTarget
                val showSecondDropTarget = !draggedObject.bubbleBarHasBubbles
                val showDropTarget = draggedObject.showExpandedViewDropTarget
                val showSecondDropTarget = draggedObject.showBubbleBarPillowDropTarget
                dragZones.addAll(createBubbleCornerDragZones(showDropTarget, showSecondDropTarget))
            }
        }
+2 −3
Original line number Diff line number Diff line
@@ -25,9 +25,8 @@ sealed interface DraggedObject {

    data class ExpandedView(val initialLocation: BubbleBarLocation) : DraggedObject

    // TODO(b/411505605) Refactor drop targets variable
    data class LauncherIcon(
        val bubbleBarHasBubbles: Boolean,
        val showDropTarget: Boolean = true,
        val showExpandedViewDropTarget: Boolean = true,
        val showBubbleBarPillowDropTarget: Boolean = false,
    ) : DraggedObject
}
+1 −1
Original line number Diff line number Diff line
@@ -81,7 +81,7 @@ class DragToBubbleController(
            return
        }
        isDropHandled = false
        val draggedObject = LauncherIcon(bubbleBarHasBubbles = true)
        val draggedObject = LauncherIcon(showBubbleBarPillowDropTarget = false)
        val dragZones = dragZoneFactory.createSortedDragZones(draggedObject)
        dropTargetManager.onDragStarted(draggedObject, dragZones)
    }
+6 −3
Original line number Diff line number Diff line
@@ -386,7 +386,7 @@ class DragZoneFactoryTest {
            )
        val dragZones =
            dragZoneFactory.createSortedDragZones(
                DraggedObject.LauncherIcon(bubbleBarHasBubbles = true)
                DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = false)
            )
        val expectedZones: List<DragZoneVerifier> =
            listOf(verifyInstance<DragZone.Bubble.Left>(), verifyInstance<DragZone.Bubble.Right>())
@@ -409,7 +409,7 @@ class DragZoneFactoryTest {
            )
        val dragZones =
            dragZoneFactory.createSortedDragZones(
                DraggedObject.LauncherIcon(bubbleBarHasBubbles = false)
                DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = true)
            )
        val expectedZones: List<DragZoneVerifier> =
            listOf(verifyInstance<DragZone.Bubble.Left>(), verifyInstance<DragZone.Bubble.Right>())
@@ -432,7 +432,10 @@ class DragZoneFactoryTest {
            )
        val dragZones =
            dragZoneFactory.createSortedDragZones(
                DraggedObject.LauncherIcon(showDropTarget = false, bubbleBarHasBubbles = false)
                DraggedObject.LauncherIcon(
                    showExpandedViewDropTarget = false,
                    showBubbleBarPillowDropTarget = true
                )
            )
        val expectedZones: List<DragZoneVerifier> =
            listOf(verifyInstance<DragZone.Bubble.Left>(), verifyInstance<DragZone.Bubble.Right>())
+14 −14
Original line number Diff line number Diff line
@@ -388,7 +388,7 @@ class DropTargetManagerTest {
    @Test
    fun onDragStarted_noInitialDragZone_notifiesInitialDragZoneNull() {
        dropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = true),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = false),
            listOf(bubbleLeftDragZone, bubbleRightDragZone)
        )
        assertThat(dragZoneChangedListener.initialDragZone).isNull()
@@ -397,15 +397,15 @@ class DropTargetManagerTest {
    @Test
    fun onDragStartedMultipleTimes_secondDropViewRemoved() {
        dropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = false),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = true),
            listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget)
        )
        dropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = false),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = true),
            listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget)
        )
        dropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = true),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = false),
            listOf(bubbleLeftDragZone, bubbleRightDragZone)
        )
        assertThat(container.childCount).isEqualTo(DROP_VIEWS_COUNT)
@@ -414,7 +414,7 @@ class DropTargetManagerTest {
    @Test
    fun onDragUpdated_noZoneToZoneWithDropTargetView_listenerNotified() {
        dropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = true),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = false),
            listOf(bubbleLeftDragZone, bubbleRightDragZone)
        )

@@ -432,7 +432,7 @@ class DropTargetManagerTest {
    @Test
    fun onDragUpdated_noZoneToZoneWithDropTargetView_dropTargetShown() {
        dropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = true),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = false),
            listOf(bubbleLeftDragZone, bubbleRightDragZone)
        )

@@ -455,7 +455,7 @@ class DropTargetManagerTest {
    @Test
    fun onDragUpdated_noZoneToZoneWithTwoDropTargetViews_dropTargetsShown() {
        dropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = false),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = true),
            listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget)
        )

@@ -481,7 +481,7 @@ class DropTargetManagerTest {
    @Test
    fun onDragUpdated_noZoneToZoneWithOnlySecondDropTargetView_secondDropTargetShown() {
        dropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = false),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = true),
            listOf(bubbleLeftDragZoneOnlySecondDropTarget, bubbleRightDragZoneOnlySecondDropTarget)
        )

@@ -508,7 +508,7 @@ class DropTargetManagerTest {
        var runnableExecuted = false
        val action = Runnable { runnableExecuted = true }
        dropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = false),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = true),
            listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget)
        )
        assertThat(container.childCount).isEqualTo(DROP_VIEWS_COUNT_FOR_TWO_DROP_TARGETS)
@@ -551,7 +551,7 @@ class DropTargetManagerTest {
    @Test
    fun onDragUpdated_reEnterZoneWithMultipleDropTargetViews_dropTargetsShown() {
        dropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = false),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = true),
            listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget)
        )
        val pointX = 200
@@ -607,7 +607,7 @@ class DropTargetManagerTest {

        // First manager starts a drag, adds its views
        dropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = false),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = true),
            listOf(bubbleLeftDragZoneWithSecondDropTarget)
        )
        assertThat(container.childCount)
@@ -617,7 +617,7 @@ class DropTargetManagerTest {

        // Second manager starts a drag, adds its views
        secondDropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = false),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = true),
            listOf(bubbleRightDragZoneWithSecondDropTarget)
        )
        // Now container has views from both managers
@@ -654,7 +654,7 @@ class DropTargetManagerTest {
    @Test
    fun hideDropTargets_whenInAZone_notifiesAndHidesDropTarget() {
        dropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = true),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = false),
            listOf(bubbleLeftDragZone, bubbleRightDragZone)
        )
        // Initially, drag into the left zone
@@ -686,7 +686,7 @@ class DropTargetManagerTest {
    @Test
    fun hideDropTargets_whenInAZoneWithSecondDropTarget_notifiesAndHidesBothDropTargets() {
        dropTargetManager.onDragStarted(
            DraggedObject.LauncherIcon(bubbleBarHasBubbles = false),
            DraggedObject.LauncherIcon(showBubbleBarPillowDropTarget = true),
            listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget)
        )
        // Initially, drag into the left zone