From 88ed7a62c0a521c2372390747f875bfc6ddf99ed Mon Sep 17 00:00:00 2001 From: anna Date: Fri, 21 Oct 2011 13:55:43 +0200 Subject: [PATCH] skip same variable reference highlights --- .../intellij/codeInsight/template/impl/TemplateState.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/codeInsight/template/impl/TemplateState.java b/platform/lang-impl/src/com/intellij/codeInsight/template/impl/TemplateState.java index ee3aec8c72b8..8694e189c9ed 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/template/impl/TemplateState.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/template/impl/TemplateState.java @@ -24,7 +24,6 @@ import com.intellij.codeInsight.completion.OffsetMap; import com.intellij.codeInsight.lookup.*; import com.intellij.codeInsight.lookup.impl.LookupImpl; import com.intellij.codeInsight.template.*; -import com.intellij.lang.ASTNode; import com.intellij.lang.LanguageLiteralEscapers; import com.intellij.lang.injection.InjectedLanguageManager; import com.intellij.openapi.Disposable; @@ -64,10 +63,8 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.awt.*; -import java.util.ArrayList; -import java.util.BitSet; +import java.util.*; import java.util.List; -import java.util.Map; public class TemplateState implements Disposable { private static final Logger LOG = Logger.getInstance("#com.intellij.codeInsight.template.impl.TemplateState"); @@ -920,8 +917,10 @@ public class TemplateState implements Disposable { } private void initTabStopHighlighters() { + final Set vars = new HashSet(); for (int i = 0; i < myTemplate.getVariableCount(); i++) { String variableName = myTemplate.getVariableNameAt(i); + if (!vars.add(variableName)) continue; int segmentNumber = myTemplate.getVariableSegmentNumber(variableName); if (segmentNumber < 0) continue; RangeHighlighter segmentHighlighter = getSegmentHighlighter(segmentNumber, false, false);