diff options
Diffstat (limited to 'Source/Core/DolphinQt2/Config/Mapping/MappingWindow.cpp')
| -rw-r--r-- | Source/Core/DolphinQt2/Config/Mapping/MappingWindow.cpp | 28 |
1 files changed, 13 insertions, 15 deletions
diff --git a/Source/Core/DolphinQt2/Config/Mapping/MappingWindow.cpp b/Source/Core/DolphinQt2/Config/Mapping/MappingWindow.cpp index f7406a5a8b..2885385f33 100644 --- a/Source/Core/DolphinQt2/Config/Mapping/MappingWindow.cpp +++ b/Source/Core/DolphinQt2/Config/Mapping/MappingWindow.cpp @@ -229,25 +229,23 @@ void MappingWindow::RefreshDevices() { m_devices_combo->clear(); - const bool paused = Core::PauseAndLock(true); + Core::RunAsCPUThread([&] { + g_controller_interface.RefreshDevices(); + m_controller->UpdateReferences(g_controller_interface); + m_controller->UpdateDefaultDevice(); - g_controller_interface.RefreshDevices(); - m_controller->UpdateReferences(g_controller_interface); - m_controller->UpdateDefaultDevice(); - - const auto default_device = m_controller->default_device.ToString(); - - m_devices_combo->addItem(QString::fromStdString(default_device)); + const auto default_device = m_controller->default_device.ToString(); - for (const auto& name : g_controller_interface.GetAllDeviceStrings()) - { - if (name != default_device) - m_devices_combo->addItem(QString::fromStdString(name)); - } + m_devices_combo->addItem(QString::fromStdString(default_device)); - m_devices_combo->setCurrentIndex(0); + for (const auto& name : g_controller_interface.GetAllDeviceStrings()) + { + if (name != default_device) + m_devices_combo->addItem(QString::fromStdString(name)); + } - Core::PauseAndLock(false, paused); + m_devices_combo->setCurrentIndex(0); + }); } void MappingWindow::ChangeMappingType(MappingWindow::Type type) |
