Skip to content
Permalink
Browse files
Merge pull request #10669 from Pokechu22/adapter-change-aa-mode-list-…
…reload

Fix antialiasing modes being determined from the wrong graphics adapter
  • Loading branch information
Pokechu22 committed May 19, 2022
2 parents 6260166 + 3949698 commit 8baeb75
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 7 deletions.
@@ -142,9 +142,10 @@ void GeneralWidget::ConnectWidgets()
// Video Backend
connect(m_backend_combo, qOverload<int>(&QComboBox::currentIndexChanged), this,
&GeneralWidget::SaveSettings);
connect(m_adapter_combo, qOverload<int>(&QComboBox::currentIndexChanged), this, [](int index) {
connect(m_adapter_combo, qOverload<int>(&QComboBox::currentIndexChanged), this, [&](int index) {
g_Config.iAdapter = index;
Config::SetBaseOrCurrent(Config::GFX_ADAPTER, index);
emit BackendChanged(QString::fromStdString(Config::Get(Config::MAIN_GFX_BACKEND)));
});
}

@@ -272,11 +272,12 @@ void VideoBackendBase::ActivateBackend(const std::string& name)

void VideoBackendBase::PopulateBackendInfo()
{
// We refresh the config after initializing the backend info, as system-specific settings
// such as anti-aliasing, or the selected adapter may be invalid, and should be checked.
g_Config.Refresh();
ActivateBackend(Config::Get(Config::MAIN_GFX_BACKEND));
g_video_backend->InitBackendInfo();
g_Config.Refresh();
// We validate the config after initializing the backend info, as system-specific settings
// such as anti-aliasing, or the selected adapter may be invalid, and should be checked.
g_Config.VerifyValidity();
}

void VideoBackendBase::PopulateBackendInfoFromUI()
@@ -44,7 +44,12 @@ void VideoConfig::Refresh()
// invalid values. Instead, pause emulation first, which will flush the video thread,
// update the config and correct it, then resume emulation, after which the video
// thread will detect the config has changed and act accordingly.
Config::AddConfigChangedCallback([]() { Core::RunAsCPUThread([]() { g_Config.Refresh(); }); });
Config::AddConfigChangedCallback([]() {
Core::RunAsCPUThread([]() {
g_Config.Refresh();
g_Config.VerifyValidity();
});
});
s_has_registered_callback = true;
}

@@ -140,8 +145,6 @@ void VideoConfig::Refresh()
bFastTextureSampling = Config::Get(Config::GFX_HACK_FAST_TEXTURE_SAMPLING);

bPerfQueriesEnable = Config::Get(Config::GFX_PERF_QUERIES_ENABLE);

VerifyValidity();
}

void VideoConfig::VerifyValidity()

0 comments on commit 8baeb75

Please sign in to comment.