summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinQt/Config/Mapping/MappingWindow.cpp
diff options
context:
space:
mode:
authorspycrab <spycrab@users.noreply.github.com>2018-07-11 10:58:26 +0200
committerGitHub <noreply@github.com>2018-07-11 10:58:26 +0200
commitc7ff1416064a303f835f544f70586f449371fd32 (patch)
tree7b26f148f66e0505b5030f4627c722d450c0762f /Source/Core/DolphinQt/Config/Mapping/MappingWindow.cpp
parentea99cdd781318c0883f1824a032d137854555923 (diff)
parentce98a9c71d3bb03bb127601c3d09c647a5d41767 (diff)
Merge pull request #7219 from ligfx/mappingwindow_hotplug
Qt/MappingWindow: update devices combo box when hotplugging devices
Diffstat (limited to 'Source/Core/DolphinQt/Config/Mapping/MappingWindow.cpp')
-rw-r--r--Source/Core/DolphinQt/Config/Mapping/MappingWindow.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/Source/Core/DolphinQt/Config/Mapping/MappingWindow.cpp b/Source/Core/DolphinQt/Config/Mapping/MappingWindow.cpp
index 48e5a5f0f2..1b6f629c1c 100644
--- a/Source/Core/DolphinQt/Config/Mapping/MappingWindow.cpp
+++ b/Source/Core/DolphinQt/Config/Mapping/MappingWindow.cpp
@@ -136,6 +136,8 @@ void MappingWindow::CreateMainLayout()
void MappingWindow::ConnectWidgets()
{
+ connect(&Settings::Instance(), &Settings::DevicesChanged, this,
+ &MappingWindow::OnGlobalDevicesChanged);
connect(m_button_box, &QDialogButtonBox::rejected, this, &QDialog::reject);
connect(m_devices_refresh, &QPushButton::clicked, this, &MappingWindow::RefreshDevices);
connect(m_devices_combo, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged),
@@ -243,10 +245,14 @@ bool MappingWindow::IsMappingAllDevices() const
void MappingWindow::RefreshDevices()
{
+ Core::RunAsCPUThread([&] { g_controller_interface.RefreshDevices(); });
+}
+
+void MappingWindow::OnGlobalDevicesChanged()
+{
m_devices_combo->clear();
Core::RunAsCPUThread([&] {
- g_controller_interface.RefreshDevices();
m_controller->UpdateReferences(g_controller_interface);
const auto default_device = m_controller->GetDefaultDevice().ToString();