[gnome-characters/bilelmoussaoui/gtk4] characters view: await on async search functions



commit 6e0ea009a6064e8fa9f7e877cd3cc8e3f3cce447
Author: Bilal Elmoussaoui <bil elmoussaoui gmail com>
Date:   Wed Nov 24 21:40:23 2021 +0100

    characters view: await on async search functions

 src/charactersView.js | 19 +++++++++----------
 1 file changed, 9 insertions(+), 10 deletions(-)
---
diff --git a/src/charactersView.js b/src/charactersView.js
index 79aa203..4df9072 100644
--- a/src/charactersView.js
+++ b/src/charactersView.js
@@ -444,39 +444,38 @@ var CharactersView = GObject.registerClass({
         });
     }
 
-    searchByCategory(category) {
+    async searchByCategory(category) {
         this._characters = [];
         // whether to draw a baseline or not
         this.baseline = category <= Gc.Category.LETTER_LATIN;
 
         if (category === Gc.Category.LETTER_LATIN) {
             if (!this._scriptsLoaded)
-                this.populateScripts(); // we run the search once the scripts are loaded
-            else
-                this._searchByScripts();
+                await this.populateScripts(); // we run the search once the scripts are loaded
+
+            await this._searchByScripts();
 
             return;
         }
 
         let criteria = Gc.SearchCriteria.new_category(category);
         this._searchContext = new Gc.SearchContext({ criteria });
-        this._searchWithContext(this._searchContext, this.initialSearchCount);
+        await this._searchWithContext(this._searchContext, this.initialSearchCount);
     }
 
-    searchByKeywords(keywords) {
+    async searchByKeywords(keywords) {
         const criteria = Gc.SearchCriteria.new_keywords(keywords);
         this._searchContext = new Gc.SearchContext({
             criteria,
             flags: Gc.SearchFlag.WORD,
         });
-        this._searchWithContext(this._searchContext, this.initialSearchCount);
-        return this._characters.length;
+        await this._searchWithContext(this._searchContext, this.initialSearchCount);
     }
 
-    _searchByScripts() {
+    async _searchByScripts() {
         var criteria = Gc.SearchCriteria.new_scripts(this.scripts);
         this._searchContext = new Gc.SearchContext({ criteria });
-        this._searchWithContext(this._searchContext, this.initialSearchCount);
+        await this._searchWithContext(this._searchContext, this.initialSearchCount);
     }
 
     cancelSearch() {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]