diff options
author | Deepak Azad | 2012-04-23 06:28:50 +0000 |
---|---|---|
committer | Dani Megert | 2012-04-23 06:28:50 +0000 |
commit | b0dfba155489bb89ceb735d37809b3fa858c2220 (patch) | |
tree | cdb076705e6f8acc4467f261064aa1ce5dca258d | |
parent | 7471537879c56f83c4621f57bb29a96e53743f50 (diff) | |
download | eclipse.platform.text-b0dfba155489bb89ceb735d37809b3fa858c2220.tar.gz eclipse.platform.text-b0dfba155489bb89ceb735d37809b3fa858c2220.tar.xz eclipse.platform.text-b0dfba155489bb89ceb735d37809b3fa858c2220.zip |
Fixed bug 377302: [painting] Enclosing brackets highlighting throws IAEv20120423-0628I20120425-1600I20120425-1200I20120425-0800I20120424-1700I20120424-1600I20120424-0800
in MatchingCharacterPainter.draw(..)
-rw-r--r-- | org.eclipse.jface.text/src/org/eclipse/jface/text/source/MatchingCharacterPainter.java | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/org.eclipse.jface.text/src/org/eclipse/jface/text/source/MatchingCharacterPainter.java b/org.eclipse.jface.text/src/org/eclipse/jface/text/source/MatchingCharacterPainter.java index 3fb9c565780..5cc1925c044 100644 --- a/org.eclipse.jface.text/src/org/eclipse/jface/text/source/MatchingCharacterPainter.java +++ b/org.eclipse.jface.text/src/org/eclipse/jface/text/source/MatchingCharacterPainter.java @@ -20,7 +20,6 @@ import org.eclipse.swt.graphics.Point; import org.eclipse.swt.graphics.Rectangle; import org.eclipse.jface.text.BadLocationException; -import org.eclipse.jface.text.DocumentEvent; import org.eclipse.jface.text.IDocument; import org.eclipse.jface.text.IPaintPositionManager; import org.eclipse.jface.text.IPainter; @@ -431,7 +430,7 @@ public final class MatchingCharacterPainter implements IPainter, PaintListener { /** * Installs or uninstalls the text listener depending on the boolean parameter. * - * @param install <code>true</code> to install the text listener, <code>false</code> to uninstall + * @param install <code>true</code> to install the text listener, <code>false</code> to uninstall * * @since 3.8 */ @@ -484,20 +483,14 @@ public final class MatchingCharacterPainter implements IPainter, PaintListener { if (!fHighlightEnclosingPeerCharacters || !(fMatcher instanceof ICharacterPairMatcherExtension)) return; - String text= event.getText(); - String replacedText= event.getReplacedText(); - - boolean viewerRedrawState= event.getViewerRedrawState(); - DocumentEvent documentEvent= event.getDocumentEvent(); - if (documentEvent == null && !viewerRedrawState) + if (!event.getViewerRedrawState()) return; + String text= event.getText(); + String replacedText= event.getReplacedText(); ICharacterPairMatcherExtension matcher= (ICharacterPairMatcherExtension)fMatcher; - boolean found= searchForCharacters(text, matcher) || searchForCharacters(replacedText, matcher); - - if (found || (documentEvent == null && viewerRedrawState)) { + if (searchForCharacters(text, matcher) || searchForCharacters(replacedText, matcher)) paint(IPainter.INTERNAL); - } } /** |