From c103126aeea84b4cacc5079f2272ac3237dc5e0e Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Fri, 4 Dec 2020 11:17:51 -0500 Subject: [PATCH] LP1929741 Combobox asyncSupportsEmptyTermClick fix Fixes situation where combobox would fetch the needed entries in async mode, but fail to open the drop-down after a click. Signed-off-by: Bill Erickson --- .../src/eg2/src/app/share/combobox/combobox.component.ts | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Open-ILS/src/eg2/src/app/share/combobox/combobox.component.ts b/Open-ILS/src/eg2/src/app/share/combobox/combobox.component.ts index d21ad5f916..db561f5f7e 100644 --- a/Open-ILS/src/eg2/src/app/share/combobox/combobox.component.ts +++ b/Open-ILS/src/eg2/src/app/share/combobox/combobox.component.ts @@ -442,12 +442,14 @@ export class ComboboxComponent implements ControlValueAccessor, OnInit, AfterVie return of(term); } - let searchTerm: string; - searchTerm = term; - if (searchTerm === '_CLICK_') { + let searchTerm = term; + if (term === '_CLICK_') { if (this.asyncSupportsEmptyTermClick) { + // Search for "all", but retain and propage the _CLICK_ + // term so the filter knows to open the selector searchTerm = ''; } else { + // Skip the final filter map and display nothing. return of(); } } @@ -457,7 +459,7 @@ export class ComboboxComponent implements ControlValueAccessor, OnInit, AfterVie (entry: ComboboxEntry) => this.addAsyncEntry(entry), err => {}, () => { - observer.next(searchTerm); + observer.next(term); observer.complete(); } ); @@ -487,10 +489,8 @@ export class ComboboxComponent implements ControlValueAccessor, OnInit, AfterVie // click action occurred. if (term === '') { return []; } - // In sync-data mode, a click displays the full list. - if (term === '_CLICK_' && !this.asyncDataSource) { - return this.entrylist; - } + // If we make it this far, _CLICK_ means show everything. + if (term === '_CLICK_') { term = ''; } // Filter entrylist whose labels substring-match the // text entered. -- 2.11.0