Да, вы можете это сделать, для этого вам необходимо немного изменить код в MasterView, добавить новый метод:
@Subscribe
public void onReady(final ReadyEvent event) {
usersDataGrid.addSelectionListener(item -> {
Optional<User> firstSelectedItem = item.getFirstSelectedItem();
updateControls(firstSelectedItem.isPresent());
});
}
А также изменить следующий метод, чтобы он не блокировал экран, а скрывал:
private void updateControls(boolean editing) {
form.getChildren().forEach(component -> {
if (component instanceof HasValueAndElement<?, ?> field) {
field.setReadOnly(!editing);
}
});
detailsLayout.setVisible(editing);
detailActions.setVisible(editing);
}
С Уважением,
Никита