diff --git a/idea/resources/META-INF/plugin-common.xml b/idea/resources/META-INF/plugin-common.xml
index 12690a1199e..508810dcd94 100644
--- a/idea/resources/META-INF/plugin-common.xml
+++ b/idea/resources/META-INF/plugin-common.xml
@@ -3,6 +3,9 @@
org.jetbrains.kotlin.idea.highlighter.KotlinBeforeResolveHighlightingPass$Factory
+
+ org.jetbrains.kotlin.idea.parameterInfo.custom.KotlinCodeHintsPass$Companion$Factory
+
org.jetbrains.kotlin.idea.refactoring.cutPaste.MoveDeclarationsPassFactory
@@ -26,6 +29,9 @@
org.jetbrains.kotlin.idea.configuration.KotlinMigrationProjectComponent
+
+ org.jetbrains.kotlin.idea.parameterInfo.custom.KotlinCodeHintsModel
+
@@ -378,6 +384,7 @@
+
@@ -1694,6 +1701,10 @@
Kotlin
+
+ org.jetbrains.kotlin.idea.parameterInfo.custom.DisableReturnLambdaHintOptionAction
+
+
org.jetbrains.kotlin.idea.intentions.AddUnderscoresToNumericLiteralIntention
Kotlin
diff --git a/idea/src/org/jetbrains/kotlin/idea/parameterInfo/KotlinInlayParameterHintsProvider.kt b/idea/src/org/jetbrains/kotlin/idea/parameterInfo/KotlinInlayParameterHintsProvider.kt
index 328745c47d9..3a7540d4674 100644
--- a/idea/src/org/jetbrains/kotlin/idea/parameterInfo/KotlinInlayParameterHintsProvider.kt
+++ b/idea/src/org/jetbrains/kotlin/idea/parameterInfo/KotlinInlayParameterHintsProvider.kt
@@ -24,7 +24,7 @@ import org.jetbrains.kotlin.psi.psiUtil.getStrictParentOfType
import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameOrNull
import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameSafe
-enum class HintType(desc: String, enabled: Boolean) {
+enum class HintType(val desc: String, defaultEnabled: Boolean) {
PROPERTY_HINT("Show property type hints", false) {
override fun provideHints(elem: PsiElement): List {
@@ -86,9 +86,11 @@ enum class HintType(desc: String, enabled: Boolean) {
elem is KtExpression && elem !is KtFunctionLiteral && !elem.isNameReferenceInCall()
override fun provideHints(elem: PsiElement): List {
- if (elem is KtExpression) {
- return provideLambdaReturnValueHints(elem)
- }
+ // Will be painted with ReturnHintLinePainter
+
+ // Enable/Disable setting will be present in the list with other hints.
+ // Enable action will be provided by the platform.
+ // Disable action need to be reimplemented as hints are not actually added, see DisableReturnLambdaHintOptionAction.
return emptyList()
}
@@ -133,11 +135,12 @@ enum class HintType(desc: String, enabled: Boolean) {
abstract fun isApplicable(elem: PsiElement): Boolean
abstract fun provideHints(elem: PsiElement): List
- val option = Option("SHOW_${this.name}", desc, enabled)
+ val option = Option("SHOW_${this.name}", desc, defaultEnabled)
val enabled
get() = option.get()
}
+@Suppress("UnstableApiUsage")
class KotlinInlayParameterHintsProvider : InlayParameterHintsProvider {
override fun getSupportedOptions(): List