diff --git a/idea/src/org/jetbrains/kotlin/idea/findUsages/handlers/KotlinFindUsagesHandler.java b/idea/src/org/jetbrains/kotlin/idea/findUsages/handlers/KotlinFindUsagesHandler.java index 14761483af2..fc38d063080 100644 --- a/idea/src/org/jetbrains/kotlin/idea/findUsages/handlers/KotlinFindUsagesHandler.java +++ b/idea/src/org/jetbrains/kotlin/idea/findUsages/handlers/KotlinFindUsagesHandler.java @@ -28,8 +28,10 @@ import com.intellij.util.Processor; import org.jetbrains.annotations.NotNull; import org.jetbrains.kotlin.idea.findUsages.KotlinFindUsagesHandlerFactory; +import java.util.ArrayList; import java.util.Collection; import java.util.Collections; +import java.util.List; public abstract class KotlinFindUsagesHandler extends FindUsagesHandler { private final KotlinFindUsagesHandlerFactory factory; @@ -115,4 +117,26 @@ public abstract class KotlinFindUsagesHandler extends Find protected abstract boolean searchReferences( @NotNull PsiElement element, @NotNull Processor processor, @NotNull FindUsagesOptions options ); + + @NotNull + @Override + public Collection findReferencesToHighlight(@NotNull PsiElement target, @NotNull SearchScope searchScope + ) { + final List results = new ArrayList(); + FindUsagesOptions options = getFindUsagesOptions(); + options.searchScope = searchScope; + searchReferences(target, + new Processor() { + @Override + public boolean process(UsageInfo info) { + PsiReference reference = info.getReference(); + if (reference != null) { + results.add(reference); + } + return true; + } + }, + options); + return results; + } }