private async Task RebuildPresetsList() {
if (_reloading) return;
_reloading = true;
PresetsReady = false;
try {
Presets.Clear();
_builtInPresets = await ScanAsync(ControlsSettings.SubBuiltInPresets);
_userPresets = await ScanAsync(ControlsSettings.SubUserPresets);
Presets.Add(Rebuild(ControlsStrings.Controls_BuiltInPresets, ControlsSettings.SubBuiltInPresets, _builtInPresets));
Presets.Add(Rebuild(ControlsStrings.Controls_UserPresets, ControlsSettings.SubUserPresets, _userPresets));
PresetsReady = true;
} catch (Exception e) {
Logging.Warning("RebuildPresetsList(): " + e);
} finally {
_reloading = false;
}
}