From 9dd70e13cd49639549645f23b1b5ef63a36d84cc Mon Sep 17 00:00:00 2001 From: Adam Wagner Date: Wed, 17 May 2017 07:47:59 +0300 Subject: Make it possible for grid drop target to accept dragged data when grid is empty (#9332) * Make it possible for grid drop target to accept dragged data when grid is empty (#9068) * Make return type of getDropTargetRow() optional --- .../vaadin/tests/components/grid/GridDragAndDrop.java | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'uitest') diff --git a/uitest/src/main/java/com/vaadin/tests/components/grid/GridDragAndDrop.java b/uitest/src/main/java/com/vaadin/tests/components/grid/GridDragAndDrop.java index 9bda8c3a05..ad13e2177a 100644 --- a/uitest/src/main/java/com/vaadin/tests/components/grid/GridDragAndDrop.java +++ b/uitest/src/main/java/com/vaadin/tests/components/grid/GridDragAndDrop.java @@ -55,7 +55,7 @@ public class GridDragAndDrop extends AbstractTestUIWithLog { GridDragSource dragSource = applyDragSource(left); // Drop target Grid - Grid right = createGridAndFillWithData(5); + Grid right = createGridAndFillWithData(0); GridDropTarget dropTarget = applyDropTarget(right); // Layout the two grids @@ -158,9 +158,12 @@ public class GridDragAndDrop extends AbstractTestUIWithLog { List items = (List) dataProvider.getItems(); // Calculate the target row's index - int index = items.indexOf(event.getDropTargetRow()) - + (event.getDropLocation() == DropLocation.BELOW ? 1 - : 0); + int index = items.size(); + if (event.getDropTargetRow().isPresent()) { + index = items.indexOf(event.getDropTargetRow().get()) + + (event.getDropLocation() == DropLocation.BELOW + ? 1 : 0); + } // Add dragged items to the target Grid items.addAll(index, draggedItems); @@ -170,8 +173,10 @@ public class GridDragAndDrop extends AbstractTestUIWithLog { + ", dragDataJson=" + event.getDataTransferData("application/json") + ", target=" - + event.getDropTargetRow().getFirstName() + " " - + event.getDropTargetRow().getLastName() + + (event.getDropTargetRow().isPresent() ? + event.getDropTargetRow().get().getFirstName() + " " + + event.getDropTargetRow().get() + .getLastName() : "[BODY]") + ", location=" + event.getDropLocation()); } }); -- cgit v1.2.3