Здравствуйте,
Вы можете воспользоваться BlurListener
из Vaadin Framework:
public class ExtAppMainWindow extends AppMainWindow {
@Inject
private TextField textField;
@Override
public void init(Map<String, Object> params) {
super.init(params);
textField.unwrap(com.vaadin.ui.TextField.class).addBlurListener(event -> {
showNotification("Focus lost!");
});
}
}
В версии 7.0 мы планируем добавить в ValueChangeEvent
флаг userOriginated
, показывающий что событие вызвано действиями пользователя. По его значению можно будет понять, что какие-то события вызваны не вводом данных, а программным изменением: https://github.com/cuba-platform/cuba/issues/1162