diff options
Diffstat (limited to 'toolkit/components/autocomplete/AutoCompleteSimpleSearch.sys.mjs')
-rw-r--r-- | toolkit/components/autocomplete/AutoCompleteSimpleSearch.sys.mjs | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/toolkit/components/autocomplete/AutoCompleteSimpleSearch.sys.mjs b/toolkit/components/autocomplete/AutoCompleteSimpleSearch.sys.mjs new file mode 100644 index 0000000000..b57d290cfb --- /dev/null +++ b/toolkit/components/autocomplete/AutoCompleteSimpleSearch.sys.mjs @@ -0,0 +1,45 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +/** + * See nsIAutoCompleteSimpleSearch + */ +export class AutoCompleteSimpleSearch { + constructor() { + this.classID = Components.ID("{dc185a77-ba88-4caa-8f16-465253f7599a}"); + this.QueryInterface = ChromeUtils.generateQI([ + "nsIAutoCompleteSimpleSearch", + ]); + + let initialState = Cc[ + "@mozilla.org/autocomplete/simple-result;1" + ].createInstance(Ci.nsIAutoCompleteSimpleResult); + initialState.setDefaultIndex(0); + initialState.setSearchResult(Ci.nsIAutoCompleteResult.RESULT_NOMATCH); + this.overrideNextResult(initialState); + } + + _result = null; + + /** + * See nsIAutoCompleteSimpleSearch + */ + overrideNextResult(result) { + this._result = result; + } + + /** + * See nsIAutoCompleteSearch + */ + startSearch(searchString, searchParam, previousResult, listener) { + let result = this._result; + result.setSearchString(searchString); + listener.onSearchResult(this, result); + } + + /** + * See nsIAutoCompleteSearch + */ + stopSearch() {} +} |