Example usage for com.google.gwt.user.client DOM eventGetCurrentTarget

List of usage examples for com.google.gwt.user.client DOM eventGetCurrentTarget

Introduction

In this page you can find the example usage for com.google.gwt.user.client DOM eventGetCurrentTarget.

Prototype

public static Element eventGetCurrentTarget(Event evt) 

Source Link

Document

Gets the current target element of the given event.

Usage

From source file:asquare.gwt.tk.client.ui.behavior.ControllerSupportDelegate.java

License:Apache License

public void onBrowserEvent(Event event) {
    /*/*from  w  w w .ja  v  a  2s .com*/
     * Avoid processing the same event twice (issue with the GWT dispatcher). 
     * If you sink events on a child, but do not set a listener (as in the case of UIObjects), 
     * the following will happen:
     *
     * 1) child element's onXXX event handler is invoked
     * 2) $wnd.__dispatchEvent() is called with the event and child element
     * 3) this crawls up the heirarchy until it finds a GWT event listener (i.e. CComposite)
     * 4) CComposite.onBrowserEvent() is called (e.target = child, e.currentTarget = child)
     * 5) the event bubbles up to the parent element
     * 6) parent element's onXXX event handler is invoked
     * 7) $wnd.__dispatchEvent() is called with the event and the parent element
     * 8) CComposite.onBrowserEvent() is called (e.target = child, e.currentTarget = parent)
     * 
     * @see DOMImplStandard#init()
     * @see Tree#onBrowserEvent(Event)
     * 
     * Note: don't test current target when capturing. DOM.eventGetCurrentTarget() returns $wnd 
     * when capturing in Firefox and $wnd.equals() blows up. 
     * @see http://groups.google.com/group/Google-Web-Toolkit-Contributors/browse_thread/thread/41f12a9def68f97a
     * 
     * Note: eventGetCurrentTarget(event) is wrong in FocusImplOld (Safari, old Mozilla, Opera)--it returns the 
     * nested INPUT. Focus events don't bubble anyway, so bypass the check in this case. Bleh. 
     */
    if (m_controllers != null) {
        int eventType = DOM.eventGetType(event);
        if (DOM.getCaptureElement() != null || (eventType & Event.FOCUSEVENTS) != 0
                || DOM.eventGetCurrentTarget(event).equals(m_widget.getElement())) {
            for (int i = 0, size = m_controllers.size(); i < size; i++) {
                Controller controller = m_controllers.get(i);
                if ((controller.getEventBits() & eventType) != 0
                        && (m_enabled || !isControllerDisablable(controller.getId()))) {
                    controller.onBrowserEvent(m_widget, event);
                }
            }
        }
    }
}

From source file:asquare.gwt.tk.client.ui.behavior.EventBaseImpl.java

License:Apache License

public Element getCurrentTarget() {
    return DOM.eventGetCurrentTarget(m_domEvent);
}

From source file:bufferings.ktr.wjr.client.ui.widget.WjrListBox.java

License:Apache License

/**
 * {@inheritDoc}/*  www . j  ava 2s . co m*/
 */
@Override
public void onBrowserEvent(Event event) {
    int eventType = DOM.eventGetType(event);

    switch (eventType) {
    case Event.ONKEYDOWN:
        if (curSelection == null) {
            if (mainPanel.getWidgetCount() > 0) {
                setSelection(mainPanel.getWidget(0));
            }
            super.onBrowserEvent(event);
            return;
        }
    }

    switch (eventType) {
    case Event.ONKEYDOWN:
    case Event.ONKEYPRESS:
    case Event.ONKEYUP:
        if (DOM.eventGetAltKey(event) || DOM.eventGetMetaKey(event)) {
            super.onBrowserEvent(event);
            return;
        }
    }

    switch (eventType) {
    case Event.ONMOUSEDOWN: {
        if ((DOM.eventGetCurrentTarget(event) == getElement()) && (event.getButton() == Event.BUTTON_LEFT)) {
            elementClicked(DOM.eventGetTarget(event));
        }
        break;
    }
    case Event.ONKEYDOWN: {
        keyboardNavigation(event);
        lastWasKeyDown = true;
        break;
    }
    case Event.ONKEYPRESS: {
        if (!lastWasKeyDown) {
            keyboardNavigation(event);
        }
        lastWasKeyDown = false;
        break;
    }
    case Event.ONKEYUP: {
        lastWasKeyDown = false;
        break;
    }
    }

    switch (eventType) {
    case Event.ONKEYDOWN:
    case Event.ONKEYUP: {
        if (isArrowKey(DOM.eventGetKeyCode(event))) {
            DOM.eventCancelBubble(event, true);
            DOM.eventPreventDefault(event);
            return;
        }
    }
    }

    super.onBrowserEvent(event);
}

From source file:bufferings.ktr.wjr.client.ui.widget.WjrTree.java

License:Apache License

/**
 * {@inheritDoc}//from   ww w. j a  v  a 2  s.co  m
 */
@Override
public void onBrowserEvent(Event event) {
    int eventType = DOM.eventGetType(event);

    switch (eventType) {
    case Event.ONKEYDOWN:
        if (curSelection == null) {
            if (getItemCount() > 0) {
                setSelectedItem(getItem(0), true);
            }
            super.onBrowserEvent(event);
            return;
        }
    }

    switch (eventType) {
    case Event.ONKEYDOWN:
    case Event.ONKEYPRESS:
    case Event.ONKEYUP:
        if (DOM.eventGetAltKey(event) || DOM.eventGetMetaKey(event)) {
            super.onBrowserEvent(event);
            return;
        }
    }

    switch (eventType) {
    case Event.ONMOUSEDOWN: {
        if ((DOM.eventGetCurrentTarget(event) == getElement()) && (event.getButton() == Event.BUTTON_LEFT)) {
            elementClicked(DOM.eventGetTarget(event));
        }
        break;
    }
    case Event.ONKEYDOWN: {
        keyboardNavigation(event);
        lastWasKeyDown = true;
        break;
    }
    case Event.ONKEYPRESS: {
        if (!lastWasKeyDown) {
            keyboardNavigation(event);
        }
        lastWasKeyDown = false;
        break;
    }
    case Event.ONKEYUP: {
        lastWasKeyDown = false;
        break;
    }
    }

    switch (eventType) {
    case Event.ONKEYDOWN:
    case Event.ONKEYUP: {
        if (isAssignedKey(DOM.eventGetKeyCode(event))) {
            DOM.eventCancelBubble(event, true);
            DOM.eventPreventDefault(event);
            return;
        }
    }
    }

    super.onBrowserEvent(event);
}

From source file:com.areahomeschoolers.baconbits.client.content.calendar.InteractiveWidget.java

License:Open Source License

@Override
public void onBrowserEvent(Event event) {
    int eventType = DOM.eventGetType(event);
    Element element = DOM.eventGetTarget(event);

    switch (eventType) {
    case Event.ONDBLCLICK: {
        onDoubleClick(element, event);//  w  w  w.j av a  2s. c o  m
        focusPanel.setFocus(true);
        break;
    }
    case Event.ONMOUSEDOWN: {
        if (DOM.eventGetCurrentTarget(event) == getElement()) {

            onMouseDown(element, event);
            focusPanel.setFocus(true);
            // Cancel events so Firefox / Chrome don't
            // give child widgets with scrollbars focus.
            DOM.eventCancelBubble(event, true);
            DOM.eventPreventDefault(event);
            return;
        }
    }
    case Event.ONMOUSEOVER: {
        if (DOM.eventGetCurrentTarget(event) == getElement()) {
            onMouseOver(element, event);
            DOM.eventCancelBubble(event, true);
            DOM.eventPreventDefault(event);
            return;
        }
    }
    }

    super.onBrowserEvent(event);
}

From source file:com.bradrydzewski.gwt.calendar.client.InteractiveWidget.java

License:Open Source License

@Override
public void onBrowserEvent(Event event) {
    int eventType = DOM.eventGetType(event);
    Element element = DOM.eventGetTarget(event);

    switch (eventType) {
    case Event.ONDBLCLICK: {
        onDoubleClick(element, event);//w w w.  j av  a  2s.c o  m
        focusPanel.setFocus(true);
        break;
    }
    case Event.ONMOUSEDOWN: {
        if (DOM.eventGetCurrentTarget(event) == getElement()) {

            onMouseDown(element, event);
            focusPanel.setFocus(true);
            //Cancel events so Firefox / Chrome don't
            //give child widgets with scrollbars focus.
            //TODO: Should not cancel onMouseDown events in the event an appointment would have a child widget with a scrollbar (if this would ever even happen).
            DOM.eventCancelBubble(event, true);
            DOM.eventPreventDefault(event);
            return;
        }
    }
    case Event.ONMOUSEOVER: {
        if (DOM.eventGetCurrentTarget(event) == getElement()) {
            onMouseOver(element, event);
            DOM.eventCancelBubble(event, true);
            DOM.eventPreventDefault(event);
            return;
        }
    }
    }

    super.onBrowserEvent(event);
}

From source file:edu.nrao.dss.client.util.dssgwtcal.DayView.java

License:Open Source License

@Override
@SuppressWarnings("fallthrough")
public void onBrowserEvent(Event event) {
    int eventType = DOM.eventGetType(event);

    switch (eventType) {
    case Event.ONMOUSEDOWN: {
        if (DOM.eventGetCurrentTarget(event) == getElement()) {
            Element elem = DOM.eventGetTarget(event);
            Appointment appt = AppointmentUtil.checkAppointmentElementClicked(elem, appointments);
            if (appt != null) {
                // the selected appointment has been found - but should we fire events?
                setValue(appt);//from w w  w .ja  va 2  s  .  c  o  m
            }
            // Q: what does this do?
            focusPanel.setFocus(true);
            // Q: and what do these do?
            DOM.eventCancelBubble(event, true);
            DOM.eventPreventDefault(event);

            //break;
            return;
        }
    }
    }

    super.onBrowserEvent(event);
}

From source file:org.lightframe.components.client.ui.VWindowManager.java

License:Apache License

@Override
public void onBrowserEvent(Event event) {
    Element target = DOM.eventGetCurrentTarget(event);

    switch (event.getTypeInt()) {
    case Event.ONCLICK:
        minimizeWindow(target);/*from w w  w. j  a v a  2 s  .  c o m*/
        break;
    case Event.ONCONTEXTMENU:
        event.preventDefault();
        event.stopPropagation();
        closeWindow(getWindowBoxIndex(target));
        break;
    }
}

From source file:org.talend.mdm.webapp.browserecords.client.widget.treedetail.TreeEx.java

License:Open Source License

@Override
@SuppressWarnings("fallthrough")
public void onBrowserEvent(Event event) {
    int eventType = DOM.eventGetType(event);

    switch (eventType) {
    case Event.ONKEYDOWN: {
        // If nothing's selected, select the first item.
        if (curSelection == null) {
            if (root.getChildCount() > 0) {
                onSelection((TreeItemEx) root.getChild(0), true);
            }// w w w.  j a va 2  s  .  c om
            super.onBrowserEvent(event);
            return;
        }
    }

    // Intentional fallthrough.
    case Event.ONKEYPRESS:
    case Event.ONKEYUP:
        // Issue 1890: Do not block history navigation via alt+left/right
        if (DOM.eventGetAltKey(event) || DOM.eventGetMetaKey(event)) {
            super.onBrowserEvent(event);
            return;
        }
        break;
    }

    switch (eventType) {

    case Event.ONMOUSEDOWN: {
        if ((DOM.eventGetCurrentTarget(event) == getElement()) && (event.getButton() == Event.BUTTON_LEFT)) {
            elementClicked(DOM.eventGetTarget(event));
        }
        break;
    }
    }
    // We must call super for all handlers.
    super.onBrowserEvent(event);
}

From source file:org.waveprotocol.wave.client.common.util.EventWrapper.java

License:Apache License

/**
 * @return The event's current target element. This is the element
 * whose listener fired last, not the element which fired the event
 * initially.//from  ww  w .  j  a v a 2 s. co m
 */
public Element getCurrentTarget() {
    return DOM.eventGetCurrentTarget(event);
}