summaryrefslogtreecommitdiffstats
path: root/server/src/com/vaadin
diff options
context:
space:
mode:
authorArtur Signell <artur@vaadin.com>2012-12-18 11:22:28 +0200
committerArtur Signell <artur@vaadin.com>2012-12-18 11:43:36 +0200
commit1f4c5f8ee28ba7ce6b5a3c490ff5cf70849f1807 (patch)
tree5b1a6a86d9448cd1327a41e06f1228117c47dcb7 /server/src/com/vaadin
parent510435d377a50dcb73f9367ab4f783d408310456 (diff)
downloadvaadin-framework-1f4c5f8ee28ba7ce6b5a3c490ff5cf70849f1807.tar.gz
vaadin-framework-1f4c5f8ee28ba7ce6b5a3c490ff5cf70849f1807.zip
Do not update data model when locale changes (#10562, #8192)
Change-Id: I84e00c9e73d69bb398a8e9cc2c6bdb7fa60d3907
Diffstat (limited to 'server/src/com/vaadin')
-rw-r--r--server/src/com/vaadin/ui/AbstractField.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/server/src/com/vaadin/ui/AbstractField.java b/server/src/com/vaadin/ui/AbstractField.java
index 9cf72a36b3..4b1476db32 100644
--- a/server/src/com/vaadin/ui/AbstractField.java
+++ b/server/src/com/vaadin/ui/AbstractField.java
@@ -1348,8 +1348,12 @@ public abstract class AbstractField<T> extends AbstractComponent implements
&& !isBuffered() && !isModified()) {
// When we have a data source and the internal value is directly
// read from that we want to update the value
- Object modelValue = convertToModel(getInternalValue(), valueLocale);
- setValue(convertFromModel(modelValue));
+ T newInternalValue = convertFromModel(getPropertyDataSource()
+ .getValue());
+ if (!equals(newInternalValue, getInternalValue())) {
+ setInternalValue(newInternalValue);
+ fireValueChange(false);
+ }
}
}