]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/dashboard: Skip tab focus on "show/hide password" button
authorRicardo Marques <rimarques@suse.com>
Sat, 21 Jul 2018 11:10:14 +0000 (12:10 +0100)
committerRicardo Marques <rimarques@suse.com>
Wed, 25 Jul 2018 16:51:48 +0000 (17:51 +0100)
Signed-off-by: Ricardo Marques <rimarques@suse.com>
src/pybind/mgr/dashboard/frontend/src/app/shared/directives/password-button.directive.ts

index 3e152a3334ade807c5a9f671cc4e98f913db5ce0..abfbe3a671a73e5fcec7443e0d32acc20bdd8092 100644 (file)
@@ -8,10 +8,10 @@ export class PasswordButtonDirective implements OnInit {
 
   @Input('cdPasswordButton') private cdPasswordButton: string;
 
-  constructor(private elementRef: ElementRef,
-              private renderer: Renderer2) {}
+  constructor(private elementRef: ElementRef, private renderer: Renderer2) {}
 
   ngOnInit() {
+    this.renderer.setAttribute(this.elementRef.nativeElement, 'tabindex', '-1');
     this.iElement = this.renderer.createElement('i');
     this.renderer.addClass(this.iElement, 'icon-prepend');
     this.renderer.addClass(this.iElement, 'fa');
@@ -25,7 +25,7 @@ export class PasswordButtonDirective implements OnInit {
 
   private update() {
     const inputElement = this.getInputElement();
-    if (inputElement && (inputElement.type === 'text')) {
+    if (inputElement && inputElement.type === 'text') {
       this.renderer.removeClass(this.iElement, 'fa-eye');
       this.renderer.addClass(this.iElement, 'fa-eye-slash');
     } else {
@@ -38,7 +38,7 @@ export class PasswordButtonDirective implements OnInit {
   onClick() {
     const inputElement = this.getInputElement();
     // Modify the type of the input field.
-    inputElement.type = (inputElement.type === 'password') ? 'text' : 'password';
+    inputElement.type = inputElement.type === 'password' ? 'text' : 'password';
     // Update the button icon/tooltip.
     this.update();
   }