You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

ComboBoxDuplicateCaption.java 1.5KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package com.vaadin.tests.components.combobox;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import com.vaadin.tests.components.TestBase;
  5. import com.vaadin.tests.util.Log;
  6. import com.vaadin.tests.util.Person;
  7. import com.vaadin.ui.Button;
  8. import com.vaadin.ui.ComboBox;
  9. public class ComboBoxDuplicateCaption extends TestBase {
  10. private Log log = new Log(5);
  11. @Override
  12. protected void setup() {
  13. List<Person> list = new ArrayList<>();
  14. Person p1 = new Person();
  15. p1.setFirstName("John");
  16. p1.setLastName("Doe");
  17. list.add(p1);
  18. Person p2 = new Person();
  19. p2.setFirstName("Jane");
  20. p2.setLastName("Doe");
  21. list.add(p2);
  22. ComboBox<Person> box = new ComboBox<>("Duplicate captions test Box");
  23. box.setId("ComboBox");
  24. box.addValueChangeListener(event -> {
  25. Person p = event.getValue();
  26. log.log("Person = " + p.getFirstName() + " " + p.getLastName());
  27. });
  28. box.setItems(list);
  29. box.setItemCaptionGenerator(Person::getLastName);
  30. addComponent(log);
  31. addComponent(box);
  32. addComponent(new Button("Focus this"));
  33. }
  34. @Override
  35. protected String getDescription() {
  36. return "ComboBoxes with duplicate item captions should not try to do a select (exact match search) for onBlur if not waitingForFilteringResponse";
  37. }
  38. @Override
  39. protected Integer getTicketNumber() {
  40. return 10766;
  41. }
  42. }