diff --git a/kotlin-eclipse-ui/plugin.xml b/kotlin-eclipse-ui/plugin.xml index a7e10d6d2..86e63e0ae 100644 --- a/kotlin-eclipse-ui/plugin.xml +++ b/kotlin-eclipse-ui/plugin.xml @@ -791,6 +791,10 @@ + + diff --git a/kotlin-eclipse-ui/src/org/jetbrains/kotlin/ui/editors/hover/KotlinDebugHover.kt b/kotlin-eclipse-ui/src/org/jetbrains/kotlin/ui/editors/hover/KotlinDebugHover.kt new file mode 100644 index 000000000..85278d4d9 --- /dev/null +++ b/kotlin-eclipse-ui/src/org/jetbrains/kotlin/ui/editors/hover/KotlinDebugHover.kt @@ -0,0 +1,27 @@ +package org.jetbrains.kotlin.ui.editors.hover + +import org.eclipse.jdt.internal.debug.core.model.JDILocalVariable +import org.eclipse.jdt.internal.debug.ui.ExpressionInformationControlCreator +import org.eclipse.jdt.internal.debug.ui.JavaDebugHover +import org.eclipse.jface.text.IInformationControlCreator +import org.jetbrains.kotlin.ui.editors.KotlinEditor + +class KotlinDebugHover(): JavaDebugHover(), KotlinEditorTextHover { + + override val hoverPriority: Int + get() = 1 + + private val fHoverControlCreator: IInformationControlCreator by lazy { + ExpressionInformationControlCreator() + } + + override fun isAvailable(hoverData: HoverData): Boolean = true + + override fun getHoverControlCreator(editor: KotlinEditor): IInformationControlCreator? = fHoverControlCreator + + override fun getHoverControlCreator(): IInformationControlCreator = fHoverControlCreator + + override fun getHoverInfo(hoverData: HoverData): JDILocalVariable? = + getHoverInfo2(hoverData.editor.javaEditor.viewer, hoverData.getRegion()) as? JDILocalVariable + +} \ No newline at end of file diff --git a/kotlin-eclipse-ui/src/org/jetbrains/kotlin/ui/editors/hover/KotlinJavadocTextHover.kt b/kotlin-eclipse-ui/src/org/jetbrains/kotlin/ui/editors/hover/KotlinJavadocTextHover.kt index b3f0f224e..bf63e7731 100644 --- a/kotlin-eclipse-ui/src/org/jetbrains/kotlin/ui/editors/hover/KotlinJavadocTextHover.kt +++ b/kotlin-eclipse-ui/src/org/jetbrains/kotlin/ui/editors/hover/KotlinJavadocTextHover.kt @@ -85,7 +85,7 @@ class KotlinJavadocTextHover : KotlinEditorTextHover { override val hoverPriority: Int - get() = 1 + get() = 2 override fun getHoverInfo(hoverData: HoverData): Any? = hoverData.getRegion()?.let { region ->