diff options
| author | Stenzek <stenzek@gmail.com> | 2018-10-27 20:06:35 +1000 |
|---|---|---|
| committer | Stenzek <stenzek@gmail.com> | 2018-10-29 11:46:06 +1000 |
| commit | 52828901efedb146cb572573b2381e73d2ada4d9 (patch) | |
| tree | 4daa5c17057ed3bb43aa7a7f83beacbcb5add7bb /Source/Core/InputCommon | |
| parent | a7f334dc2a3eec0119d8b77ec3ff35bbc8aae5f9 (diff) | |
Core: Switch controller interface to render widget on booting
Previously, the Qt frontend would initialize the controller
interface on starting, resulting in the cursor position being
relative to the main window, instead of the render window.
Diffstat (limited to 'Source/Core/InputCommon')
| -rw-r--r-- | Source/Core/InputCommon/ControllerInterface/ControllerInterface.cpp | 9 | ||||
| -rw-r--r-- | Source/Core/InputCommon/ControllerInterface/ControllerInterface.h | 1 |
2 files changed, 10 insertions, 0 deletions
diff --git a/Source/Core/InputCommon/ControllerInterface/ControllerInterface.cpp b/Source/Core/InputCommon/ControllerInterface/ControllerInterface.cpp index 7be22d4a8d..9f6e7c5179 100644 --- a/Source/Core/InputCommon/ControllerInterface/ControllerInterface.cpp +++ b/Source/Core/InputCommon/ControllerInterface/ControllerInterface.cpp @@ -80,6 +80,15 @@ void ControllerInterface::Initialize(const WindowSystemInfo& wsi) RefreshDevices(); } +void ControllerInterface::ChangeWindow(void* hwnd) +{ + if (!m_is_init) + return; + + m_wsi.render_surface = hwnd; + RefreshDevices(); +} + void ControllerInterface::RefreshDevices() { if (!m_is_init) diff --git a/Source/Core/InputCommon/ControllerInterface/ControllerInterface.h b/Source/Core/InputCommon/ControllerInterface/ControllerInterface.h index 2e078e8934..d5567222a4 100644 --- a/Source/Core/InputCommon/ControllerInterface/ControllerInterface.h +++ b/Source/Core/InputCommon/ControllerInterface/ControllerInterface.h @@ -42,6 +42,7 @@ class ControllerInterface : public ciface::Core::DeviceContainer public: ControllerInterface() : m_is_init(false) {} void Initialize(const WindowSystemInfo& wsi); + void ChangeWindow(void* hwnd); void RefreshDevices(); void Shutdown(); void AddDevice(std::shared_ptr<ciface::Core::Device> device); |
