Fix Android extensions import rename

#KT-17890 Fixed
This commit is contained in:
Vyacheslav Gerasimov
2017-07-04 21:34:11 +03:00
parent ee53e81e8e
commit f59859842a
4 changed files with 38 additions and 19 deletions
@@ -79,8 +79,12 @@ class KtSimpleNameReference(expression: KtSimpleNameExpression) : KtSimpleRefere
}
override fun isReferenceTo(element: PsiElement?): Boolean {
if (element != null && !canBeReferenceTo(element)) {
return false
if (element != null) {
if (!canBeReferenceTo(element)) return false
for (extension in Extensions.getArea(element.project).getExtensionPoint(SimpleNameReferenceExtension.EP_NAME).extensions) {
if (extension.isReferenceTo(this, element)) return true
}
}
return super.isReferenceTo(element)
@@ -27,5 +27,7 @@ interface SimpleNameReferenceExtension {
ExtensionPointName.create("org.jetbrains.kotlin.simpleNameReferenceExtension")
}
fun isReferenceTo(reference: KtSimpleNameReference, element: PsiElement): Boolean
fun handleElementRename(reference: KtSimpleNameReference, psiFactory: KtPsiFactory, newElementName: String): PsiElement?
}