diff --git a/idea/src/org/jetbrains/kotlin/idea/navigationToolbar/KotlinNavBarModelExtension.kt b/idea/src/org/jetbrains/kotlin/idea/navigationToolbar/KotlinNavBarModelExtension.kt index f4ecd6ccbd2..a63bdfe8006 100644 --- a/idea/src/org/jetbrains/kotlin/idea/navigationToolbar/KotlinNavBarModelExtension.kt +++ b/idea/src/org/jetbrains/kotlin/idea/navigationToolbar/KotlinNavBarModelExtension.kt @@ -7,7 +7,6 @@ package org.jetbrains.kotlin.idea.navigationToolbar import com.intellij.ide.navigationToolbar.AbstractNavBarModelExtension import com.intellij.psi.PsiElement -import org.jetbrains.kotlin.asJava.toLightClass import org.jetbrains.kotlin.idea.KotlinIconProvider import org.jetbrains.kotlin.psi.KtClassOrObject import org.jetbrains.kotlin.psi.KtFile diff --git a/idea/src/org/jetbrains/kotlin/idea/navigationToolbar/KotlinNavBarModelExtension.kt.201 b/idea/src/org/jetbrains/kotlin/idea/navigationToolbar/KotlinNavBarModelExtension.kt.201 new file mode 100644 index 00000000000..5b2d93adbe2 --- /dev/null +++ b/idea/src/org/jetbrains/kotlin/idea/navigationToolbar/KotlinNavBarModelExtension.kt.201 @@ -0,0 +1,27 @@ +/* + * Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.idea.navigationToolbar + +import com.intellij.ide.navigationToolbar.AbstractNavBarModelExtension +import com.intellij.psi.PsiElement +import org.jetbrains.kotlin.idea.KotlinIconProvider +import org.jetbrains.kotlin.psi.KtClassOrObject +import org.jetbrains.kotlin.psi.KtFile + +class KotlinNavBarModelExtension : AbstractNavBarModelExtension() { + override fun getPresentableText(item: Any?): String? { + return when (item) { + is KtClassOrObject -> item.name ?: "unknown" + else -> null + } + } + + override fun adjustElement(psiElement: PsiElement): PsiElement? { + val containingFile = psiElement.containingFile as? KtFile ?: return psiElement + if (containingFile.isScript()) return psiElement + return KotlinIconProvider.getSingleClass(containingFile) ?: psiElement + } +}