@Override
public void onBrowserEvent(Context context, final Element parent, final GlusterGeoRepSessionConfiguration configInRow, NativeEvent event, ValueUpdater<GlusterGeoRepSessionConfiguration> valueUpdater) {
final List<String> allowedValuesList = configInRow.getAllowedValues();
boolean isValuesConstrained =
isValueConstrained(allowedValuesList);
if (isValuesConstrained) {
delegate.onBrowserEvent(context, parent, configInRow.getValue(), event, value -> {
SelectElement select = parent.getFirstChild().cast();
int selectedIndex = select.getSelectedIndex();
configInRow.setValue(allowedValuesList.get(selectedIndex));
});
} else {
textInputCell.onBrowserEvent(context, parent, configInRow.getValue(), event, value -> {
if (value != null) {
configInRow.setValue(value);
}
});
}
}