@@ -33,10 +33,10 @@ public MainWindow()
3333 timer . Tick += Timer_Tick ;
3434 }
3535 #region Tools
36- private void InitializeGameRepo ( string repoPath )
36+ private async Task InitializeGameRepoAsync ( string repoPath )
3737 {
3838 Resources [ "gameRepo" ] = FileHelper . InitializeRepo ( repoPath ) ;
39- IconHelper . GetIcons ( GetRepo ( ) ) ;
39+ await IconHelper . GetIcons ( GetRepo ( ) ) ;
4040 EnableGlobalButtons ( true ) ;
4141 }
4242 private Repo GetRepo ( )
@@ -146,11 +146,11 @@ private async Task SyncGameSaveAsync()
146146 syncButton . IsEnabled = true ;
147147 }
148148 #endregion
149- private void RescanButton_Click ( object sender , RoutedEventArgs e )
149+ private async void RescanButton_Click ( object sender , RoutedEventArgs e )
150150 {
151151 EnableGlobalButtons ( false ) ;
152152 FileHelper . ScanGames ( GetRepo ( ) ) ;
153- IconHelper . GetIcons ( GetRepo ( ) ) ;
153+ await IconHelper . GetIcons ( GetRepo ( ) ) ;
154154 EnableGlobalButtons ( true ) ;
155155 }
156156
@@ -276,7 +276,7 @@ private async void SyncButton_Click(object sender, RoutedEventArgs e)
276276 }
277277
278278
279- private void RepoButton_Click ( object sender , RoutedEventArgs e )
279+ private async void RepoButton_Click ( object sender , RoutedEventArgs e )
280280 {
281281 OpenFolderDialog openFolderDialog = new ( )
282282 {
@@ -292,8 +292,8 @@ private void RepoButton_Click(object sender, RoutedEventArgs e)
292292 gameStorageWindow . Close ( ) ;
293293 gameStorageWindow = null ;
294294 }
295- InitializeGameRepo ( openFolderDialog . FolderName ) ;
296- SaveAndSync ( false ) . Wait ( ) ;
295+ await InitializeGameRepoAsync ( openFolderDialog . FolderName ) ;
296+ await SaveAndSync ( false ) ;
297297 // Save repo path to settings
298298 Settings . Default . Repo = openFolderDialog . FolderName ;
299299 Settings . Default . Save ( ) ;
@@ -308,7 +308,7 @@ private async void Window_IsVisibleChanged(object sender, DependencyPropertyChan
308308 string repoPath = Settings . Default . Repo ;
309309 if ( ! string . IsNullOrWhiteSpace ( repoPath ) && Directory . Exists ( repoPath ) )
310310 {
311- InitializeGameRepo ( repoPath ) ;
311+ await InitializeGameRepoAsync ( repoPath ) ;
312312 // Local may be missing, pull remote changes first
313313 if ( await WebDAVHelper . InitializeClient ( ) )
314314 {
@@ -319,7 +319,7 @@ private async void Window_IsVisibleChanged(object sender, DependencyPropertyChan
319319 Growl . Warning ( Strings . WebDAVInitFailed ) ;
320320 }
321321 }
322- GetIconButton_Click ( this , new ( ) ) ;
322+ await UpdateIconsAsync ( ) ;
323323 firstLaunch = false ;
324324 }
325325 if ( IsVisible == true )
@@ -337,10 +337,15 @@ private void IgnoreGameItem_Click(object sender, RoutedEventArgs e)
337337 FileHelper . AddGameIgnore ( repo , GetCurrentGame ( ) ) ;
338338 repo . Remove ( GetCurrentGame ( ) ) ;
339339 }
340- private void GetIconButton_Click ( object sender , RoutedEventArgs e )
340+ private async void GetIconButton_Click ( object sender , RoutedEventArgs e )
341+ {
342+ await UpdateIconsAsync ( ) ;
343+ }
344+
345+ private async Task UpdateIconsAsync ( )
341346 {
342347 gameList . IsEnabled = false ;
343- IconHelper . GetIcons ( GetRepo ( ) ) ;
348+ await IconHelper . GetIcons ( GetRepo ( ) ) ;
344349 gameList . IsEnabled = true ;
345350 }
346351
0 commit comments