Skip to content

Commit 85c5cc8

Browse files
authored
Fix connected execution terminal name in 222 (#3178)
1 parent 1d0749f commit 85c5cc8

File tree

4 files changed

+33
-4
lines changed

4 files changed

+33
-4
lines changed
Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,15 @@
1-
// Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
1+
// Copyright 2022 Amazon.com, Inc. or its affiliates. All Rights Reserved.
22
// SPDX-License-Identifier: Apache-2.0
33

44
package software.aws.toolkits.jetbrains.core.terminal
55

66
import com.intellij.openapi.project.Project
77
import org.jetbrains.plugins.terminal.LocalTerminalDirectRunner
88

9-
class AwsLocalTerminalRunner(project: Project, private val applyConnection: (MutableMap<String, String>) -> Unit) : LocalTerminalDirectRunner(project) {
9+
class AwsLocalTerminalRunner(
10+
project: Project,
11+
private val termName: String,
12+
private val applyConnection: (MutableMap<String, String>) -> Unit
13+
) : LocalTerminalDirectRunner(project) {
1014
override fun getInitialCommand(envs: MutableMap<String, String>): MutableList<String> = super.getInitialCommand(envs.apply(applyConnection))
1115
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
// Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
package software.aws.toolkits.jetbrains.core.terminal
5+
6+
import com.intellij.openapi.Disposable
7+
import com.intellij.openapi.project.Project
8+
import com.intellij.terminal.JBTerminalWidget
9+
import org.jetbrains.plugins.terminal.LocalTerminalDirectRunner
10+
11+
class AwsLocalTerminalRunner(
12+
project: Project,
13+
private val termName: String,
14+
private val applyConnection: (MutableMap<String, String>) -> Unit
15+
) : LocalTerminalDirectRunner(project) {
16+
override fun getInitialCommand(envs: MutableMap<String, String>): MutableList<String> = super.getInitialCommand(envs.apply(applyConnection))
17+
override fun createTerminalWidget(parent: Disposable, currentWorkingDirectory: String?, deferSessionStartUntilUiShown: Boolean): JBTerminalWidget {
18+
val widget = super.createTerminalWidget(parent, currentWorkingDirectory, deferSessionStartUntilUiShown)
19+
return widget.apply {
20+
terminalTitle.change {
21+
tag = termName
22+
}
23+
}
24+
}
25+
}

jetbrains-core/src/software/aws/toolkits/jetbrains/core/terminal/OpenAwsLocalTerminal.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ class OpenAwsLocalTerminal : DumbAwareAction(
5555
return@executeOnPooledThread
5656
}
5757
runInEdt {
58-
val runner = AwsLocalTerminalRunner(project) { envs ->
58+
val runner = AwsLocalTerminalRunner(project, connection.shortName) { envs ->
5959
connection.region.mergeWithExistingEnvironmentVariables(envs, replace = true)
6060
when (val identifier = connection.credentials.identifier) {
6161
is ProfileCredentialsIdentifier -> envs[ProfileFileSystemSetting.AWS_PROFILE.environmentVariable()] = identifier.profileName

ui-tests/tst/software/aws/toolkits/jetbrains/uitests/tests/OpenAwsLocalTerminalTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ class OpenAwsLocalTerminalTest {
4646
findText(Predicate { it.text.startsWith("AWS: ") }).text.substringAfter("AWS: ")
4747
}
4848
step("confirm terminal tab showing with connection $connection") {
49-
findByXpath("//div[@accessiblename='$connection' and @class='ContentTabLabel' and @text='$connection']")
49+
findByXpath("//div[@class='ContentTabLabel' and contains(@text,'$connection')]")
5050
}
5151
val terminal = step("find terminal window") {
5252
findByXpath("//div[@class='ShellTerminalWidget' and @name='terminal']")

0 commit comments

Comments
 (0)