3
3
using System . Diagnostics . CodeAnalysis ;
4
4
using System . IO ;
5
5
using System . Linq ;
6
+ using System . Reactive . Linq ;
6
7
using System . Threading ;
7
8
using System . Threading . Tasks ;
8
9
using AsyncAwaitBestPractices ;
@@ -164,6 +165,7 @@ ICompletionProvider completionProvider
164
165
)
165
166
. DeferUntilLoaded ( )
166
167
. Bind ( Models )
168
+ . ObserveOn ( SynchronizationContext . Current )
167
169
. Subscribe ( ) ;
168
170
169
171
controlNetModelsSource
@@ -176,6 +178,7 @@ ICompletionProvider completionProvider
176
178
)
177
179
. DeferUntilLoaded ( )
178
180
. Bind ( ControlNetModels )
181
+ . ObserveOn ( SynchronizationContext . Current )
179
182
. Subscribe ( ) ;
180
183
181
184
loraModelsSource
@@ -185,6 +188,7 @@ ICompletionProvider completionProvider
185
188
LoraModels ,
186
189
SortExpressionComparer < HybridModelFile > . Ascending ( f => f . Type ) . ThenByAscending ( f => f . SortKey )
187
190
)
191
+ . ObserveOn ( SynchronizationContext . Current )
188
192
. Subscribe ( ) ;
189
193
190
194
promptExpansionModelsSource
@@ -197,6 +201,7 @@ ICompletionProvider completionProvider
197
201
)
198
202
. DeferUntilLoaded ( )
199
203
. Bind ( PromptExpansionModels )
204
+ . ObserveOn ( SynchronizationContext . Current )
200
205
. Subscribe ( ) ;
201
206
202
207
ultralyticsModelsSource
@@ -209,6 +214,7 @@ ICompletionProvider completionProvider
209
214
)
210
215
. DeferUntilLoaded ( )
211
216
. Bind ( UltralyticsModels )
217
+ . ObserveOn ( SynchronizationContext . Current )
212
218
. Subscribe ( ) ;
213
219
214
220
samModelsSource
@@ -221,6 +227,7 @@ ICompletionProvider completionProvider
221
227
)
222
228
. DeferUntilLoaded ( )
223
229
. Bind ( SamModels )
230
+ . ObserveOn ( SynchronizationContext . Current )
224
231
. Subscribe ( ) ;
225
232
226
233
unetModelsSource
@@ -232,6 +239,7 @@ ICompletionProvider completionProvider
232
239
)
233
240
. DeferUntilLoaded ( )
234
241
. Bind ( UnetModels )
242
+ . ObserveOn ( SynchronizationContext . Current )
235
243
. Subscribe ( ) ;
236
244
237
245
clipModelsSource
@@ -244,25 +252,47 @@ ICompletionProvider completionProvider
244
252
)
245
253
. DeferUntilLoaded ( )
246
254
. Bind ( ClipModels )
255
+ . ObserveOn ( SynchronizationContext . Current )
247
256
. Subscribe ( ) ;
248
257
249
258
vaeModelsDefaults . AddOrUpdate ( HybridModelFile . Default ) ;
250
259
251
- vaeModelsDefaults . Connect ( ) . Or ( vaeModelsSource . Connect ( ) ) . Bind ( VaeModels ) . Subscribe ( ) ;
260
+ vaeModelsDefaults
261
+ . Connect ( )
262
+ . Or ( vaeModelsSource . Connect ( ) )
263
+ . Bind ( VaeModels )
264
+ . ObserveOn ( SynchronizationContext . Current )
265
+ . Subscribe ( ) ;
252
266
253
- samplersSource . Connect ( ) . DeferUntilLoaded ( ) . Bind ( Samplers ) . Subscribe ( ) ;
267
+ samplersSource
268
+ . Connect ( )
269
+ . DeferUntilLoaded ( )
270
+ . Bind ( Samplers )
271
+ . ObserveOn ( SynchronizationContext . Current )
272
+ . Subscribe ( ) ;
254
273
255
274
latentUpscalersSource
256
275
. Connect ( )
257
276
. Or ( modelUpscalersSource . Connect ( ) )
258
277
. Or ( downloadableUpscalersSource . Connect ( ) )
259
278
. Sort ( SortExpressionComparer < ComfyUpscaler > . Ascending ( f => f . Type ) . ThenByAscending ( f => f . Name ) )
260
279
. Bind ( Upscalers )
280
+ . ObserveOn ( SynchronizationContext . Current )
261
281
. Subscribe ( ) ;
262
282
263
- schedulersSource . Connect ( ) . DeferUntilLoaded ( ) . Bind ( Schedulers ) . Subscribe ( ) ;
283
+ schedulersSource
284
+ . Connect ( )
285
+ . DeferUntilLoaded ( )
286
+ . Bind ( Schedulers )
287
+ . ObserveOn ( SynchronizationContext . Current )
288
+ . Subscribe ( ) ;
264
289
265
- preprocessorsSource . Connect ( ) . DeferUntilLoaded ( ) . Bind ( Preprocessors ) . Subscribe ( ) ;
290
+ preprocessorsSource
291
+ . Connect ( )
292
+ . DeferUntilLoaded ( )
293
+ . Bind ( Preprocessors )
294
+ . ObserveOn ( SynchronizationContext . Current )
295
+ . Subscribe ( ) ;
266
296
267
297
settingsManager . RegisterOnLibraryDirSet ( _ =>
268
298
{
0 commit comments