gwt button onclick keyboard onkeydown

GWT: Al presionar KEY_ENTER, quiero habilitar el método onclick del botón



button keyboard (2)

Mi objetivo es activar el método onClick (..) de los botones si presiono la tecla Entrar (KEY_ENTER) en el teclado. Para este propósito estoy intentando el siguiente código pero recibo una excepción que dice:

com.google.gwt.event.shared.UmbrellaException: excepción capturada: com.google.gwt.user.client.ui.Button no se puede convertir a com.google.gwt.event.dom.client.ClickHandler

Código:

returnKeyHandler = new KeyDownHandler() { @Override public void onKeyDown(KeyDownEvent event) { if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) { Window.alert("Enter key pressed!!"); ((ClickHandler) button).onClick(null); } } }; Button button = new Button(); button.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { Window.alert("blah blah"); //blah blah.. } }); TextBox textBox = new TextBox(); textBox.addKeyDownHandler(returnKeyHandler);

Puedo entender la excepción pero no puedo encontrar la solución.


¿Qué tal crear una nueva función llamada say doXYZ () y tener la funcionalidad para ser implementada por el botón ClickHandler así como también en KeyPressHandler en esta función y luego invocar este método doXYZ () desde ambos lugares?