File tree Expand file tree Collapse file tree 1 file changed +32
-0
lines changed
src/main/kotlin/com/redhat/devtools/gateway/view Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Original file line number Diff line number Diff line change @@ -94,6 +94,38 @@ class DevSpacesWizardView(devSpacesContext: DevSpacesContext) : BorderLayoutPane
94
94
previousButton.text = previousActionText
95
95
onInit()
96
96
}
97
+
98
+ refreshNextButtonState()
99
+
100
+ // If this is the RemoteServerConnection step, watch for changes
101
+ val remoteStep = steps[currentStep]
102
+ if (remoteStep is DevSpacesRemoteServerConnectionStepView ) {
103
+ val listField = remoteStep.javaClass.getDeclaredField(" listDevWorkspaces" )
104
+ listField.isAccessible = true
105
+ val list = listField.get(remoteStep) as javax.swing.JList <* >
106
+
107
+ list.addListSelectionListener {
108
+ refreshNextButtonState()
109
+ }
110
+ }
111
+ }
112
+
113
+ private fun refreshNextButtonState () {
114
+ val step = steps[currentStep]
115
+ nextButton.isEnabled = when (step) {
116
+ is DevSpacesRemoteServerConnectionStepView -> {
117
+ val listField = step.javaClass.getDeclaredField(" listDevWorkspaces" )
118
+ listField.isAccessible = true
119
+ val list = listField.get(step) as javax.swing.JList <* >
120
+ // Enable if text does NOT match, OR list is NOT empty
121
+ step.nextActionText == com.redhat.devtools.gateway.DevSpacesBundle
122
+ .message(" connector.wizard_step.remote_server_connection.button.next" ) &&
123
+ ! list.isSelectionEmpty
124
+ }
125
+ else -> {
126
+ true
127
+ }
128
+ }
97
129
}
98
130
99
131
private fun isFirstStep (): Boolean {
You can’t perform that action at this time.
0 commit comments