diff options
-rw-r--r-- | client/src/com/vaadin/client/ui/dd/VDragAndDropManager.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/client/src/com/vaadin/client/ui/dd/VDragAndDropManager.java b/client/src/com/vaadin/client/ui/dd/VDragAndDropManager.java index ae14218fff..ac1ae72877 100644 --- a/client/src/com/vaadin/client/ui/dd/VDragAndDropManager.java +++ b/client/src/com/vaadin/client/ui/dd/VDragAndDropManager.java @@ -84,7 +84,14 @@ public class VDragAndDropManager { currentDrag.setCurrentGwtEvent(nativeEvent); updateDragImagePosition(); - Element targetElement = Element.as(nativeEvent.getEventTarget()); + Node targetNode = Node.as(nativeEvent.getEventTarget()); + Element targetElement; + if (Element.is(targetNode)) { + targetElement = Element.as(targetNode); + } else { + targetElement = targetNode.getParentElement(); + } + if (Util.isTouchEvent(nativeEvent) || (dragElement != null && dragElement .isOrHasChild(targetElement))) { |