code: @Override
      public void onKeyDown(KeyDownEvent event) {
  	char c = MiscUtils.getCharCode(event.getNativeEvent());
  	onKeyCodeEvent(event, box.getValue()+c);
      }
docs: On key down we assume the key will go at the end. It's the most
  common case and not that distracting if that's not true.