private void UpdatePlayButton()
        {
            Task.Run(async() =>
            {
                await Application.Current.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Background, new Action(() =>
                {
                    var selected = InstallationsList.SelectedItem as Installation;
                    if (selected == null)
                    {
                        PlayButtonText.SetResourceReference(TextBlock.TextProperty, "MainPage_PlayButton");
                        MainPlayButton.IsEnabled = false;
                        return;
                    }

                    if (ConfigManager.GameManager.IsDownloading || ConfigManager.GameManager.HasLaunchTask)
                    {
                        if (ConfigManager.GameManager.IsDownloading)
                        {
                            ProgressBarShowAnim();
                        }

                        MainPlayButton.IsEnabled    = false;
                        InstallationsList.IsEnabled = false;
                    }
                    else
                    {
                        ProgressBarGrid.Visibility  = Visibility.Collapsed;
                        MainPlayButton.IsEnabled    = true;
                        InstallationsList.IsEnabled = true;
                    }


                    if (selected.Version?.IsInstalled ?? false)
                    {
                        PlayButtonText.SetResourceReference(TextBlock.TextProperty, "MainPage_PlayButton");
                    }
                    else
                    {
                        PlayButtonText.SetResourceReference(TextBlock.TextProperty, "MainPage_PlayButton");
                    }
                }));
            });
        }
        private void UpdatePlayButton()
        {
            Task.Run(async() =>
            {
                await Application.Current.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Background, new Action(() =>
                {
                    var selected = InstallationsList.SelectedItem as MCInstallation;
                    if (selected == null)
                    {
                        PlayButtonText.SetResourceReference(TextBlock.TextProperty, "GameTab_PlayButton_Text");
                        MainPlayButton.IsEnabled = false;
                        return;
                    }

                    bool showProgress = ConfigManager.GameManager.IsUninstalling || ConfigManager.GameManager.IsDownloading || ConfigManager.GameManager.HasLaunchTask || ConfigManager.GameManager.IsBackingUp;

                    if (showProgress)
                    {
                        ProgressBarShowAnim();
                    }
                    else
                    {
                        ProgressBarHideAnim();
                    }

                    if (!ConfigManager.GameManager.IsGameNotOpen)
                    {
                        PlayButtonText.SetResourceReference(TextBlock.TextProperty, "GameTab_PlayButton_Kill_Text");
                    }
                    else
                    {
                        PlayButtonText.SetResourceReference(TextBlock.TextProperty, "GameTab_PlayButton_Text");
                    }
                }));
            });
        }