77using Flow . Launcher . Plugin . OneNote . Search ;
88using Flow . Launcher . Plugin . OneNote . UI . Views ;
99using OneNoteApp = LinqToOneNote . OneNote ;
10+
1011namespace Flow . Launcher . Plugin . OneNote
1112{
1213#nullable disable
@@ -18,7 +19,6 @@ public class Main : IAsyncPlugin, IContextMenu, ISettingProvider, IDisposable
1819 private SearchManager searchManager ;
1920 private Settings settings ;
2021 private IconProvider iconProvider ;
21- private VisibilityChanged visibilityChanged ;
2222
2323 private static SemaphoreSlim semaphore ;
2424
@@ -28,17 +28,18 @@ public Task InitAsync(PluginInitContext context)
2828 this . context = context ;
2929 settings = context . API . LoadSettingJsonStorage < Settings > ( ) ;
3030
31- visibilityChanged = new VisibilityChanged ( context ) ;
3231 iconProvider = new IconProvider ( context , settings ) ;
3332 resultCreator = new ResultCreator ( context , settings , iconProvider ) ;
34- searchManager = new SearchManager ( context , settings , resultCreator , visibilityChanged ) ;
33+ searchManager = new SearchManager ( context , settings , resultCreator ) ;
3534 semaphore = new SemaphoreSlim ( 1 , 1 ) ;
3635
37- visibilityChanged . Subscribe ( static ( isVisible ) =>
36+ context . API . VisibilityChanged += ( _ , args ) =>
3837 {
39- if ( ! isVisible )
40- Task . Run ( OneNoteApp . ReleaseComObject ) ;
41- } ) ;
38+ if ( args . IsVisible )
39+ return ;
40+ Task . Run ( OneNoteApp . ReleaseComObject ) ;
41+ searchManager . RootCache . SetDirty ( ) ;
42+ } ;
4243 return Task . CompletedTask ;
4344 }
4445
@@ -84,7 +85,6 @@ public Control CreateSettingPanel()
8485
8586 public void Dispose ( )
8687 {
87- visibilityChanged . Dispose ( ) ;
8888 semaphore . Dispose ( ) ;
8989 OneNoteApp . ReleaseComObject ( ) ;
9090 }
0 commit comments