From f03196d424e32269433109cd0f4f703ff8d1c2e2 Mon Sep 17 00:00:00 2001 From: Suzana Dirla Date: Thu, 6 Sep 2018 13:45:23 +0300 Subject: [PATCH] [ACA-1715] Search popup appears when navigating away from search results (#610) --- .../search-input-control.component.ts | 3 ++- .../search/search-input/search-input.component.html | 2 +- .../search/search-input/search-input.component.ts | 8 ++++++++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/app/components/search/search-input-control/search-input-control.component.ts b/src/app/components/search/search-input-control/search-input-control.component.ts index 992f66ef3..c42de3bca 100644 --- a/src/app/components/search/search-input-control/search-input-control.component.ts +++ b/src/app/components/search/search-input-control/search-input-control.component.ts @@ -117,13 +117,14 @@ export class SearchInputControlComponent implements OnInit, OnDestroy { subscriptAnimationState: string; noSearchResultTemplate: TemplateRef = null; skipToggle = false; + toggleDebounceTime = 200; private toggleSearch = new Subject(); private focusSubject = new Subject(); constructor(private thumbnailService: ThumbnailService) { - this.toggleSearch.asObservable().pipe(debounceTime(200)).subscribe(() => { + this.toggleSearch.asObservable().pipe(debounceTime(this.toggleDebounceTime)).subscribe(() => { if (this.expandable && !this.skipToggle) { this.subscriptAnimationState = this.subscriptAnimationState === 'inactive' ? 'active' : 'inactive'; diff --git a/src/app/components/search/search-input/search-input.component.html b/src/app/components/search/search-input/search-input.component.html index 3b2ba7f96..736673891 100644 --- a/src/app/components/search/search-input/search-input.component.html +++ b/src/app/components/search/search-input/search-input.component.html @@ -2,7 +2,7 @@ [highlight]="true" (optionClicked)="onItemClicked($event)" [expandable]="!onSearchResults" - [liveSearchEnabled]="!onSearchResults" + [liveSearchEnabled]="enableLiveSearch" (submit)="onSearchSubmit($event)" (searchChange)="onSearchChange($event)"> diff --git a/src/app/components/search/search-input/search-input.component.ts b/src/app/components/search/search-input/search-input.component.ts index 79d50ad43..f4045bd81 100644 --- a/src/app/components/search/search-input/search-input.component.ts +++ b/src/app/components/search/search-input/search-input.component.ts @@ -46,6 +46,7 @@ export class SearchInputComponent implements OnInit { hasOneChange = false; hasNewChange = false; navigationTimer: any; + enableLiveSearch = true; @ViewChild('searchInputControl') searchInputControl: SearchInputControlComponent; @@ -78,6 +79,7 @@ export class SearchInputComponent implements OnInit { } if (this.searchInputControl) { + this.enableLiveSearch = false; this.searchInputControl.searchTerm = searchedWord; this.searchInputControl.subscriptAnimationState = 'no-animation'; } @@ -88,6 +90,12 @@ export class SearchInputComponent implements OnInit { this.searchInputControl.searchTerm = ''; this.searchInputControl.toggleSearchBar(); } + + if (!this.enableLiveSearch) { + setTimeout(() => { + this.enableLiveSearch = true; + }, this.searchInputControl.toggleDebounceTime + 100); + } } }