Highlight usages: highlight declaration/usage on call of function with lambda argument (KT-30824)

#KT-30824 Fixed
This commit is contained in:
Toshiaki Kameyama
2019-06-14 12:23:55 +09:00
committed by Nikolay Krasko
parent 26bef2d109
commit 6b36833ee2
@@ -64,7 +64,7 @@ class KotlinHighlightExitPointsHandlerFactory : HighlightUsagesHandlerFactoryBas
val lambda = call.lambdaArguments.singleOrNull() ?: return null
val literal = lambda.getLambdaExpression()?.functionLiteral ?: return null
return OnExitUsagesHandler(editor, file, literal)
return OnExitUsagesHandler(editor, file, literal, highlightReferences = true)
}
}
@@ -73,7 +73,7 @@ class KotlinHighlightExitPointsHandlerFactory : HighlightUsagesHandlerFactoryBas
?: getOnLambdaCallUsageHandler(editor, file, target)
}
private class OnExitUsagesHandler(editor: Editor, file: PsiFile, val target: KtExpression) :
private class OnExitUsagesHandler(editor: Editor, file: PsiFile, val target: KtExpression, val highlightReferences: Boolean = false) :
HighlightUsagesHandlerBase<PsiElement>(editor, file) {
override fun getTargets() = listOf(target)
@@ -140,6 +140,8 @@ class KotlinHighlightExitPointsHandlerFactory : HighlightUsagesHandlerFactoryBas
}
})
}
override fun highlightReferences() = highlightReferences
}
}