Я сталкивался с этим несколько раз и не могу найти ничего всеобъемлющего. Я хочу знать полный список всех действительных событий DOM для GWT.
Документы GWT для NativeEvent говорят:
public final java.lang.String getType()
Gets the enumerated type of this event.
Returns:
the event's enumerated type
Где это перечисление? Это действительно существует? Используемый фактический код (который я обнаружил), который явно говорит, что эти события всегда используют строки: "click", "contextmenu", "mouseup", "dblclick" и т. Д. (И т. Д., Охватывает очень много капризов ...)
Я пытаюсь реализовать как Двойной щелчок, так и Правый щелчок для ячеек в CellTable ala этот пост . Я передаю супер ("click", "contextmenu", "mouseup", "dblclick"); в конструкторе моего расширения AbstractCell. Затем я переопределил onBrowserEvent:
@Override
public void onBrowserEvent(Context context, Element parent, ImageProperties<T> value,
NativeEvent event, ValueUpdater<ImageProperties<T>> valueUpdater) {
if (event.getButton() == NativeEvent.BUTTON_RIGHT) {
event.stopPropagation();
event.preventDefault();
eventBus.fireEvent(new RightClickEvent<Context>(context, event));
} else {
super.onBrowserEvent(context, parent, value, event, valueUpdater);
}
}
Однако я сталкиваюсь с двумя проблемами. Во-первых, contextMenu по умолчанию все еще отображается (поверх моего пользовательского) - не говоря уже о том, что он даже не использует тип события DOM. Другая проблема, как я могу проверить, является ли событие двойным щелчком? Мне трудно поверить, что это буквально произвольный набор строк ...
Заранее спасибо!
John