mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[terminal] IJPL-212254 Refactor: drop sessionId from the tabs builder
It was necessary for the case of restoring tabs on reconnection in RemDev. Now restored tabs are guaranteed to have no sessionId because there are no reconnects and `TerminalTabsManager` lives on the frontend. (cherry picked from commit 2a89ffa5c764fa2a6a4d2c01c84c24a43411167f) IJ-CR-214214 GitOrigin-RevId: a53bb87b90615de8642c845a53cd351c957f2fe8
This commit is contained in:
committed by
intellij-monorepo-bot
parent
3897fc9a63
commit
05c2f9fc3e
+3
-17
@@ -334,15 +334,9 @@ internal class TerminalToolWindowTabsManagerImpl(
|
||||
backendTabId: Int,
|
||||
calculateSizeFromComponent: Boolean,
|
||||
) = terminal.coroutineScope.launch {
|
||||
if (builder.sessionId != null) {
|
||||
// Session is already started for this tab, reuse it
|
||||
connectSessionToTerminal(terminal, builder.sessionId!!)
|
||||
}
|
||||
else {
|
||||
val options = prepareStartupOptions(terminal, builder, calculateSizeFromComponent)
|
||||
val sessionTab = TerminalTabsManager.getInstance(project).startTerminalSessionForTab(backendTabId, options)
|
||||
connectSessionToTerminal(terminal, sessionTab.sessionId!!)
|
||||
}
|
||||
val options = prepareStartupOptions(terminal, builder, calculateSizeFromComponent)
|
||||
val sessionTab = TerminalTabsManager.getInstance(project).startTerminalSessionForTab(backendTabId, options)
|
||||
connectSessionToTerminal(terminal, sessionTab.sessionId!!)
|
||||
}
|
||||
|
||||
private suspend fun prepareStartupOptions(
|
||||
@@ -445,7 +439,6 @@ internal class TerminalToolWindowTabsManagerImpl(
|
||||
tabName(tab.name)
|
||||
userDefinedName(tab.isUserDefinedName)
|
||||
backendTabId(tab.id)
|
||||
sessionId(tab.sessionId)
|
||||
requestFocus(false) // Otherwise it may trigger the tool window showing
|
||||
// Pass null as a trigger time because we don't need to track latency in this case.
|
||||
startupFusInfo(TerminalStartupFusInfo(TerminalTabOpeningWay.TABS_RESTORE, triggerTime = null))
|
||||
@@ -493,8 +486,6 @@ internal class TerminalToolWindowTabsManagerImpl(
|
||||
|
||||
var backendTabId: Int? = null
|
||||
private set
|
||||
var sessionId: TerminalSessionId? = null
|
||||
private set
|
||||
|
||||
override fun workingDirectory(directory: String?): TerminalToolWindowTabBuilder {
|
||||
workingDirectory = directory
|
||||
@@ -566,11 +557,6 @@ internal class TerminalToolWindowTabsManagerImpl(
|
||||
return this
|
||||
}
|
||||
|
||||
fun sessionId(id: TerminalSessionId?): TerminalToolWindowTabBuilder {
|
||||
sessionId = id
|
||||
return this
|
||||
}
|
||||
|
||||
override fun createTab(): TerminalToolWindowTab {
|
||||
return createTab(this)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user