test connection before dismissing LoginDialog

This commit is contained in:
Drew Weymouth
2023-02-14 17:52:53 -08:00
parent 69a008951e
commit e5a1c4df49
2 changed files with 28 additions and 6 deletions
+9 -2
View File
@@ -103,8 +103,15 @@ func (m Controller) PromptForLoginAndConnect() {
d := dialogs.NewLoginDialog(m.App.Config.Servers)
pop := widget.NewModalPopUp(d, m.MainWindow.Canvas())
d.OnSubmit = func(server *backend.ServerConfig, password string) {
pop.Hide()
m.trySetPasswordAndConnectToServer(server, password)
err := m.App.ServerManager.TestConnectionAndAuth(server.Hostname, server.Username, password)
if err == backend.ErrUnreachable {
d.SetErrorText("Server unreachable")
} else if err != nil {
d.SetErrorText("Authentication failed")
} else {
pop.Hide()
m.trySetPasswordAndConnectToServer(server, password)
}
}
d.OnEditServer = func(server *backend.ServerConfig) {
pop.Hide()