@@ -16,7 +16,6 @@ import com.ashotn.opencode.relay.settings.OpenCodeSettingsChangedListener
1616import com.ashotn.opencode.relay.terminal.ClassicTuiPanel
1717import com.ashotn.opencode.relay.terminal.ReworkedTuiPanel
1818import com.ashotn.opencode.relay.terminal.TuiPanel
19- import com.ashotn.opencode.relay.util.BuildUtils
2019import com.intellij.openapi.Disposable
2120import com.intellij.openapi.application.ApplicationManager
2221import com.intellij.openapi.project.Project
@@ -59,7 +58,7 @@ class OpenCodeToolWindowPanel(private val project: Project) : JPanel(BorderLayou
5958 private val outerCardPanel = JPanel (outerCardLayout)
6059 private val pendingFilesPanel = PendingFilesPanel (project, this )
6160 private var tuiPanel: TuiPanel = createTuiPanel()
62- private var activeTuiEngine: TerminalEngine = effectiveEngine( OpenCodeSettings .getInstance(project).terminalEngine)
61+ private var activeTuiEngine: TerminalEngine = OpenCodeSettings .getInstance(project).terminalEngine
6362 private val syncScheduled = AtomicBoolean (false )
6463 private val plugin = OpenCodePlugin .getInstance(project)
6564 private val serverStateListener = ServerStateListener { requestSyncCard() }
@@ -194,8 +193,8 @@ class OpenCodeToolWindowPanel(private val project: Project) : JPanel(BorderLayou
194193 * it into the split pane — all without requiring an IDE restart.
195194 */
196195 private fun swapTuiPanelIfEngineChanged () {
197- val effectiveEngine = effectiveEngine( OpenCodeSettings .getInstance(project).terminalEngine)
198- if (effectiveEngine == activeTuiEngine) return
196+ val configuredEngine = OpenCodeSettings .getInstance(project).terminalEngine
197+ if (configuredEngine == activeTuiEngine) return
199198
200199 // Stop and dispose the old panel.
201200 if (tuiPanel.isStarted) tuiPanel.stop()
@@ -207,7 +206,7 @@ class OpenCodeToolWindowPanel(private val project: Project) : JPanel(BorderLayou
207206 newPanel.component.minimumSize = JBUI .size(0 , 120 )
208207 splitPane.bottomComponent = newPanel.component
209208 tuiPanel = newPanel
210- activeTuiEngine = effectiveEngine
209+ activeTuiEngine = configuredEngine
211210 }
212211
213212 private fun buildContent () {
@@ -228,28 +227,17 @@ class OpenCodeToolWindowPanel(private val project: Project) : JPanel(BorderLayou
228227
229228 /* *
230229 * Creates the appropriate [TuiPanel] implementation for the currently configured
231- * [OpenCodeSettings.terminalEngine]. Falls back to [ClassicTuiPanel] when the
232- * reworked engine is requested but the IDE version does not support it.
230+ * [OpenCodeSettings.terminalEngine].
233231 */
234232 private fun createTuiPanel (): TuiPanel {
235233 val settings = OpenCodeSettings .getInstance(project)
236- return if (effectiveEngine( settings.terminalEngine) == TerminalEngine .REWORKED ) {
234+ return if (settings.terminalEngine == TerminalEngine .REWORKED ) {
237235 ReworkedTuiPanel (project, this , onTerminated = { requestSyncCard() })
238236 } else {
239237 ClassicTuiPanel (project, this , onTerminated = { requestSyncCard() })
240238 }
241239 }
242240
243- /* *
244- * Resolves the effective [TerminalEngine] to use, falling back to [TerminalEngine.CLASSIC]
245- * when [TerminalEngine.REWORKED] is requested but the IDE version does not support it.
246- */
247- private fun effectiveEngine (requested : TerminalEngine ): TerminalEngine =
248- if (requested == TerminalEngine .REWORKED && ! BuildUtils .isEmbeddedTerminalSupported) {
249- TerminalEngine .CLASSIC
250- } else {
251- requested
252- }
253241
254242 private var disposed = false
255243
0 commit comments