diff options
-rw-r--r-- | server/src/main/java/com/vaadin/ui/NativeSelect.java | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/server/src/main/java/com/vaadin/ui/NativeSelect.java b/server/src/main/java/com/vaadin/ui/NativeSelect.java index e68dd4fad7..b376979678 100644 --- a/server/src/main/java/com/vaadin/ui/NativeSelect.java +++ b/server/src/main/java/com/vaadin/ui/NativeSelect.java @@ -51,8 +51,11 @@ public class NativeSelect<T> extends AbstractSingleSelect<T> */ public NativeSelect() { registerRpc(new FocusAndBlurServerRpcDecorator(this, this::fireEvent)); - addDataGenerator((item, json) -> json - .put(DataCommunicatorConstants.DATA, String.valueOf(item))); + addDataGenerator( + (item, json) -> json.put(DataCommunicatorConstants.DATA, + getItemCaptionGenerator().apply(item))); + + setItemCaptionGenerator(String::valueOf); } /** @@ -137,4 +140,15 @@ public class NativeSelect<T> extends AbstractSingleSelect<T> public void setDataProvider(DataProvider<T, ?> dataProvider) { internalSetDataProvider(dataProvider); } + + @Override + public void setItemCaptionGenerator( + ItemCaptionGenerator<T> itemCaptionGenerator) { + super.setItemCaptionGenerator(itemCaptionGenerator); + } + + @Override + public ItemCaptionGenerator<T> getItemCaptionGenerator() { + return super.getItemCaptionGenerator(); + } } |