diff options
author | Matti Tahvonen <matti.tahvonen@itmill.com> | 2011-01-03 12:51:27 +0000 |
---|---|---|
committer | Matti Tahvonen <matti.tahvonen@itmill.com> | 2011-01-03 12:51:27 +0000 |
commit | 21b204b3bfe325222f69f016a1f9258dff2db17c (patch) | |
tree | dea03b0b7651c6345920dd3243b500792508081c /src/com/vaadin/ui/AbstractField.java | |
parent | c8486f33e116a91202f9cdc61a92b94ed01acf83 (diff) | |
download | vaadin-framework-21b204b3bfe325222f69f016a1f9258dff2db17c.tar.gz vaadin-framework-21b204b3bfe325222f69f016a1f9258dff2db17c.zip |
fixes #6002 and #6223
* value change events now not fired twice in some case, #6002
* value change event now never called on getValue(), #6002
* fixed a logic bug related to read buffering, #6223
svn changeset:16759/svn branch:6.5
Diffstat (limited to 'src/com/vaadin/ui/AbstractField.java')
-rw-r--r-- | src/com/vaadin/ui/AbstractField.java | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/src/com/vaadin/ui/AbstractField.java b/src/com/vaadin/ui/AbstractField.java index faa2dad5a1..d2824539fd 100644 --- a/src/com/vaadin/ui/AbstractField.java +++ b/src/com/vaadin/ui/AbstractField.java @@ -422,11 +422,6 @@ public abstract class AbstractField extends AbstractComponent implements Field, Object newValue = String.class == getType() ? dataSource.toString() : dataSource.getValue(); - if ((newValue == null && value != null) - || (newValue != null && !newValue.equals(value))) { - setInternalValue(newValue); - fireValueChange(false); - } return newValue; } @@ -985,7 +980,8 @@ public abstract class AbstractField extends AbstractComponent implements Field, */ public void valueChange(Property.ValueChangeEvent event) { if (!suppressValueChangePropagation - && (isReadThrough() || !isModified())) { + && (isReadThrough() && !isModified())) { + setInternalValue(event.getProperty().getValue()); fireValueChange(false); } } @@ -993,7 +989,6 @@ public abstract class AbstractField extends AbstractComponent implements Field, @Override public void changeVariables(Object source, Map<String, Object> variables) { super.changeVariables(source, variables); - } /** |