From dd1d288d5fe7b3a1ee3db93afccacae72bc7408c Mon Sep 17 00:00:00 2001 From: Adam Wagner Date: Thu, 13 Apr 2017 11:47:45 +0300 Subject: Create combined drop mode to allow both on_top and between drops (#9063) Resolves #8932 --- .../vaadin/client/connectors/grid/GridDropTargetConnector.java | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'client') diff --git a/client/src/main/java/com/vaadin/client/connectors/grid/GridDropTargetConnector.java b/client/src/main/java/com/vaadin/client/connectors/grid/GridDropTargetConnector.java index 13767763f8..7814a81208 100644 --- a/client/src/main/java/com/vaadin/client/connectors/grid/GridDropTargetConnector.java +++ b/client/src/main/java/com/vaadin/client/connectors/grid/GridDropTargetConnector.java @@ -117,6 +117,15 @@ public class GridDropTargetConnector extends } else { return DropLocation.BELOW; } + } else if (getState().dropMode == DropMode.ON_TOP_OR_BETWEEN) { + if (getRelativeY(target, event) < getState().dropThreshold) { + return DropLocation.ABOVE; + } else if (target.getOffsetHeight() - getRelativeY(target, event) + < getState().dropThreshold) { + return DropLocation.BELOW; + } else { + return DropLocation.ON_TOP; + } } return DropLocation.ON_TOP; } -- cgit v1.2.3