Может быть, это также интересно для других веб-разработчиков, использующих GWT, поэтому я так и сделал:
// Create a clickable cell.
Cell<C> cell = new ClickCell() {
@Override
public void render(Context context, C value, SafeHtmlBuilder sb) {
if (value != null) {
sb.appendEscaped(value.getName());
}
}
@Override
public void onBrowserEvent(Context context, Element parent, C value,
NativeEvent event, ValueUpdater<C> valueUpdater) {
super.onBrowserEvent(context, parent, value, event, valueUpdater);
if ("click".equals(event.getType())) {
onEnterKeyDown(context, parent, value, event, valueUpdater);
}
}
@Override
protected void onEnterKeyDown(Context context, Element parent, C value,
NativeEvent event, ValueUpdater<C> valueUpdater) {
if (valueUpdater != null) {
valueUpdater.update(value);
}
}
};
И это класс ClickCell, который расширяет класс AbstractCell:
public abstract class ClickCell extends AbstractCell<C> {
public ClickCell() {
super("click", "keydown");
}
}