summaryrefslogtreecommitdiffstats
path: root/compatibility-server
diff options
context:
space:
mode:
authorTeemu Suo-Anttila <teemusa@vaadin.com>2017-03-07 10:41:38 +0200
committerHenri Sara <henri.sara@gmail.com>2017-03-07 12:36:54 +0200
commit6e8e010356206559c58e2eff2330d5bdd05a3b3d (patch)
tree4f59864fda4d60f3341ff4d865f87d511cb4586a /compatibility-server
parent14c160e720d0c3b2ded071d8996fd3fed00ca0be (diff)
downloadvaadin-framework-6e8e010356206559c58e2eff2330d5bdd05a3b3d.tar.gz
vaadin-framework-6e8e010356206559c58e2eff2330d5bdd05a3b3d.zip
Revert multi select using state change
Diffstat (limited to 'compatibility-server')
-rw-r--r--compatibility-server/src/main/java/com/vaadin/v7/ui/AbstractSelect.java16
1 files changed, 12 insertions, 4 deletions
diff --git a/compatibility-server/src/main/java/com/vaadin/v7/ui/AbstractSelect.java b/compatibility-server/src/main/java/com/vaadin/v7/ui/AbstractSelect.java
index 0aeef24c68..b401c1b81b 100644
--- a/compatibility-server/src/main/java/com/vaadin/v7/ui/AbstractSelect.java
+++ b/compatibility-server/src/main/java/com/vaadin/v7/ui/AbstractSelect.java
@@ -221,6 +221,11 @@ public abstract class AbstractSelect extends AbstractField<Object> implements
}
/**
+ * Is the select in multiselect mode?
+ */
+ private boolean multiSelect = false;
+
+ /**
* Select options.
*/
protected Container items;
@@ -354,6 +359,9 @@ public abstract class AbstractSelect extends AbstractField<Object> implements
public void paintContent(PaintTarget target) throws PaintException {
// Paints select attributes
+ if (isMultiSelect()) {
+ target.addAttribute("selectmode", "multi");
+ }
if (isNewItemsAllowed()) {
target.addAttribute("allownewitem", true);
}
@@ -1097,7 +1105,7 @@ public abstract class AbstractSelect extends AbstractField<Object> implements
* @return the Value of property multiSelect.
*/
public boolean isMultiSelect() {
- return getState(false).multiSelect;
+ return multiSelect;
}
/**
@@ -1116,12 +1124,12 @@ public abstract class AbstractSelect extends AbstractField<Object> implements
throw new IllegalStateException(
"Multiselect and NullSelectionItemId can not be set at the same time.");
}
- if (multiSelect != getState(false).multiSelect) {
+ if (multiSelect != this.multiSelect) {
// Selection before mode change
final Object oldValue = getValue();
- getState().multiSelect = multiSelect;
+ this.multiSelect = multiSelect;
// Convert the value type
if (multiSelect) {
@@ -1789,7 +1797,7 @@ public abstract class AbstractSelect extends AbstractField<Object> implements
*/
@Override
public boolean isEmpty() {
- if (!isMultiSelect()) {
+ if (!multiSelect) {
return super.isEmpty();
} else {
Object value = getValue();