@@ -24,8 +24,6 @@ export default class RustSearchOmnibox {
24
24
// All dynamic setting items. Those items will been updated
25
25
// in chrome.storage.onchange listener callback.
26
26
let isOfflineMode = await settings . isOfflineMode ;
27
- let defaultSearch = await settings . defaultSearch ;
28
- let crateRegistry = await settings . crateRegistry ;
29
27
30
28
function formatDoc ( index , doc ) {
31
29
let content = doc . href ;
@@ -58,10 +56,10 @@ export default class RustSearchOmnibox {
58
56
return stdSearcher . search ( query ) ;
59
57
} ,
60
58
onFormat : formatDoc ,
61
- onAppend : ( query ) => {
59
+ onAppend : async ( query ) => {
62
60
return [ {
63
61
content : stdSearcher . getSearchUrl ( query ) ,
64
- description : `Search Rust docs <match>${ query } </match> on ${ isOfflineMode ? "offline mode" : stdSearcher . getRootPath ( ) } ` ,
62
+ description : `Search Rust docs <match>${ query } </match> on ${ await settings . isOfflineMode ? "offline mode" : stdSearcher . getRootPath ( ) } ` ,
65
63
} ] ;
66
64
} ,
67
65
} ;
@@ -124,8 +122,8 @@ export default class RustSearchOmnibox {
124
122
125
123
omnibox . addPrefixQueryEvent ( "~" , {
126
124
name : "External docs" ,
127
- isDefaultSearch : ( ) => {
128
- return defaultSearch . thirdPartyDocs ;
125
+ isDefaultSearch : async ( ) => {
126
+ return ( await settings . defaultSearch ) . thirdPartyDocs ;
129
127
} ,
130
128
searchPriority : 1 ,
131
129
onSearch : async ( query ) => {
@@ -165,8 +163,8 @@ export default class RustSearchOmnibox {
165
163
166
164
omnibox . addPrefixQueryEvent ( "!" , {
167
165
name : "docs.rs" ,
168
- isDefaultSearch : ( ) => {
169
- return defaultSearch . docsRs ;
166
+ isDefaultSearch : async ( ) => {
167
+ return ( await settings . defaultSearch ) . docsRs ;
170
168
} ,
171
169
searchPriority : 2 ,
172
170
onSearch : ( query ) => {
@@ -192,13 +190,15 @@ export default class RustSearchOmnibox {
192
190
onSearch : ( query ) => {
193
191
return crateSearcher . search ( query ) ;
194
192
} ,
195
- onFormat : ( index , crate ) => {
193
+ onFormat : async ( index , crate ) => {
194
+ let crateRegistry = await settings . crateRegistry ;
196
195
return {
197
196
content : `https://${ crateRegistry } /crates/${ crate . id } ` ,
198
197
description : `${ Compat . capitalize ( crateRegistry ) } : <match>${ crate . id } </match> v${ crate . version } - <dim>${ Compat . escape ( Compat . eliminateTags ( crate . description ) ) } </dim>` ,
199
198
} ;
200
199
} ,
201
- onAppend : ( query ) => {
200
+ onAppend : async ( query ) => {
201
+ let crateRegistry = await settings . crateRegistry ;
202
202
let keyword = query . replace ( / [ ! \s ] / g, "" ) ;
203
203
return wrapCrateSearchAppendix ( {
204
204
content : `https://${ crateRegistry } /search?q=` + encodeURIComponent ( keyword ) ,
@@ -229,8 +229,8 @@ export default class RustSearchOmnibox {
229
229
230
230
omnibox . addPrefixQueryEvent ( "#" , {
231
231
name : "Attributes" ,
232
- isDefaultSearch : ( ) => {
233
- return defaultSearch . attributes ;
232
+ isDefaultSearch : async ( ) => {
233
+ return ( await settings . defaultSearch ) . attributes ;
234
234
} ,
235
235
searchPriority : 3 ,
236
236
onSearch : ( query ) => {
0 commit comments