File tree Expand file tree Collapse file tree 1 file changed +11
-0
lines changed
src/main/java/com/flowingcode/vaadin/addons/chipfield Expand file tree Collapse file tree 1 file changed +11
-0
lines changed Original file line number Diff line number Diff line change 2323import java .util .Arrays ;
2424import java .util .Iterator ;
2525import java .util .List ;
26+ import java .util .Objects ;
2627import java .util .Optional ;
2728import java .util .concurrent .atomic .AtomicInteger ;
2829import java .util .stream .Stream ;
@@ -372,7 +373,11 @@ public Registration addChipCreatedListener(ComponentEventListener<ChipCreatedEve
372373 }
373374
374375 public void setChipLabelGenerator (ItemLabelGenerator <T > itemLabelGenerator ) {
376+ Objects .requireNonNull (itemLabelGenerator , "The item label generator can not be null" );
375377 this .itemLabelGenerator = itemLabelGenerator ;
378+
379+ configureItems ();
380+ refreshChipsLabel ();
376381 }
377382
378383 public void setNewItemHandler (SerializableFunction <String , T > handler ) {
@@ -444,4 +449,10 @@ private void removeSelectedItem(T itemToRemove, boolean fromClient) {
444449 public Registration addChipClickedListener (ComponentEventListener <ChipClickedEvent <T >> listener ) {
445450 return addListener (ChipClickedEvent .class , (ComponentEventListener ) listener );
446451 }
452+
453+ private void refreshChipsLabel () {
454+ String [] labels = getValue ().stream ().map (itemLabelGenerator ::apply ).toArray (String []::new );
455+ setClientChipWithoutEvent (labels );
456+ }
457+
447458}
You can’t perform that action at this time.
0 commit comments