mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
EA-26860
This commit is contained in:
+7
-4
@@ -19,8 +19,6 @@ package com.intellij.codeInsight.highlighting;
|
||||
import com.intellij.codeInsight.CodeInsightBundle;
|
||||
import com.intellij.codeInsight.TargetElementUtilBase;
|
||||
import com.intellij.find.EditorSearchComponent;
|
||||
import com.intellij.find.FindManager;
|
||||
import com.intellij.find.FindModel;
|
||||
import com.intellij.find.findUsages.PsiElement2UsageTargetAdapter;
|
||||
import com.intellij.injected.editor.EditorWindow;
|
||||
import com.intellij.lang.injection.InjectedLanguageManager;
|
||||
@@ -384,14 +382,19 @@ public class HighlightUsagesHandler extends HighlightHandlerBase {
|
||||
List<TextRange> answer = new ArrayList<TextRange>(relativeRanges.size());
|
||||
for (TextRange relativeRange : relativeRanges) {
|
||||
PsiElement element = ref.getElement();
|
||||
TextRange range = element.getTextRange().cutOut(relativeRange);
|
||||
TextRange range = safeCut(element.getTextRange(), relativeRange);
|
||||
// injection occurs
|
||||
answer.add(InjectedLanguageManager.getInstance(element.getProject()).injectedToHost(element, range));
|
||||
|
||||
}
|
||||
return answer;
|
||||
}
|
||||
|
||||
private static TextRange safeCut(TextRange range, TextRange relative) {
|
||||
int start = Math.min(range.getEndOffset(), range.getStartOffset() + relative.getStartOffset());
|
||||
int end = Math.min(range.getEndOffset(), range.getStartOffset() + relative.getEndOffset());
|
||||
return new TextRange(start, end);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static PsiElement getNameIdentifier(@NotNull PsiElement element) {
|
||||
if (element instanceof PsiNameIdentifierOwner) {
|
||||
|
||||
Reference in New Issue
Block a user