summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinQt2/Config/Graphics/GraphicsWindow.cpp
diff options
context:
space:
mode:
authorspycrab <spycrab@users.noreply.github.com>2018-05-19 23:33:24 +0200
committerGitHub <noreply@github.com>2018-05-19 23:33:24 +0200
commit07e0b9c0d2218f7756aab8f8f1041cccc4937856 (patch)
tree5b119327006b2c33025e6070cf4690837e1ba2f8 /Source/Core/DolphinQt2/Config/Graphics/GraphicsWindow.cpp
parent9387b7dd3208393b9b864b1db02c8881fabea920 (diff)
parentef803613d04d54b5e7ab20d9abf17726fb628892 (diff)
Merge pull request #6907 from spycrab/qt_gfx_sr_backend
Qt/SoftwareRendererWidget: Fix backend info not getting updated properly
Diffstat (limited to 'Source/Core/DolphinQt2/Config/Graphics/GraphicsWindow.cpp')
-rw-r--r--Source/Core/DolphinQt2/Config/Graphics/GraphicsWindow.cpp22
1 files changed, 18 insertions, 4 deletions
diff --git a/Source/Core/DolphinQt2/Config/Graphics/GraphicsWindow.cpp b/Source/Core/DolphinQt2/Config/Graphics/GraphicsWindow.cpp
index 638eaf73a2..64634e2a41 100644
--- a/Source/Core/DolphinQt2/Config/Graphics/GraphicsWindow.cpp
+++ b/Source/Core/DolphinQt2/Config/Graphics/GraphicsWindow.cpp
@@ -94,17 +94,31 @@ void GraphicsWindow::CreateMainLayout()
setLayout(main_layout);
}
-void GraphicsWindow::OnBackendChanged(const QString& backend)
+void GraphicsWindow::OnBackendChanged(const QString& backend_name)
{
+ SConfig::GetInstance().m_strVideoBackend = backend_name.toStdString();
+
+ for (const auto& backend : g_available_video_backends)
+ {
+ if (backend->GetName() == backend_name.toStdString())
+ {
+ g_Config.Refresh();
+
+ g_video_backend = backend.get();
+ g_video_backend->InitBackendInfo();
+ break;
+ }
+ }
+
setWindowTitle(tr("%1 Graphics Configuration")
.arg(QString::fromStdString(g_video_backend->GetDisplayName())));
- if (backend == QStringLiteral("Software Renderer") && m_tab_widget->count() > 1)
+ if (backend_name == QStringLiteral("Software Renderer") && m_tab_widget->count() > 1)
{
m_tab_widget->clear();
m_tab_widget->addTab(m_wrapped_software, tr("Software Renderer"));
}
- if (backend != QStringLiteral("Software Renderer") && m_tab_widget->count() == 1)
+ if (backend_name != QStringLiteral("Software Renderer") && m_tab_widget->count() == 1)
{
m_tab_widget->clear();
m_tab_widget->addTab(m_wrapped_general, tr("General"));
@@ -113,7 +127,7 @@ void GraphicsWindow::OnBackendChanged(const QString& backend)
m_tab_widget->addTab(m_wrapped_advanced, tr("Advanced"));
}
- emit BackendChanged(backend);
+ emit BackendChanged(backend_name);
}
void GraphicsWindow::RegisterWidget(GraphicsWidget* widget)