mirror of
https://github.com/microsoft/PowerToys.git
synced 2025-12-15 03:07:56 +01:00
[QuickAccent]Fix unstable language loading (#36721)
This commit is contained in:
@@ -63,8 +63,15 @@ namespace Microsoft.PowerToys.Settings.UI.Views
|
||||
this.QuickAccent_Language_Select.DeselectAll();
|
||||
}
|
||||
|
||||
private bool loadingLanguageListDontTriggerSelectionChanged;
|
||||
|
||||
private void QuickAccent_SelectedLanguage_SelectionChanged(object sender, SelectionChangedEventArgs e)
|
||||
{
|
||||
if (loadingLanguageListDontTriggerSelectionChanged)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var listView = sender as ListView;
|
||||
|
||||
ViewModel.SelectedLanguageOptions = listView.SelectedItems
|
||||
@@ -76,10 +83,13 @@ namespace Microsoft.PowerToys.Settings.UI.Views
|
||||
|
||||
private void QuickAccent_Language_Select_Loaded(object sender, RoutedEventArgs e)
|
||||
{
|
||||
loadingLanguageListDontTriggerSelectionChanged = true;
|
||||
foreach (var languageOption in ViewModel.SelectedLanguageOptions)
|
||||
{
|
||||
this.QuickAccent_Language_Select.SelectedItems.Add(languageOption);
|
||||
}
|
||||
|
||||
loadingLanguageListDontTriggerSelectionChanged = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -115,6 +115,7 @@ namespace Microsoft.PowerToys.Settings.UI.ViewModels
|
||||
{
|
||||
SelectedLanguageOptions = _powerAccentSettings.Properties.SelectedLang.Value.Split(',')
|
||||
.Select(l => Languages.Find(lang => lang.LanguageCode == l))
|
||||
.Where(l => l != null) // Wrongly typed languages will appear as null after find. We want to remove those to avoid crashes.
|
||||
.ToArray();
|
||||
}
|
||||
else if (_powerAccentSettings.Properties.SelectedLang.Value.Contains("ALL"))
|
||||
|
||||
Reference in New Issue
Block a user