summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--compatibility-client/src/main/java/com/vaadin/v7/client/ui/VFilterSelect.java3
-rw-r--r--uitest/src/test/java/com/vaadin/tests/components/combobox/ComboBoxSelectingWithNewItemsAllowedTest.java12
2 files changed, 13 insertions, 2 deletions
diff --git a/compatibility-client/src/main/java/com/vaadin/v7/client/ui/VFilterSelect.java b/compatibility-client/src/main/java/com/vaadin/v7/client/ui/VFilterSelect.java
index 0b7724f3d0..29e4aa006f 100644
--- a/compatibility-client/src/main/java/com/vaadin/v7/client/ui/VFilterSelect.java
+++ b/compatibility-client/src/main/java/com/vaadin/v7/client/ui/VFilterSelect.java
@@ -2381,6 +2381,9 @@ public class VFilterSelect extends Composite
focused = false;
if (!readonly) {
+ if (textInputEnabled && allowNewItem) {
+ suggestionPopup.menu.doSelectedItemAction();
+ }
if (selectedOptionKey == null) {
if (explicitSelectedCaption != null) {
setPromptingOff(explicitSelectedCaption);
diff --git a/uitest/src/test/java/com/vaadin/tests/components/combobox/ComboBoxSelectingWithNewItemsAllowedTest.java b/uitest/src/test/java/com/vaadin/tests/components/combobox/ComboBoxSelectingWithNewItemsAllowedTest.java
index b568ecf912..c16a80856b 100644
--- a/uitest/src/test/java/com/vaadin/tests/components/combobox/ComboBoxSelectingWithNewItemsAllowedTest.java
+++ b/uitest/src/test/java/com/vaadin/tests/components/combobox/ComboBoxSelectingWithNewItemsAllowedTest.java
@@ -65,6 +65,14 @@ public class ComboBoxSelectingWithNewItemsAllowedTest extends MultiBrowserTest {
}
@Test
+ public void itemIsAddedWhenClickingOutside() {
+ clearInputAndType("foo");
+ findElement(By.tagName("body")).click();
+ assertOneMoreThanInitial();
+ assertThatSelectedValueIs("foo");
+ }
+
+ @Test
public void matchingSuggestionIsSelectedWithEnter() {
typeInputAndHitEnter("a0");
@@ -122,14 +130,14 @@ public class ComboBoxSelectingWithNewItemsAllowedTest extends MultiBrowserTest {
}
@Test
- public void noSelectionAfterMouseOut() {
+ public void selectionOnMouseOut() {
typeInputAndHitEnter("a20");
comboBoxElement.sendKeys(Keys.ARROW_DOWN, Keys.ARROW_DOWN);
findElement(By.className("v-app")).click();
assertInitialItemCount();
- assertThatSelectedValueIs("a20");
+ assertThatSelectedValueIs("a21");
}
@Test