Loading libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/bubbles/DraggedObject.kt +1 −2 Original line number Diff line number Diff line Loading @@ -25,10 +25,9 @@ sealed interface DraggedObject { data class ExpandedView(val initialLocation: BubbleBarLocation) : DraggedObject // TODO(b/411505605) Remove onDropAction and move showDropTarget up // TODO(b/411505605) Refactor drop targets variable data class LauncherIcon( val bubbleBarHasBubbles: Boolean, val showDropTarget: Boolean = true, val onDropAction: Runnable ) : DraggedObject } libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/bar/DragToBubbleController.kt +2 −2 Original line number Diff line number Diff line Loading @@ -81,7 +81,7 @@ class DragToBubbleController( return } isDropHandled = false val draggedObject = LauncherIcon(bubbleBarHasBubbles = true) {} val draggedObject = LauncherIcon(bubbleBarHasBubbles = true) val dragZones = dragZoneFactory.createSortedDragZones(draggedObject) dropTargetManager.onDragStarted(draggedObject, dragZones) } Loading Loading @@ -125,7 +125,7 @@ class DragToBubbleController( private fun createDragZoneFactory(): DragZoneFactory { val deviceConfig = DeviceConfig.create(context, context.getSystemService(WindowManager::class.java)) DeviceConfig.create(context, context.getSystemService(WindowManager::class.java)!!) return DragZoneFactory( context, deviceConfig, Loading libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/shared/bubbles/DragZoneFactoryTest.kt +3 −3 Original line number Diff line number Diff line Loading @@ -386,7 +386,7 @@ class DragZoneFactoryTest { ) val dragZones = dragZoneFactory.createSortedDragZones( DraggedObject.LauncherIcon(bubbleBarHasBubbles = true) { } DraggedObject.LauncherIcon(bubbleBarHasBubbles = true) ) val expectedZones: List<DragZoneVerifier> = listOf(verifyInstance<DragZone.Bubble.Left>(), verifyInstance<DragZone.Bubble.Right>()) Loading @@ -409,7 +409,7 @@ class DragZoneFactoryTest { ) val dragZones = dragZoneFactory.createSortedDragZones( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) { } DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) ) val expectedZones: List<DragZoneVerifier> = listOf(verifyInstance<DragZone.Bubble.Left>(), verifyInstance<DragZone.Bubble.Right>()) Loading @@ -432,7 +432,7 @@ class DragZoneFactoryTest { ) val dragZones = dragZoneFactory.createSortedDragZones( DraggedObject.LauncherIcon(showDropTarget = false, bubbleBarHasBubbles = false) { } DraggedObject.LauncherIcon(showDropTarget = false, bubbleBarHasBubbles = false) ) val expectedZones: List<DragZoneVerifier> = listOf(verifyInstance<DragZone.Bubble.Left>(), verifyInstance<DragZone.Bubble.Right>()) Loading libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/shared/bubbles/DropTargetManagerTest.kt +14 −18 Original line number Diff line number Diff line Loading @@ -388,7 +388,7 @@ class DropTargetManagerTest { @Test fun onDragStarted_noInitialDragZone_notifiesInitialDragZoneNull() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = true) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = true), listOf(bubbleLeftDragZone, bubbleRightDragZone) ) assertThat(dragZoneChangedListener.initialDragZone).isNull() Loading @@ -397,15 +397,15 @@ class DropTargetManagerTest { @Test fun onDragStartedMultipleTimes_secondDropViewRemoved() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget) ) dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget) ) dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = true) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = true), listOf(bubbleLeftDragZone, bubbleRightDragZone) ) assertThat(container.childCount).isEqualTo(DROP_VIEWS_COUNT) Loading @@ -413,9 +413,8 @@ class DropTargetManagerTest { @Test fun onDragUpdated_noZoneToZoneWithDropTargetView_listenerNotified() { val onDropAction = Runnable { } dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = true, onDropAction = onDropAction), DraggedObject.LauncherIcon(bubbleBarHasBubbles = true), listOf(bubbleLeftDragZone, bubbleRightDragZone) ) Loading @@ -428,15 +427,12 @@ class DropTargetManagerTest { } assertThat(dragZoneChangedListener.fromDragZone).isNull() assertThat(dragZoneChangedListener.toDragZone).isEqualTo(bubbleLeftDragZone) val launcherIconAction = (dragZoneChangedListener.draggedObject as DraggedObject.LauncherIcon).onDropAction assertThat(launcherIconAction).isEqualTo(onDropAction) } @Test fun onDragUpdated_noZoneToZoneWithDropTargetView_dropTargetShown() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = true) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = true), listOf(bubbleLeftDragZone, bubbleRightDragZone) ) Loading @@ -459,7 +455,7 @@ class DropTargetManagerTest { @Test fun onDragUpdated_noZoneToZoneWithTwoDropTargetViews_dropTargetsShown() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget) ) Loading @@ -485,7 +481,7 @@ class DropTargetManagerTest { @Test fun onDragUpdated_noZoneToZoneWithOnlySecondDropTargetView_secondDropTargetShown() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneOnlySecondDropTarget, bubbleRightDragZoneOnlySecondDropTarget) ) Loading @@ -512,7 +508,7 @@ class DropTargetManagerTest { var runnableExecuted = false val action = Runnable { runnableExecuted = true } dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget) ) assertThat(container.childCount).isEqualTo(DROP_VIEWS_COUNT_FOR_TWO_DROP_TARGETS) Loading Loading @@ -555,7 +551,7 @@ class DropTargetManagerTest { @Test fun onDragUpdated_reEnterZoneWithMultipleDropTargetViews_dropTargetsShown() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget) ) val pointX = 200 Loading Loading @@ -611,7 +607,7 @@ class DropTargetManagerTest { // First manager starts a drag, adds its views dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget) ) assertThat(container.childCount) Loading @@ -621,7 +617,7 @@ class DropTargetManagerTest { // Second manager starts a drag, adds its views secondDropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleRightDragZoneWithSecondDropTarget) ) // Now container has views from both managers Loading Loading @@ -658,7 +654,7 @@ class DropTargetManagerTest { @Test fun hideDropTargets_whenInAZone_notifiesAndHidesDropTarget() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = true) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = true), listOf(bubbleLeftDragZone, bubbleRightDragZone) ) // Initially, drag into the left zone Loading Loading @@ -690,7 +686,7 @@ class DropTargetManagerTest { @Test fun hideDropTargets_whenInAZoneWithSecondDropTarget_notifiesAndHidesBothDropTargets() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget) ) // Initially, drag into the left zone Loading Loading
libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/bubbles/DraggedObject.kt +1 −2 Original line number Diff line number Diff line Loading @@ -25,10 +25,9 @@ sealed interface DraggedObject { data class ExpandedView(val initialLocation: BubbleBarLocation) : DraggedObject // TODO(b/411505605) Remove onDropAction and move showDropTarget up // TODO(b/411505605) Refactor drop targets variable data class LauncherIcon( val bubbleBarHasBubbles: Boolean, val showDropTarget: Boolean = true, val onDropAction: Runnable ) : DraggedObject }
libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/bar/DragToBubbleController.kt +2 −2 Original line number Diff line number Diff line Loading @@ -81,7 +81,7 @@ class DragToBubbleController( return } isDropHandled = false val draggedObject = LauncherIcon(bubbleBarHasBubbles = true) {} val draggedObject = LauncherIcon(bubbleBarHasBubbles = true) val dragZones = dragZoneFactory.createSortedDragZones(draggedObject) dropTargetManager.onDragStarted(draggedObject, dragZones) } Loading Loading @@ -125,7 +125,7 @@ class DragToBubbleController( private fun createDragZoneFactory(): DragZoneFactory { val deviceConfig = DeviceConfig.create(context, context.getSystemService(WindowManager::class.java)) DeviceConfig.create(context, context.getSystemService(WindowManager::class.java)!!) return DragZoneFactory( context, deviceConfig, Loading
libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/shared/bubbles/DragZoneFactoryTest.kt +3 −3 Original line number Diff line number Diff line Loading @@ -386,7 +386,7 @@ class DragZoneFactoryTest { ) val dragZones = dragZoneFactory.createSortedDragZones( DraggedObject.LauncherIcon(bubbleBarHasBubbles = true) { } DraggedObject.LauncherIcon(bubbleBarHasBubbles = true) ) val expectedZones: List<DragZoneVerifier> = listOf(verifyInstance<DragZone.Bubble.Left>(), verifyInstance<DragZone.Bubble.Right>()) Loading @@ -409,7 +409,7 @@ class DragZoneFactoryTest { ) val dragZones = dragZoneFactory.createSortedDragZones( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) { } DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) ) val expectedZones: List<DragZoneVerifier> = listOf(verifyInstance<DragZone.Bubble.Left>(), verifyInstance<DragZone.Bubble.Right>()) Loading @@ -432,7 +432,7 @@ class DragZoneFactoryTest { ) val dragZones = dragZoneFactory.createSortedDragZones( DraggedObject.LauncherIcon(showDropTarget = false, bubbleBarHasBubbles = false) { } DraggedObject.LauncherIcon(showDropTarget = false, bubbleBarHasBubbles = false) ) val expectedZones: List<DragZoneVerifier> = listOf(verifyInstance<DragZone.Bubble.Left>(), verifyInstance<DragZone.Bubble.Right>()) Loading
libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/shared/bubbles/DropTargetManagerTest.kt +14 −18 Original line number Diff line number Diff line Loading @@ -388,7 +388,7 @@ class DropTargetManagerTest { @Test fun onDragStarted_noInitialDragZone_notifiesInitialDragZoneNull() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = true) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = true), listOf(bubbleLeftDragZone, bubbleRightDragZone) ) assertThat(dragZoneChangedListener.initialDragZone).isNull() Loading @@ -397,15 +397,15 @@ class DropTargetManagerTest { @Test fun onDragStartedMultipleTimes_secondDropViewRemoved() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget) ) dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget) ) dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = true) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = true), listOf(bubbleLeftDragZone, bubbleRightDragZone) ) assertThat(container.childCount).isEqualTo(DROP_VIEWS_COUNT) Loading @@ -413,9 +413,8 @@ class DropTargetManagerTest { @Test fun onDragUpdated_noZoneToZoneWithDropTargetView_listenerNotified() { val onDropAction = Runnable { } dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = true, onDropAction = onDropAction), DraggedObject.LauncherIcon(bubbleBarHasBubbles = true), listOf(bubbleLeftDragZone, bubbleRightDragZone) ) Loading @@ -428,15 +427,12 @@ class DropTargetManagerTest { } assertThat(dragZoneChangedListener.fromDragZone).isNull() assertThat(dragZoneChangedListener.toDragZone).isEqualTo(bubbleLeftDragZone) val launcherIconAction = (dragZoneChangedListener.draggedObject as DraggedObject.LauncherIcon).onDropAction assertThat(launcherIconAction).isEqualTo(onDropAction) } @Test fun onDragUpdated_noZoneToZoneWithDropTargetView_dropTargetShown() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = true) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = true), listOf(bubbleLeftDragZone, bubbleRightDragZone) ) Loading @@ -459,7 +455,7 @@ class DropTargetManagerTest { @Test fun onDragUpdated_noZoneToZoneWithTwoDropTargetViews_dropTargetsShown() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget) ) Loading @@ -485,7 +481,7 @@ class DropTargetManagerTest { @Test fun onDragUpdated_noZoneToZoneWithOnlySecondDropTargetView_secondDropTargetShown() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneOnlySecondDropTarget, bubbleRightDragZoneOnlySecondDropTarget) ) Loading @@ -512,7 +508,7 @@ class DropTargetManagerTest { var runnableExecuted = false val action = Runnable { runnableExecuted = true } dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget) ) assertThat(container.childCount).isEqualTo(DROP_VIEWS_COUNT_FOR_TWO_DROP_TARGETS) Loading Loading @@ -555,7 +551,7 @@ class DropTargetManagerTest { @Test fun onDragUpdated_reEnterZoneWithMultipleDropTargetViews_dropTargetsShown() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget) ) val pointX = 200 Loading Loading @@ -611,7 +607,7 @@ class DropTargetManagerTest { // First manager starts a drag, adds its views dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget) ) assertThat(container.childCount) Loading @@ -621,7 +617,7 @@ class DropTargetManagerTest { // Second manager starts a drag, adds its views secondDropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleRightDragZoneWithSecondDropTarget) ) // Now container has views from both managers Loading Loading @@ -658,7 +654,7 @@ class DropTargetManagerTest { @Test fun hideDropTargets_whenInAZone_notifiesAndHidesDropTarget() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = true) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = true), listOf(bubbleLeftDragZone, bubbleRightDragZone) ) // Initially, drag into the left zone Loading Loading @@ -690,7 +686,7 @@ class DropTargetManagerTest { @Test fun hideDropTargets_whenInAZoneWithSecondDropTarget_notifiesAndHidesBothDropTargets() { dropTargetManager.onDragStarted( DraggedObject.LauncherIcon(bubbleBarHasBubbles = false) {}, DraggedObject.LauncherIcon(bubbleBarHasBubbles = false), listOf(bubbleLeftDragZoneWithSecondDropTarget, bubbleRightDragZoneWithSecondDropTarget) ) // Initially, drag into the left zone Loading