@Override public void onTouchEnd(TouchEndEvent event) { EventTarget eventTarget = event.getNativeEvent().getEventTarget(); if (eventTarget != null) { // no textnode or element node if (Node.is(eventTarget)) { if (Element.is(eventTarget)) { Element endTarget = eventTarget.cast(); if (endTarget == shadow && startTarget == shadow) { maybeHide(); } } } } startTarget = null; }
@Override public void onTouchEnd(TouchEndEvent event) { EventTarget eventTarget = event.getNativeEvent().getEventTarget(); if (eventTarget != null) { // no textnode or element node if (Node.is(eventTarget)) { if (Element.is(eventTarget)) { Element endTarget = eventTarget.cast(); if (endTarget == shadow && startTarget == shadow) { maybeHide(); } } } } startTarget = null; }
public void onTouchEnd(TouchEndEvent event) { if (touchStarted) { event.preventDefault(); event.stopPropagation(); NativeEvent nativeEvent = event.getNativeEvent(); NativeEvent evt = Document.get().createClickEvent(1, nativeEvent.getScreenX(), nativeEvent.getScreenY(), nativeEvent.getClientX(), nativeEvent.getClientY(), false, false, false, false); getElement().dispatchEvent(evt); touchStarted = false; fastClickAt = new Date(); } }
@Override public void onTouchEnd(TouchEndEvent event) { if (touchStarted) { event.preventDefault(); event.stopPropagation(); NativeEvent nativeEvent = event.getNativeEvent(); NativeEvent evt = Document.get().createClickEvent(1, nativeEvent.getScreenX(), nativeEvent.getScreenY(), nativeEvent.getClientX(), nativeEvent.getClientY(), false, false, false, false); getElement().dispatchEvent(evt); touchStarted = false; fastClickAt = new Date(); } }
private void synthesizeAsyncTouchEnd(TouchEndEvent event) { final Element elem = mouseDownWidget.getElement(); NativeEvent n = event.getNativeEvent(); // TODO extract these properties from the original event final boolean bubbles = true; final boolean cancelable = true; final int detail = 0; final boolean ctrlKey = n.getCtrlKey(); final boolean altKey = n.getAltKey(); final boolean shiftKey = n.getShiftKey(); final boolean metaKey = n.getMetaKey(); final JsArray<Touch> changedTouches = n.getChangedTouches(); Scheduler.get().scheduleDeferred(new ScheduledCommand() { @Override public void execute() { // TODO determine if we need to set additional event properties elem.dispatchEvent(DOMUtil.createTouchEndEvent(bubbles, cancelable, detail, ctrlKey, altKey, shiftKey, metaKey, changedTouches)); } }); }