Updated the input plugins reference of hwnd on game start. Fixes the emu wiimotes mouse IR when rendering the game to a separate window.
This commit is contained in:
parent
27619e613f
commit
98dce11f8c
|
@ -430,6 +430,7 @@ void EmuThread()
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// Update references in case controllers were refreshed
|
// Update references in case controllers were refreshed
|
||||||
|
g_controller_interface.Initialize(s_window_handle);
|
||||||
Pad::LoadConfig();
|
Pad::LoadConfig();
|
||||||
Keyboard::LoadConfig();
|
Keyboard::LoadConfig();
|
||||||
}
|
}
|
||||||
|
@ -444,9 +445,10 @@ void EmuThread()
|
||||||
|
|
||||||
// Activate Wiimotes which don't have source set to "None"
|
// Activate Wiimotes which don't have source set to "None"
|
||||||
for (unsigned int i = 0; i != MAX_BBMOTES; ++i)
|
for (unsigned int i = 0; i != MAX_BBMOTES; ++i)
|
||||||
|
{
|
||||||
if (g_wiimote_sources[i])
|
if (g_wiimote_sources[i])
|
||||||
GetUsbPointer()->AccessWiiMote(i | 0x100)->Activate(true);
|
GetUsbPointer()->AccessWiiMote(i | 0x100)->Activate(true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
AudioCommon::InitSoundStream();
|
AudioCommon::InitSoundStream();
|
||||||
|
@ -557,7 +559,8 @@ void EmuThread()
|
||||||
|
|
||||||
if (init_controllers)
|
if (init_controllers)
|
||||||
{
|
{
|
||||||
Wiimote::Shutdown();
|
if (core_parameter.bWii)
|
||||||
|
Wiimote::Shutdown();
|
||||||
Keyboard::Shutdown();
|
Keyboard::Shutdown();
|
||||||
Pad::Shutdown();
|
Pad::Shutdown();
|
||||||
init_controllers = false;
|
init_controllers = false;
|
||||||
|
|
|
@ -117,10 +117,11 @@ const int num_hotkeys = (sizeof(hotkey_labels) / sizeof(hotkey_labels[0]));
|
||||||
namespace HotkeyManagerEmu
|
namespace HotkeyManagerEmu
|
||||||
{
|
{
|
||||||
|
|
||||||
static u32 hotkeyDown[3];
|
u32 hotkeyDown[3];
|
||||||
static HotkeyStatus hotkey;
|
HotkeyStatus hotkey;
|
||||||
|
bool enabled;
|
||||||
|
|
||||||
static InputConfig s_config("Hotkeys", _trans("Hotkeys"), "Hotkeys");
|
InputConfig s_config("Hotkeys", _trans("Hotkeys"), "Hotkeys");
|
||||||
|
|
||||||
InputConfig* GetConfig()
|
InputConfig* GetConfig()
|
||||||
{
|
{
|
||||||
|
|
|
@ -39,6 +39,4 @@ namespace HotkeyManagerEmu
|
||||||
bool IsEnabled();
|
bool IsEnabled();
|
||||||
void Enable(bool enable_toggle);
|
void Enable(bool enable_toggle);
|
||||||
bool IsPressed(int Id, bool held);
|
bool IsPressed(int Id, bool held);
|
||||||
|
|
||||||
static bool enabled;
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1060,6 +1060,9 @@ GamepadPage::GamepadPage(wxWindow* parent, InputConfig& config, const unsigned i
|
||||||
mapping->Add(dio, 1, wxEXPAND|wxLEFT|wxTOP|wxBOTTOM, 5);
|
mapping->Add(dio, 1, wxEXPAND|wxLEFT|wxTOP|wxBOTTOM, 5);
|
||||||
mapping->Add(control_group_sizer, 0, wxLEFT|wxEXPAND, 5);
|
mapping->Add(control_group_sizer, 0, wxLEFT|wxEXPAND, 5);
|
||||||
|
|
||||||
|
wxCommandEvent event;
|
||||||
|
RefreshDevices(event);
|
||||||
|
|
||||||
UpdateGUI();
|
UpdateGUI();
|
||||||
|
|
||||||
SetSizerAndFit(mapping); // needed
|
SetSizerAndFit(mapping); // needed
|
||||||
|
|
|
@ -44,7 +44,7 @@ ControllerInterface g_controller_interface;
|
||||||
void ControllerInterface::Initialize(void* const hwnd)
|
void ControllerInterface::Initialize(void* const hwnd)
|
||||||
{
|
{
|
||||||
if (m_is_init)
|
if (m_is_init)
|
||||||
return;
|
DeInit();
|
||||||
|
|
||||||
m_hwnd = hwnd;
|
m_hwnd = hwnd;
|
||||||
|
|
||||||
|
@ -102,6 +102,11 @@ void ControllerInterface::Shutdown()
|
||||||
delete d;
|
delete d;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DeInit();
|
||||||
|
}
|
||||||
|
|
||||||
|
void ControllerInterface::DeInit()
|
||||||
|
{
|
||||||
m_devices.clear();
|
m_devices.clear();
|
||||||
|
|
||||||
#ifdef CIFACE_USE_XINPUT
|
#ifdef CIFACE_USE_XINPUT
|
||||||
|
|
|
@ -117,6 +117,9 @@ public:
|
||||||
void Initialize(void* const hwnd);
|
void Initialize(void* const hwnd);
|
||||||
void Reinitialize();
|
void Reinitialize();
|
||||||
void Shutdown();
|
void Shutdown();
|
||||||
|
|
||||||
|
void DeInit();
|
||||||
|
|
||||||
bool IsInit() const { return m_is_init; }
|
bool IsInit() const { return m_is_init; }
|
||||||
|
|
||||||
void UpdateReference(ControlReference* control, const ciface::Core::DeviceQualifier& default_device) const;
|
void UpdateReference(ControlReference* control, const ciface::Core::DeviceQualifier& default_device) const;
|
||||||
|
|
Loading…
Reference in New Issue