Smart completion: fixed lookup string for anonymous object item

This commit is contained in:
Valentin Kipyatkov
2014-10-28 20:58:28 +03:00
parent e256d14075
commit 836b4aa0f0
3 changed files with 16 additions and 1 deletions
@@ -70,6 +70,7 @@ class TypeInstantiationItems(val resolveSession: ResolveSessionForBodies, val bi
var lookupElement = createLookupElement(classifier, resolveSession, bindingContext)
var lookupString = lookupElement.getLookupString()
var allLookupStrings = setOf(lookupString)
val typeArgs = jetType.getArguments()
var itemText = lookupString + DescriptorRenderer.SHORT_NAMES_IN_TYPES.renderTypeArguments(typeArgs)
@@ -80,7 +81,8 @@ class TypeInstantiationItems(val resolveSession: ResolveSessionForBodies, val bi
val constructorParenthesis = if (classifier.getKind() != ClassKind.TRAIT) "()" else ""
itemText += constructorParenthesis
itemText = "object: " + itemText + "{...}"
lookupString = "object" //?
lookupString = "object"
allLookupStrings = setOf(lookupString, lookupElement.getLookupString())
insertHandler = InsertHandler<LookupElement> {(context, item) ->
val editor = context.getEditor()
val startOffset = context.getStartOffset()
@@ -127,6 +129,8 @@ class TypeInstantiationItems(val resolveSession: ResolveSessionForBodies, val bi
lookupElement = object: LookupElementDecorator<LookupElement>(lookupElement) {
override fun getLookupString() = lookupString
override fun getAllLookupStrings() = allLookupStrings
override fun renderElement(presentation: LookupElementPresentation) {
getDelegate().renderElement(presentation)
presentation.setItemText(itemText)