protected void handleBadDD(NativeEvent event) { Element target = WidgetUtil.getElementUnderMouse(event); if (target == null) { VDragAndDropManager.get().interruptDrag(); return; } Node targetParent = DOM.asOld(target).getParentNode(); if (!getElement().isOrHasChild(targetParent)) { VDragAndDropManager.get().interruptDrag(); } }
public CubaMainTabSheetWidget() { RootPanel rootPanel = RootPanel.get(); dragEndHandler = rootPanel.addBitlessDomHandler(event -> handleBadDD(event.getNativeEvent()), DragEndEvent.getType()); dropHandler = rootPanel.addBitlessDomHandler(event -> handleBadDD(event.getNativeEvent()), DropEvent.getType()); dragLeaveHandler = rootPanel.addBitlessDomHandler(event -> { Element element = event.getRelativeElement(); if (element == null || element == rootPanel.getElement()) { VDragAndDropManager.get().interruptDrag(); } }, DragLeaveEvent.getType()); }
@Override public void onDragEnter(DragEnterEvent event) { NativeEvent nativeEvent = event.getNativeEvent(); if (validate(nativeEvent)) { VTransferable transferable = new VTransferable(); transferable.setDragSource(connector); vaadinDragEvent = VDragAndDropManager.get() .startDrag(transferable, event.getNativeEvent(), false); vaadinDragEvent.setCurrentGwtEvent(nativeEvent); VDragAndDropManager.get().setCurrentDropHandler(dropHandler); dropHandler.dragEnter(vaadinDragEvent); nativeEvent.preventDefault(); nativeEvent.stopPropagation(); } else if (vaadinDragEvent != null && Element.is(nativeEvent.getEventTarget())) { vaadinDragEvent.setCurrentGwtEvent(nativeEvent); VDragAndDropManager.get().setCurrentDropHandler(null); VDragAndDropManager.get().interruptDrag(); vaadinDragEvent = null; nativeEvent.preventDefault(); nativeEvent.stopPropagation(); } if (globalDragEnterHandler != null) { globalDragEnterHandler.onDragEnter(event); } }
@Override public void onDragEnter(DragEnterEvent event) { NativeEvent nativeEvent = event.getNativeEvent(); if (validate(nativeEvent)) { VTransferable transferable = new VTransferable(); transferable.setDragSource(connector); vaadinDragEvent = VDragAndDropManager.get() .startDrag(transferable, event.getNativeEvent(), false); vaadinDragEvent.setCurrentGwtEvent(nativeEvent); VDragAndDropManager.get().setCurrentDropHandler(dropHandler); dropHandler.dragEnter(vaadinDragEvent); nativeEvent.preventDefault(); nativeEvent.stopPropagation(); } else if (vaadinDragEvent != null && Element.is(nativeEvent.getEventTarget())) { vaadinDragEvent.setCurrentGwtEvent(nativeEvent); VDragAndDropManager.get().setCurrentDropHandler(null); VDragAndDropManager.get().interruptDrag(); vaadinDragEvent = null; nativeEvent.preventDefault(); nativeEvent.stopPropagation(); } if (globalDragEnterHandler != null) { globalDragEnterHandler.onDragEnter(event); } }
VDragAndDropManager.get().interruptDrag(); return; VConsole.log("Dragging disabled for " + w.getClass().getName() + " in " + parent.getWidget().getClass().getName()); VDragAndDropManager.get().interruptDrag(); return; VDragAndDropManager.get().interruptDrag(); return;
VDragAndDropManager.get().interruptDrag(); return; VConsole.log("Dragging disabled for " + w.getClass().getName() + " in " + parent.getWidget().getClass().getName()); VDragAndDropManager.get().interruptDrag(); return; VDragAndDropManager.get().interruptDrag(); return;