public HandlerRegistration addDragOverHandler(DragOverHandler handler) { return addBitlessDomHandler(handler, DragOverEvent.getType()); }
event.preventDefault(); }, DragOverEvent.getType());
@UiHandler("container") void onDragOver(DragOverEvent event) { // This is actually needed for the "drop" event to fire at all. event.preventDefault(); int draggedColumnIndex = controller.getDragIndex(); int itemColumnIndex = controller.getColumnIndex(column); // Highlight the drop target. container.setStyleName(style.validDropTarget(), draggedColumnIndex != itemColumnIndex); }
protected static void showDropZones(DragOverEvent event) { if (isDragEventContainsFiles(event.getNativeEvent())) { if (dragStopTimer != null) { dragStopTimer.cancel(); } dragStopTimer = null; // find all drop zones and add classname for (Map.Entry<Element, CubaFileUploadWidget> entry : dropZoneFileUploadMap.entrySet()) { Element dropZone = entry.getKey(); if (isUnderOverlay(dropZone)) { continue; } if (entry.getValue().isEnabled()) { dropZone.addClassName(CUBA_FILEUPLOAD_DROPZONE_CLASS); } } } }
@Test public void dropHandlerShouldPreventDefault() { StubAnchor a1 = new StubAnchor(); StubAnchor a2 = new StubAnchor(); a1.addDragStartHandler(e -> e.setData("text/plain", "foo")); a2.addDragOverHandler(e -> { e.preventDefault(); }); a1.dragStart(); a2.dragOver(); try { a2.drop(); fail(); } catch (IllegalStateException ise) { assertThat(ise.getMessage(), is("addDropHandler should call preventDefault()")); } }
@Override public void onDragOver(DragOverEvent event) { NativeEvent nativeEvent = event.getNativeEvent(); if (validate(nativeEvent) && vaadinDragEvent != null) { nativeEvent.preventDefault(); nativeEvent.stopPropagation(); // event stopped, just notify global handler // Haulmont API if (globalDragOverHandler != null) { globalDragOverHandler.onDragOver(event); } vaadinDragEvent.setCurrentGwtEvent(nativeEvent); VDragAndDropManager.get().setCurrentDropHandler(dropHandler); dropHandler.dragOver(vaadinDragEvent); } }
public HandlerRegistration addDragOverHandler(DragOverHandler handler) { return addBitlessDomHandler(handler, DragOverEvent.getType()); }
@Test public void dropCallsDragEnd() { StubAnchor a1 = new StubAnchor(); StubAnchor a2 = new StubAnchor(); boolean[] ended = { false }; a1.addDragStartHandler(e -> e.setData("text/plain", "foo")); a1.addDragEndHandler(e -> ended[0] = true); a2.addDragOverHandler(e -> { e.preventDefault(); }); a2.addDropHandler(e -> { e.preventDefault(); }); a1.dragStart(); a2.drop(); assertThat(ended[0], is(true)); }
@Override public void onDragOver(DragOverEvent event) { NativeEvent nativeEvent = event.getNativeEvent(); if (validate(nativeEvent) && vaadinDragEvent != null) { nativeEvent.preventDefault(); nativeEvent.stopPropagation(); // event stopped, just notify global handler // Haulmont API if (globalDragOverHandler != null) { globalDragOverHandler.onDragOver(event); } vaadinDragEvent.setCurrentGwtEvent(nativeEvent); VDragAndDropManager.get().setCurrentDropHandler(dropHandler); dropHandler.dragOver(vaadinDragEvent); } }
public HandlerRegistration addDragOverHandler(DragOverHandler handler) { return addBitlessDomHandler(handler, DragOverEvent.getType()); }
@Test public void dataIsPassedToDrop() { StubAnchor a1 = new StubAnchor(); StubAnchor a2 = new StubAnchor(); boolean[] ended = { false }; a1.addDragStartHandler(e -> e.setData("text/plain", "foo")); a1.addDragEndHandler(e -> ended[0] = true); a2.addDragOverHandler(e -> { e.preventDefault(); }); a2.addDropHandler(e -> { assertThat(e.getData("text/plain"), is("foo")); e.preventDefault(); }); a1.dragStart(); a2.drop(); } }
public HandlerRegistration addDragOverHandler(DragOverHandler handler) { return addBitlessDomHandler(handler, DragOverEvent.getType()); }
private <T extends HasAllDragAndDropHandlers & IsWidget> void set(String type, IsFlowPanel root, Property<T> current, T a) { // just to see one of them not be draggable if (a != view.a4() && a != view.l4()) { a.getIsElement().setAttribute("draggable", "true"); } binder.when(draggingOver(a)).is(true).set(view.style().bold()).on(a); binder.when(dragging(a)).is(true).set(current).to(a); a.addDragStartHandler(e -> e.setData("text", type)); a.addDragOverHandler(e -> e.preventDefault()); a.addDropHandler(e -> { if (type.equals(e.getData("text")) && current.get() != a) { GWT.log("Dropped " + current + " onto " + a); root.remove(current.get()); root.insert(current.get(), root.getWidgetIndex(a)); } e.preventDefault(); }); }
public HandlerRegistration addDragOverHandler(DragOverHandler handler) { return addBitlessDomHandler(handler, DragOverEvent.getType()); }
@Test public void dropImplicitlyCallsOverIfNotExplicitlyCalled() { StubAnchor a1 = new StubAnchor(); StubAnchor a2 = new StubAnchor(); a1.addDragStartHandler(e -> e.setData("text/plain", "foo")); a2.addDragOverHandler(e -> { e.preventDefault(); }); a2.addDropHandler(e -> { e.preventDefault(); }); a1.dragStart(); // no explicit dragOver // a2.dragOver(); a2.drop(); }
/** * {@inheritDoc} */ public HandlerRegistration addDragOverHandler(DragOverHandler handler) { return addDomHandler(handler, DragOverEvent.getType()); }
@Test public void successfulDragAndDrop() { StubAnchor a1 = new StubAnchor(); StubAnchor a2 = new StubAnchor(); a1.addDragStartHandler(e -> e.setData("text/plain", "foo")); a2.addDragOverHandler(e -> { e.preventDefault(); }); a2.addDropHandler(e -> { e.preventDefault(); }); a1.dragStart(); a2.dragOver(); a2.drop(); }
@Override public final HandlerRegistration addDragOverHandler(DragOverHandler handler) { return addDomHandler(handler, DragOverEvent.getType()); } @Override
@Override public final HandlerRegistration addDragOverHandler(DragOverHandler handler) { return addDomHandler(handler, DragOverEvent.getType()); } @Override
@Override public final HandlerRegistration addDragOverHandler(DragOverHandler handler) { return addDomHandler(handler, DragOverEvent.getType()); } @Override