Move a SetEnableAlert call to UICommon

This fixes a problem where changing the Use Panic Handlers setting on
Android wouldn't take effect until the app was restarted.
This commit is contained in:
JosJuice 2022-09-24 12:35:10 +02:00
parent b314e2a313
commit 16c71b9a35
2 changed files with 12 additions and 4 deletions

View File

@ -309,8 +309,6 @@ void InterfacePane::OnSaveConfig()
Config::SetBase(Config::MAIN_SHOW_ACTIVE_TITLE, m_checkbox_show_active_title->isChecked()); Config::SetBase(Config::MAIN_SHOW_ACTIVE_TITLE, m_checkbox_show_active_title->isChecked());
Config::SetBase(Config::MAIN_PAUSE_ON_FOCUS_LOST, m_checkbox_pause_on_focus_lost->isChecked()); Config::SetBase(Config::MAIN_PAUSE_ON_FOCUS_LOST, m_checkbox_pause_on_focus_lost->isChecked());
Common::SetEnableAlert(Config::Get(Config::MAIN_USE_PANIC_HANDLERS));
auto new_language = m_combobox_language->currentData().toString().toStdString(); auto new_language = m_combobox_language->currentData().toString().toStdString();
if (new_language != Config::Get(Config::MAIN_INTERFACE_LANGUAGE)) if (new_language != Config::Get(Config::MAIN_INTERFACE_LANGUAGE))
{ {

View File

@ -57,6 +57,8 @@
namespace UICommon namespace UICommon
{ {
static size_t s_config_changed_callback_id;
static void CreateDumpPath(std::string path) static void CreateDumpPath(std::string path)
{ {
if (!path.empty()) if (!path.empty())
@ -108,6 +110,12 @@ static void InitCustomPaths()
#endif #endif
} }
static void RefreshConfig()
{
Common::SetEnableAlert(Config::Get(Config::MAIN_USE_PANIC_HANDLERS));
Common::SetAbortOnPanicAlert(Config::Get(Config::MAIN_ABORT_ON_PANIC_ALERT));
}
void Init() void Init()
{ {
Core::RestoreWiiSettings(Core::RestoreReason::CrashRecovery); Core::RestoreWiiSettings(Core::RestoreReason::CrashRecovery);
@ -120,12 +128,14 @@ void Init()
Common::Log::LogManager::Init(); Common::Log::LogManager::Init();
VideoBackendBase::ActivateBackend(Config::Get(Config::MAIN_GFX_BACKEND)); VideoBackendBase::ActivateBackend(Config::Get(Config::MAIN_GFX_BACKEND));
Common::SetEnableAlert(Config::Get(Config::MAIN_USE_PANIC_HANDLERS)); s_config_changed_callback_id = Config::AddConfigChangedCallback(RefreshConfig);
Common::SetAbortOnPanicAlert(Config::Get(Config::MAIN_ABORT_ON_PANIC_ALERT)); RefreshConfig();
} }
void Shutdown() void Shutdown()
{ {
Config::RemoveConfigChangedCallback(s_config_changed_callback_id);
GCAdapter::Shutdown(); GCAdapter::Shutdown();
WiimoteReal::Shutdown(); WiimoteReal::Shutdown();
Common::Log::LogManager::Shutdown(); Common::Log::LogManager::Shutdown();