mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[Inlay Text Hints] isEnabledAndVisible = false, when inline hints disabled
This commit is contained in:
@@ -17,37 +17,17 @@ package com.intellij.reporting
|
||||
|
||||
import com.intellij.codeInsight.daemon.impl.ParameterHintsPresentationManager
|
||||
import com.intellij.codeInsight.hint.HintManager
|
||||
import com.intellij.openapi.actionSystem.*
|
||||
import com.intellij.openapi.actionSystem.AnAction
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent
|
||||
import com.intellij.openapi.actionSystem.CommonDataKeys
|
||||
import com.intellij.openapi.application.ApplicationManager
|
||||
import com.intellij.openapi.application.PathManager
|
||||
import com.intellij.openapi.components.ApplicationComponent
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import com.intellij.openapi.editor.Inlay
|
||||
import com.intellij.openapi.util.TextRange
|
||||
import com.intellij.openapi.util.registry.Registry
|
||||
import java.io.File
|
||||
|
||||
|
||||
class InlineHintReporterRegistration : ApplicationComponent {
|
||||
|
||||
override fun getComponentName() = "Inline Hints Reporter Initializer"
|
||||
|
||||
override fun initComponent() {
|
||||
if (!isHintsEnabled()) return
|
||||
|
||||
val manager = ActionManager.getInstance()
|
||||
val action = ReportMissingOrExcessiveInlineHint()
|
||||
manager.registerAction("ReportMissingOrExcessiveInlineHint", action)
|
||||
|
||||
val group = manager.getAction("EditorPopupMenu") as DefaultActionGroup
|
||||
group.add(action)
|
||||
}
|
||||
|
||||
override fun disposeComponent() {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class ReportMissingOrExcessiveInlineHint : AnAction() {
|
||||
|
||||
private val text = "Report Missing or Excessive Inline Hint"
|
||||
@@ -63,12 +43,14 @@ class ReportMissingOrExcessiveInlineHint : AnAction() {
|
||||
private val file = File(PathManager.getTempPath(), recorderId)
|
||||
|
||||
override fun update(e: AnActionEvent) {
|
||||
e.presentation.isEnabledAndVisible = false
|
||||
|
||||
if (!isHintsEnabled()) return
|
||||
val editor = CommonDataKeys.EDITOR.getData(e.dataContext) ?: return
|
||||
|
||||
val range = getCurrentLineRange(editor)
|
||||
if (editor.getInlays(range).isNotEmpty()) {
|
||||
e.presentation.isEnabled = true
|
||||
e.presentation.isEnabledAndVisible = true
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -51,9 +51,6 @@
|
||||
<component>
|
||||
<implementation-class>com.intellij.util.xml.impl.JavaDomApplicationComponent</implementation-class>
|
||||
</component>
|
||||
<component>
|
||||
<implementation-class>com.intellij.reporting.InlineHintReporterRegistration</implementation-class>
|
||||
</component>
|
||||
</application-components>
|
||||
|
||||
<project-components>
|
||||
@@ -1790,6 +1787,9 @@
|
||||
<action id="ShowRecentTests" class="com.intellij.testIntegration.ShowRecentTests">
|
||||
<keyboard-shortcut first-keystroke="control shift SEMICOLON" keymap="$default"/>
|
||||
</action>
|
||||
<action id="ReportMissingOrExcessiveInlineHint" class="com.intellij.reporting.ReportMissingOrExcessiveInlineHint">
|
||||
<add-to-group group-id="EditorPopupMenu"/>
|
||||
</action>
|
||||
<action class="com.intellij.execution.testDiscovery.ConfigureTestDiscoveryAction" internal="true" id="TestDiscoveryIndexChooser" text="Choose external test discovery indices">
|
||||
<add-to-group group-id="Internal" anchor="last"/>
|
||||
</action>
|
||||
|
||||
Reference in New Issue
Block a user