diff --git a/src/app/modules/data/list/search-page.html b/src/app/modules/data/list/search-page.html index 93c7362c..61793278 100644 --- a/src/app/modules/data/list/search-page.html +++ b/src/app/modules/data/list/search-page.html @@ -33,7 +33,7 @@ type="search" enterkeyhint="search" class="filterable" - autofocus + [autofocus]="!showDefaultData" > diff --git a/src/app/util/searchbar-autofocus.directive.ts b/src/app/util/searchbar-autofocus.directive.ts index f896948f..39ddae79 100644 --- a/src/app/util/searchbar-autofocus.directive.ts +++ b/src/app/util/searchbar-autofocus.directive.ts @@ -13,24 +13,24 @@ * this program. If not, see . */ -import {AfterViewInit, Directive, ElementRef} from '@angular/core'; +import {AfterViewInit, Directive, ElementRef, Input} from '@angular/core'; import {IonSearchbar} from '@ionic/angular'; @Directive({ selector: 'ion-searchbar[autofocus]', }) export class SearchbarAutofocusDirective implements AfterViewInit { + @Input() autofocus = true; + constructor(private element: ElementRef) {} ngAfterViewInit() { - const label = `focus`; - console.time(label); + if (!this.autofocus) return; const interval = setInterval(() => { const searchbar = this.element.nativeElement as IonSearchbar; - searchbar.setFocus(); + void searchbar.setFocus(); }); const onFocus = () => { - console.timeEnd(label); clearInterval(interval); this.element.nativeElement.removeEventListener('ionFocus', onFocus); };