From 1f9377e67e3119cb57d9349a427e987d88e392d9 Mon Sep 17 00:00:00 2001 From: Joonas Lehtinen Date: Wed, 21 May 2008 12:20:56 +0000 Subject: [PATCH] Fixes #1699 (i hope) svn changeset:4595/svn branch:trunk --- src/com/itmill/toolkit/ui/AbstractField.java | 14 ++++++++------ src/com/itmill/toolkit/ui/Select.java | 5 ----- 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/src/com/itmill/toolkit/ui/AbstractField.java b/src/com/itmill/toolkit/ui/AbstractField.java index fb251d70b6..c2e7cef57b 100644 --- a/src/com/itmill/toolkit/ui/AbstractField.java +++ b/src/com/itmill/toolkit/ui/AbstractField.java @@ -56,7 +56,7 @@ public abstract class AbstractField extends AbstractComponent implements Field, private boolean delayedFocus; /** - * Value of the datafield. + * Value of the abstract field. */ private Object value; @@ -863,9 +863,7 @@ public abstract class AbstractField extends AbstractComponent implements Field, public void changeVariables(Object source, Map variables) { super.changeVariables(source, variables); - if (validators != null && !validators.isEmpty()) { - requestRepaint(); - } + } /** @@ -938,14 +936,18 @@ public abstract class AbstractField extends AbstractComponent implements Field, /** * Sets the internal field value. This is purely used by AbstractField to - * change the internal Field value. It does not trigger any events. It can - * be overriden by the inheriting classes to update all dependent variables. + * change the internal Field value. It does not trigger valuechange events. + * It can be overriden by the inheriting classes to update all dependent + * variables. * * @param newValue * the new value to be set. */ protected void setInternalValue(Object newValue) { value = newValue; + if (validators != null && !validators.isEmpty()) { + requestRepaint(); + } } /** diff --git a/src/com/itmill/toolkit/ui/Select.java b/src/com/itmill/toolkit/ui/Select.java index eaeffdc746..5b33aadd5c 100644 --- a/src/com/itmill/toolkit/ui/Select.java +++ b/src/com/itmill/toolkit/ui/Select.java @@ -322,11 +322,6 @@ public class Select extends AbstractSelect implements AbstractSelect.Filtering { */ public void changeVariables(Object source, Map variables) { - // TODO We really should call super instead, but this needs validating that AbstractSelect.changeVariables is correct. See ticket # - if (isReadThrough() || !isModified() || (getValidators() != null && !getValidators().isEmpty())) { - fireValueChange(false); - } - // Selection change if (variables.containsKey("selected")) { final String[] ka = (String[]) variables.get("selected"); -- 2.39.5