Focus connection dialog on password when prompting for it (#1019)

This commit is contained in:
Matt Irvine
2018-03-28 13:56:10 -07:00
committed by GitHub
parent c484af0901
commit 93f9828d04

View File

@@ -283,11 +283,9 @@ export class ConnectionWidget {
}
private setConnectButton(): void {
let authDisplayName: string = this.getAuthTypeDisplayName(this.authenticationType);
let authType: AuthenticationType = this.getMatchingAuthType(authDisplayName);
let showUsernameAndPassword: boolean = true;
if (authType) {
showUsernameAndPassword = authType.showUsernameAndPassword;
if (this.authType) {
showUsernameAndPassword = this.authType.showUsernameAndPassword;
}
showUsernameAndPassword ? this._callbacks.onSetConnectButton(!!this.serverName && !!this.userName) :
this._callbacks.onSetConnectButton(!!this.serverName);
@@ -344,6 +342,7 @@ export class ConnectionWidget {
public focusOnOpen(): void {
this._serverNameInputBox.focus();
this.focusPasswordIfNeeded();
}
private getModelValue(value: string): string {
@@ -391,6 +390,7 @@ export class ConnectionWidget {
// 1. Authentication type is SQL Login and no username is provided
// 2. No server name is provided
this.setConnectButton();
this.focusPasswordIfNeeded();
}
}
@@ -555,6 +555,17 @@ export class ConnectionWidget {
public set databaseDropdownExpanded(val: boolean) {
this._databaseDropdownExpanded = val;
}
private get authType(): AuthenticationType {
let authDisplayName: string = this.getAuthTypeDisplayName(this.authenticationType);
return this.getMatchingAuthType(authDisplayName);
}
private focusPasswordIfNeeded(): void {
if (this.authType && this.authType.showUsernameAndPassword && this.userName && !this.password) {
this._passwordInputBox.focus();
}
}
}
class AuthenticationType {