From 6c52386839df4297198bc05451a1e485622592f9 Mon Sep 17 00:00:00 2001 From: alexp Date: Thu, 26 Apr 2012 21:16:12 +0400 Subject: [PATCH] 7124210: [macosx] Replacing text in a TextField does generate an extra TextEvent Reviewed-by: serb --- src/macosx/classes/sun/lwawt/LWTextAreaPeer.java | 9 +++++++++ src/macosx/classes/sun/lwawt/LWTextComponentPeer.java | 8 ++++---- src/macosx/classes/sun/lwawt/LWTextFieldPeer.java | 11 ++++++++++- 3 files changed, 23 insertions(+), 5 deletions(-) diff --git a/src/macosx/classes/sun/lwawt/LWTextAreaPeer.java b/src/macosx/classes/sun/lwawt/LWTextAreaPeer.java index e71ee173c..ebe97745d 100644 --- a/src/macosx/classes/sun/lwawt/LWTextAreaPeer.java +++ b/src/macosx/classes/sun/lwawt/LWTextAreaPeer.java @@ -210,6 +210,15 @@ final class LWTextAreaPeer super(); } + @Override + public void replaceSelection(String content) { + getDocument().removeDocumentListener(LWTextAreaPeer.this); + super.replaceSelection(content); + // post only one text event in this case + postTextEvent(); + getDocument().addDocumentListener(LWTextAreaPeer.this); + } + @Override public boolean hasFocus() { return getTarget().hasFocus(); diff --git a/src/macosx/classes/sun/lwawt/LWTextComponentPeer.java b/src/macosx/classes/sun/lwawt/LWTextComponentPeer.java index acc2e298b..5884b1192 100644 --- a/src/macosx/classes/sun/lwawt/LWTextComponentPeer.java +++ b/src/macosx/classes/sun/lwawt/LWTextComponentPeer.java @@ -187,7 +187,7 @@ abstract class LWTextComponentPeer