AudioPane: Fix WASAPI default device combo selection
Set the default value of `Config::MAIN_WASAPI_DEVICE` to `default` instead of `Default`. This fixes an issue where `AudioPane`'s `Output Device` combo would be blank if `WASAPI` was selected and the user had never changed the value of `Output Device`. We don't have to worry about backward compatibility with users who have `Default` in their config because config values aren't written unless they've been changed at some point from the default, and the combo has always saved `default` instead of `Default`. Audio still worked during emulation in this situation because the fallback for an unrecognized device name is the default device. To help prevent similar situations in the future references to `MAIN_WASAPI_DEVICE`'s default value now call `GetDefaultValue` instead of hardcoding the expected default, or use the new helper function `Config::IsDefaultValue`.
This commit is contained in:
@@ -135,6 +135,12 @@ void DeleteKey(LayerType layer, const Info<T>& info)
|
||||
OnConfigChanged();
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
bool IsDefaultValue(const Info<T>& info)
|
||||
{
|
||||
return Get(info) == info.GetDefaultValue();
|
||||
}
|
||||
|
||||
// Used to defer OnConfigChanged until after the completion of many config changes.
|
||||
class ConfigChangeCallbackGuard
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user