From a7aec52f2a51ce51ad587a314bcfd81befda3949 Mon Sep 17 00:00:00 2001 From: hstyi Date: Mon, 14 Jul 2025 11:10:52 +0800 Subject: [PATCH] fix: password text field status --- plugins/ftp/build.gradle.kts | 2 +- .../kotlin/app/termora/plugins/ftp/FTPHostOptionsPane.kt | 9 ++++++++- .../termora/plugin/internal/rdp/RDPHostOptionsPane.kt | 7 +++++++ 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/plugins/ftp/build.gradle.kts b/plugins/ftp/build.gradle.kts index 04314a5..e7d8629 100644 --- a/plugins/ftp/build.gradle.kts +++ b/plugins/ftp/build.gradle.kts @@ -2,7 +2,7 @@ plugins { alias(libs.plugins.kotlin.jvm) } -project.version = "0.0.1" +project.version = "0.0.2" dependencies { testImplementation(kotlin("test")) diff --git a/plugins/ftp/src/main/kotlin/app/termora/plugins/ftp/FTPHostOptionsPane.kt b/plugins/ftp/src/main/kotlin/app/termora/plugins/ftp/FTPHostOptionsPane.kt index 89384fc..5f9bc20 100644 --- a/plugins/ftp/src/main/kotlin/app/termora/plugins/ftp/FTPHostOptionsPane.kt +++ b/plugins/ftp/src/main/kotlin/app/termora/plugins/ftp/FTPHostOptionsPane.kt @@ -14,6 +14,7 @@ import java.awt.Component import java.awt.KeyboardFocusManager import java.awt.event.ComponentAdapter import java.awt.event.ComponentEvent +import java.awt.event.ItemEvent import java.nio.charset.Charset import javax.swing.* @@ -246,6 +247,12 @@ class FTPHostOptionsPane : OptionsPane() { removeComponentListener(this) } }) + + authenticationTypeComboBox.addItemListener { + if (it.stateChange == ItemEvent.SELECTED) { + passwordTextField.isEnabled = authenticationTypeComboBox.selectedItem == AuthenticationType.Password + } + } } override fun getIcon(isSelected: Boolean): Icon { @@ -378,7 +385,7 @@ class FTPHostOptionsPane : OptionsPane() { } } - enum class PassiveMode { + enum class PassiveMode { Local, Remote, } diff --git a/src/main/kotlin/app/termora/plugin/internal/rdp/RDPHostOptionsPane.kt b/src/main/kotlin/app/termora/plugin/internal/rdp/RDPHostOptionsPane.kt index f8723da..030c3c1 100644 --- a/src/main/kotlin/app/termora/plugin/internal/rdp/RDPHostOptionsPane.kt +++ b/src/main/kotlin/app/termora/plugin/internal/rdp/RDPHostOptionsPane.kt @@ -14,6 +14,7 @@ import java.awt.KeyboardFocusManager import java.awt.Window import java.awt.event.ComponentAdapter import java.awt.event.ComponentEvent +import java.awt.event.ItemEvent import javax.swing.* internal open class RDPHostOptionsPane : OptionsPane() { @@ -223,6 +224,12 @@ internal open class RDPHostOptionsPane : OptionsPane() { removeComponentListener(this) } }) + + authenticationTypeComboBox.addItemListener { + if (it.stateChange == ItemEvent.SELECTED) { + passwordTextField.isEnabled = authenticationTypeComboBox.selectedItem == AuthenticationType.Password + } + } }