diff options
author | Artur Signell <artur@vaadin.com> | 2011-12-20 12:46:57 +0200 |
---|---|---|
committer | Artur Signell <artur@vaadin.com> | 2011-12-20 12:46:57 +0200 |
commit | 46903711e7e1f9f47eca6665242a40a891df8bce (patch) | |
tree | b2fa19acff7fbbb320e005cec67a05e852c163ed /src/com/vaadin/ui/AbstractTextField.java | |
parent | 51b6dc7aaa8aa6f8b428993658971a1a26d70b42 (diff) | |
parent | 67629854f920d734ceab541d8b27202ef04f6043 (diff) | |
download | vaadin-framework-46903711e7e1f9f47eca6665242a40a891df8bce.tar.gz vaadin-framework-46903711e7e1f9f47eca6665242a40a891df8bce.zip |
Merge remote-tracking branch 'origin/6.8'
Diffstat (limited to 'src/com/vaadin/ui/AbstractTextField.java')
-rw-r--r-- | src/com/vaadin/ui/AbstractTextField.java | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/com/vaadin/ui/AbstractTextField.java b/src/com/vaadin/ui/AbstractTextField.java index e843cf43b4..a958b61c2f 100644 --- a/src/com/vaadin/ui/AbstractTextField.java +++ b/src/com/vaadin/ui/AbstractTextField.java @@ -70,6 +70,8 @@ public abstract class AbstractTextField extends AbstractField<String> implements */ private boolean textChangeEventPending; + private boolean isFiringTextChangeEvent = false; + private TextChangeEventMode textChangeEventMode = TextChangeEventMode.LAZY; private final int DEFAULT_TEXTCHANGE_TIMEOUT = 400; @@ -449,9 +451,14 @@ public abstract class AbstractTextField extends AbstractField<String> implements /* ** Text Change Events ** */ private void firePendingTextChangeEvent() { - if (textChangeEventPending) { + if (textChangeEventPending && !isFiringTextChangeEvent) { + isFiringTextChangeEvent = true; textChangeEventPending = false; - fireEvent(new TextChangeEventImpl(this)); + try { + fireEvent(new TextChangeEventImpl(this)); + } finally { + isFiringTextChangeEvent = false; + } } } @@ -494,11 +501,6 @@ public abstract class AbstractTextField extends AbstractField<String> implements firePendingTextChangeEvent(); } - /* - * Reset lastKnownTextContent field on value change. We know the value - * now. - */ - lastKnownTextContent = null; super.setInternalValue(newValue); } |