Example usage for com.google.gwt.dom.client NativeEvent stopPropagation

List of usage examples for com.google.gwt.dom.client NativeEvent stopPropagation

Introduction

In this page you can find the example usage for com.google.gwt.dom.client NativeEvent stopPropagation.

Prototype

public final void stopPropagation() 

Source Link

Document

Stops the event from being propagated to parent elements.

Usage

From source file:app.dnd.drag.DraggableCellDecorator.java

License:Apache License

public void onBrowserEvent(Context context, Element parent, final T value, NativeEvent event,
        ValueUpdater<T> valueUpdater) {
    if (MOUSE_DOWN.equals(event.getType())) {
        EventTarget eventTarget = event.getEventTarget();
        if (Element.is(eventTarget)) {
            Element target = eventTarget.cast();
            Element wrapper = target.getParentElement();
            if (wrapper != null && dragHandlerClass.equals(wrapper.getClassName())) {
                DNDContext dndContext = dragSource.startDragging(value);
                dragController.dragStart(dndContext, parent);
                event.stopPropagation();
                event.preventDefault();/*from   ww w.j  a v  a  2 s . c  o m*/
                return;
            }
        }
    }
    final Element cellParent = getCellParent(parent);
    cell.onBrowserEvent(context, cellParent, getValue(value), event, getValueUpdater());
}

From source file:cc.alcina.framework.gwt.client.cell.FunctionalCell.java

License:Apache License

@Override
public void onBrowserEvent(Context context, Element parent, FunctionalTuple value, NativeEvent event,
        ValueUpdater<FunctionalTuple> valueUpdater) {
    super.onBrowserEvent(context, parent, value, event, valueUpdater);
    if (CLICK.equals(event.getType())) {
        EventTarget eventTarget = event.getEventTarget();
        if (!Element.is(eventTarget)) {
            return;
        }/*ww  w.  j a va 2  s  .  co m*/
        if (parent.getFirstChildElement().isOrHasChild(Element.as(eventTarget))) {
            event.stopPropagation();
        }
    }
}

From source file:cc.kune.common.client.shortcuts.GlobalShortcutRegisterDefault.java

License:GNU Affero Public License

/**
 * Instantiates a new global shortcut register default.
 *//*from   w  ww . j  a  va2s  . co  m*/
public GlobalShortcutRegisterDefault() {
    super();
    eventHandler = new NativePreviewHandler() {
        @Override
        public void onPreviewNativeEvent(final NativePreviewEvent nativeEventPrev) {
            if (nativeEventPrev.getTypeInt() == Event.ONKEYDOWN) {
                final NativeEvent nativeEvent = nativeEventPrev.getNativeEvent();
                final Event event = Event.as(nativeEvent);
                AbstractAction action = get(KeyStroke.getKeyStroke(event.getKeyCode(), 0));
                if (action == null) {
                    action = get(Shortcut.getShortcut(event.getCtrlKey(), event.getAltKey(),
                            event.getShiftKey(), event.getShiftKey(), (char) event.getKeyCode()));
                }
                if (action != null) {
                    Log.debug("Not propagating event for action: " + action.getValue(Action.NAME));
                    nativeEvent.stopPropagation();
                    action.actionPerformed(new ActionEvent(nativeEvent.getCurrentEventTarget(), event));
                    nativeEventPrev.cancel();
                }
            }
        }
    };
}

From source file:com.google.gerrit.client.change.FileTable.java

License:Apache License

private static boolean onRestore(NativeEvent e, int idx) {
    MyTable t = getMyTable(e);/*from  ww w .j  av a  2s  . c o m*/
    if (t != null) {
        t.onRestore(idx);
        e.preventDefault();
        e.stopPropagation();
        return false;
    }
    return true;
}

From source file:com.google.gerrit.client.change.FileTable.java

License:Apache License

private static boolean onOpen(NativeEvent e, int idx) {
    if (link.handleAsClick(e.<Event>cast())) {
        MyTable t = getMyTable(e);//from www  .j  a  v a 2s  .c  o  m
        if (t != null) {
            t.onOpenRow(1 + idx);
            e.preventDefault();
            e.stopPropagation();
            return false;
        }
    }
    return true;
}

From source file:com.google.gerrit.client.diff.SideBySideChunkManager.java

License:Apache License

private static void focus(NativeEvent event, DisplaySide side) {
    Element e = Element.as(event.getEventTarget());
    for (e = DOM.getParent(e); e != null; e = DOM.getParent(e)) {
        EventListener l = DOM.getEventListener(e);
        if (l instanceof SideBySide) {
            ((SideBySide) l).getCmFromSide(side).focus();
            event.stopPropagation();
        }/*from  w  w w . ja  v a 2  s .  c om*/
    }
}

From source file:com.google.gerrit.client.diff.UnifiedChunkManager.java

License:Apache License

private static void focus(NativeEvent event) {
    Element e = Element.as(event.getEventTarget());
    for (e = DOM.getParent(e); e != null; e = DOM.getParent(e)) {
        EventListener l = DOM.getEventListener(e);
        if (l instanceof Unified) {
            ((Unified) l).getCmFromSide(DisplaySide.A).focus();
            event.stopPropagation();
        }/*from   w  w  w . j av a2 s  .  c o  m*/
    }
}

From source file:com.gwtcx.extgwt.client.field.StringCell.java

License:Open Source License

@Override
protected void onNavigationKey(Context context, Element parent, String value, NativeEvent event,
        ValueUpdater<String> valueUpdater) {

    Log.debug("onNavigationKey()");

    if (event.getKeyCode() == KeyCodes.KEY_DOWN) {
        event.stopPropagation();
        event.preventDefault();/* ww  w .  j a  v  a2 s  . c  o m*/
        onTriggerClick(context, parent.<XElement>cast(), event, value, valueUpdater);
    }
}

From source file:com.haulmont.cuba.web.widgets.client.addons.dragdroplayouts.ui.VLayoutDragDropMouseHandler.java

License:Apache License

/**
 * Initiates the drag only on the first move event
 *
 * @param originalEvent//from  w  w  w . j a v  a2 s.  c o  m
 *            the original Mouse Down event. Only events on elements are
 *            passed in here (Element.as() is safe without check here)
 */
protected void initiateDragOnMove(final NativeEvent originalEvent) {
    EventTarget eventTarget = originalEvent.getEventTarget();

    boolean stopEventPropagation = false;

    Element targetElement = Element.as(eventTarget);
    Widget target = WidgetUtil.findWidget(targetElement, null);
    Widget targetParent = target.getParent();

    // Stop event propagation and prevent default behaviour if
    // - target is *not* a VTabsheet.TabCaption or
    // - drag mode is caption mode and widget is caption
    boolean isTabCaption = targetParent instanceof VTabsheet.TabCaption;
    boolean isCaption = VDragDropUtil.isCaptionOrCaptionless(targetParent);

    if (dragMode == LayoutDragMode.CLONE && isTabCaption == false) {

        stopEventPropagation = true;

        // overwrite stopEventPropagation flag again if
        // - root implements VHasDragFilter but
        // - target is not part of its drag filter and
        // - target is not a GWT Label based widget
        if (root instanceof VHasDragFilter) {
            if (((VHasDragFilter) root).getDragFilter().isDraggable(target) == false
                    && (target instanceof LabelBase) == false) {
                stopEventPropagation = false;
            }
        }

        if (root instanceof VHasGrabFilter) {
            VGrabFilter grabFilter = ((VHasGrabFilter) root).getGrabFilter();
            if (grabFilter != null && !grabFilter.canBeGrabbed(root, target)) {
                return;
            }
        }
    }

    if (dragMode == LayoutDragMode.CAPTION && isCaption) {
        stopEventPropagation = true;
    }

    if (isElementNotDraggable(targetElement)) {
        stopEventPropagation = false;
    }

    if (stopEventPropagation) {
        originalEvent.stopPropagation();
        originalEvent.preventDefault();

        // Manually focus as preventDefault() will also cancel focus
        targetElement.focus();
    }

    mouseDownHandlerReg = Event.addNativePreviewHandler(new NativePreviewHandler() {

        @Override
        public void onPreviewNativeEvent(NativePreviewEvent event) {
            int type = event.getTypeInt();
            if (type == Event.ONMOUSEUP || type == Event.ONTOUCHCANCEL || type == Event.ONTOUCHEND) {
                mouseDownHandlerReg.removeHandler();
                mouseDownHandlerReg = null;

            } else if (type == Event.ONMOUSEMOVE || type == Event.ONTOUCHMOVE) {
                mouseDownHandlerReg.removeHandler();
                mouseDownHandlerReg = null;
                initiateDrag(originalEvent);
            }
        }
    });
}

From source file:com.sencha.gxt.cell.core.client.form.CheckBoxCell.java

License:sencha.com license

@Override
public void onBrowserEvent(Context context, Element parent, Boolean value, NativeEvent event,
        ValueUpdater<Boolean> valueUpdater) {
    Element target = event.getEventTarget().cast();
    if (!parent.isOrHasChild(target)) {
        return;//w w  w .j  a  va 2  s.  c  om
    }
    super.onBrowserEvent(context, parent, value, event, valueUpdater);

    boolean enterPressed = "keydown".equals(event.getType()) && event.getKeyCode() == KeyCodes.KEY_ENTER;

    if ("click".equals(event.getType()) || enterPressed) {
        event.stopPropagation();

        if (enterPressed) {
            event.preventDefault();
        }

        updateCheckBoxValue(parent, event, value, valueUpdater);
    }
}