From e7fa0bec9a77f4544c33da7157ccc38557fffc52 Mon Sep 17 00:00:00 2001 From: Valentin Kipyatkov Date: Fri, 1 Apr 2016 17:38:56 +0300 Subject: [PATCH] Ctrl-Q and other PsiElement-based features to work for synthetic java properties #KT-11676 Fixed --- .../kotlin/idea/completion/BasicLookupElementFactory.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/BasicLookupElementFactory.kt b/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/BasicLookupElementFactory.kt index b844438e78b..93189d1aecc 100644 --- a/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/BasicLookupElementFactory.kt +++ b/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/BasicLookupElementFactory.kt @@ -140,7 +140,11 @@ class BasicLookupElementFactory( } val name = nameAndIconDescriptor.name.asString() - val lookupObject = object : DeclarationLookupObjectImpl(descriptor, declaration) { + val psiElement = declaration + ?: (descriptor as? SyntheticJavaPropertyDescriptor) + ?.getMethod + ?.let { DescriptorToSourceUtilsIde.getAnyDeclaration(project, it) } + val lookupObject = object : DeclarationLookupObjectImpl(descriptor, psiElement) { override fun getIcon(flags: Int) = KotlinDescriptorIconProvider.getIcon(nameAndIconDescriptor, iconDeclaration, flags) } var element = LookupElementBuilder.create(lookupObject, name)