diff --git a/plugins/terminal/resources/META-INF/terminal.xml b/plugins/terminal/resources/META-INF/terminal.xml
index ead2b99092aa..c1709ef1b05a 100644
--- a/plugins/terminal/resources/META-INF/terminal.xml
+++ b/plugins/terminal/resources/META-INF/terminal.xml
@@ -35,6 +35,8 @@
description="Whether to show the GotIt tooltip with a proposal to try the New Terminal"/>
+
diff --git a/plugins/terminal/src/org/jetbrains/plugins/terminal/LocalBlockTerminalRunner.kt b/plugins/terminal/src/org/jetbrains/plugins/terminal/LocalBlockTerminalRunner.kt
index d1764160b005..8afd691b4005 100644
--- a/plugins/terminal/src/org/jetbrains/plugins/terminal/LocalBlockTerminalRunner.kt
+++ b/plugins/terminal/src/org/jetbrains/plugins/terminal/LocalBlockTerminalRunner.kt
@@ -44,6 +44,7 @@ open class LocalBlockTerminalRunner(project: Project) : LocalTerminalDirectRunne
const val BLOCK_TERMINAL_POWERSHELL_WIN11_REGISTRY: String = "terminal.new.ui.powershell.win11"
const val BLOCK_TERMINAL_POWERSHELL_WIN10_REGISTRY: String = "terminal.new.ui.powershell.win10"
const val BLOCK_TERMINAL_POWERSHELL_UNIX_REGISTRY: String = "terminal.new.ui.powershell.unix"
+ const val BLOCK_TERMINAL_AUTOCOMPLETION: String = "terminal.new.ui.autocompletion"
private const val BLOCK_TERMINAL_SHOW_PROMOTION: String = "terminal.new.ui.show.promotion"
}
}
diff --git a/plugins/terminal/src/org/jetbrains/plugins/terminal/block/completion/TerminalCommandSpecCompletionContributor.kt b/plugins/terminal/src/org/jetbrains/plugins/terminal/block/completion/TerminalCommandSpecCompletionContributor.kt
index b8e825eb2004..1a49db44df09 100644
--- a/plugins/terminal/src/org/jetbrains/plugins/terminal/block/completion/TerminalCommandSpecCompletionContributor.kt
+++ b/plugins/terminal/src/org/jetbrains/plugins/terminal/block/completion/TerminalCommandSpecCompletionContributor.kt
@@ -8,6 +8,7 @@ import com.intellij.openapi.progress.runBlockingCancellable
import com.intellij.openapi.project.DumbAware
import com.intellij.openapi.project.Project
import com.intellij.openapi.util.TextRange
+import com.intellij.openapi.util.registry.Registry
import com.intellij.openapi.util.text.StringUtil
import com.intellij.platform.diagnostic.telemetry.Scope
import com.intellij.platform.diagnostic.telemetry.TelemetryManager
@@ -18,6 +19,7 @@ import com.intellij.terminal.completion.ShellDataGeneratorsExecutor
import com.intellij.terminal.completion.ShellRuntimeContextProvider
import com.intellij.terminal.completion.spec.ShellCompletionSuggestion
import com.intellij.terminal.completion.spec.ShellSuggestionType
+import org.jetbrains.plugins.terminal.LocalBlockTerminalRunner.Companion.BLOCK_TERMINAL_AUTOCOMPLETION
import org.jetbrains.plugins.terminal.action.TerminalCommandCompletionAction
import org.jetbrains.plugins.terminal.block.completion.TerminalCompletionUtil.findIconForSuggestion
import org.jetbrains.plugins.terminal.block.completion.TerminalCompletionUtil.getNextSuggestionsString
@@ -49,6 +51,11 @@ internal class TerminalCommandSpecCompletionContributor : CompletionContributor(
return
}
+ if (parameters.isAutoPopup && !Registry.`is`(BLOCK_TERMINAL_AUTOCOMPLETION)) {
+ result.stopHere()
+ return
+ }
+
if (parameters.editor.getUserData(TerminalCommandCompletionAction.SUPPRESS_COMPLETION) == true) {
result.stopHere()
return
diff --git a/plugins/terminal/src/org/jetbrains/plugins/terminal/block/completion/powershell/PowerShellCompletionContributor.kt b/plugins/terminal/src/org/jetbrains/plugins/terminal/block/completion/powershell/PowerShellCompletionContributor.kt
index bb24826c66a8..1b4abb2f3b2f 100644
--- a/plugins/terminal/src/org/jetbrains/plugins/terminal/block/completion/powershell/PowerShellCompletionContributor.kt
+++ b/plugins/terminal/src/org/jetbrains/plugins/terminal/block/completion/powershell/PowerShellCompletionContributor.kt
@@ -10,7 +10,9 @@ import com.intellij.openapi.diagnostic.logger
import com.intellij.openapi.progress.runBlockingCancellable
import com.intellij.openapi.project.DumbAware
import com.intellij.openapi.util.TextRange
+import com.intellij.openapi.util.registry.Registry
import com.intellij.util.DocumentUtil
+import org.jetbrains.plugins.terminal.LocalBlockTerminalRunner.Companion.BLOCK_TERMINAL_AUTOCOMPLETION
import org.jetbrains.plugins.terminal.TerminalIcons
import org.jetbrains.plugins.terminal.block.completion.spec.impl.ShellDataGeneratorsExecutorImpl
import org.jetbrains.plugins.terminal.block.completion.spec.impl.ShellRuntimeContextProviderImpl
@@ -33,6 +35,11 @@ internal class PowerShellCompletionContributor : CompletionContributor(), DumbAw
return
}
+ if (parameters.isAutoPopup && !Registry.`is`(BLOCK_TERMINAL_AUTOCOMPLETION)) {
+ result.stopHere()
+ return
+ }
+
// stop even if we can't suggest something to not execute contributors from the ShellScript plugin
result.stopHere()
if (session.shellIntegration.shellType != ShellType.POWERSHELL) {