Merge pull request #4357 from ligfx/notresponsibleforhw

HW: Don't be responsible for g_controller_interface
This commit is contained in:
shuffle2 2016-10-15 22:18:20 -07:00 committed by GitHub
commit 1e9f052ea5
10 changed files with 24 additions and 36 deletions

View File

@ -517,8 +517,9 @@ void EmuThread()
bool init_controllers = false;
if (!g_controller_interface.IsInit())
{
Pad::Initialize(s_window_handle);
Keyboard::Initialize(s_window_handle);
g_controller_interface.Initialize(s_window_handle);
Pad::Initialize();
Keyboard::Initialize();
init_controllers = true;
}
else
@ -532,9 +533,9 @@ void EmuThread()
if (core_parameter.bWii && !SConfig::GetInstance().m_bt_passthrough_enabled)
{
if (init_controllers)
Wiimote::Initialize(s_window_handle, !s_state_filename.empty() ?
Wiimote::InitializeMode::DO_WAIT_FOR_WIIMOTES :
Wiimote::InitializeMode::DO_NOT_WAIT_FOR_WIIMOTES);
Wiimote::Initialize(!s_state_filename.empty() ?
Wiimote::InitializeMode::DO_WAIT_FOR_WIIMOTES :
Wiimote::InitializeMode::DO_NOT_WAIT_FOR_WIIMOTES);
else
Wiimote::LoadConfig();
@ -658,6 +659,7 @@ void EmuThread()
Wiimote::Shutdown();
Keyboard::Shutdown();
Pad::Shutdown();
g_controller_interface.Shutdown();
init_controllers = false;
}

View File

@ -23,11 +23,9 @@ InputConfig* GetConfig()
void Shutdown()
{
s_config.ClearControllers();
g_controller_interface.Shutdown();
}
void Initialize(void* const hwnd)
void Initialize()
{
if (s_config.ControllersNeedToBeCreated())
{
@ -35,7 +33,6 @@ void Initialize(void* const hwnd)
s_config.CreateController<GCKeyboard>(i);
}
g_controller_interface.Initialize(hwnd);
g_controller_interface.RegisterHotplugCallback(LoadConfig);
// Load the saved controller config

View File

@ -12,7 +12,7 @@ struct KeyboardStatus;
namespace Keyboard
{
void Shutdown();
void Initialize(void* const hwnd);
void Initialize();
void LoadConfig();
InputConfig* GetConfig();

View File

@ -22,11 +22,9 @@ InputConfig* GetConfig()
void Shutdown()
{
s_config.ClearControllers();
g_controller_interface.Shutdown();
}
void Initialize(void* const hwnd)
void Initialize()
{
if (s_config.ControllersNeedToBeCreated())
{
@ -34,7 +32,6 @@ void Initialize(void* const hwnd)
s_config.CreateController<GCPad>(i);
}
g_controller_interface.Initialize(hwnd);
g_controller_interface.RegisterHotplugCallback(LoadConfig);
// Load the saved controller config

View File

@ -13,7 +13,7 @@ struct GCPadStatus;
namespace Pad
{
void Shutdown();
void Initialize(void* const hwnd);
void Initialize();
void LoadConfig();
InputConfig* GetConfig();

View File

@ -24,11 +24,9 @@ void Shutdown()
s_config.ClearControllers();
WiimoteReal::Stop();
g_controller_interface.Shutdown();
}
void Initialize(void* const hwnd, InitializeMode init_mode)
void Initialize(InitializeMode init_mode)
{
if (s_config.ControllersNeedToBeCreated())
{
@ -36,7 +34,6 @@ void Initialize(void* const hwnd, InitializeMode init_mode)
s_config.CreateController<WiimoteEmu::Wiimote>(i);
}
g_controller_interface.Initialize(hwnd);
g_controller_interface.RegisterHotplugCallback(LoadConfig);
s_config.LoadConfig(false);

View File

@ -42,7 +42,7 @@ enum class InitializeMode
};
void Shutdown();
void Initialize(void* const hwnd, InitializeMode init_mode);
void Initialize(InitializeMode init_mode);
void ResetAllWiimotes();
void LoadConfig();
void Resume();

View File

@ -182,12 +182,11 @@ bool IsPressed(int Id, bool held)
return false;
}
void Initialize(void* const hwnd)
void Initialize()
{
if (s_config.ControllersNeedToBeCreated())
s_config.CreateController<HotkeyManager>();
g_controller_interface.Initialize(hwnd);
g_controller_interface.RegisterHotplugCallback(LoadConfig);
// load the saved controller config
@ -207,8 +206,6 @@ void LoadConfig()
void Shutdown()
{
s_config.ClearControllers();
g_controller_interface.Shutdown();
}
}

View File

@ -155,7 +155,7 @@ private:
namespace HotkeyManagerEmu
{
void Initialize(void* const hwnd);
void Initialize();
void Shutdown();
void LoadConfig();

View File

@ -333,19 +333,16 @@ bool CFrame::InitControllers()
if (!g_controller_interface.IsInit())
{
#if defined(HAVE_X11) && HAVE_X11
Window win = X11Utils::XWindowFromHandle(GetHandle());
Pad::Initialize(reinterpret_cast<void*>(win));
Keyboard::Initialize(reinterpret_cast<void*>(win));
Wiimote::Initialize(reinterpret_cast<void*>(win),
Wiimote::InitializeMode::DO_NOT_WAIT_FOR_WIIMOTES);
HotkeyManagerEmu::Initialize(reinterpret_cast<void*>(win));
void* win = reinterpret_cast<void*>(X11Utils::XWindowFromHandle(GetHandle()));
#else
Pad::Initialize(reinterpret_cast<void*>(GetHandle()));
Keyboard::Initialize(reinterpret_cast<void*>(GetHandle()));
Wiimote::Initialize(reinterpret_cast<void*>(GetHandle()),
Wiimote::InitializeMode::DO_NOT_WAIT_FOR_WIIMOTES);
HotkeyManagerEmu::Initialize(reinterpret_cast<void*>(GetHandle()));
void* win = reinterpret_cast<void*>(GetHandle());
#endif
g_controller_interface.Initialize(win);
Pad::Initialize();
Keyboard::Initialize();
Wiimote::Initialize(Wiimote::InitializeMode::DO_NOT_WAIT_FOR_WIIMOTES);
HotkeyManagerEmu::Initialize();
return true;
}
return false;
@ -547,6 +544,7 @@ CFrame::~CFrame()
Keyboard::Shutdown();
Pad::Shutdown();
HotkeyManagerEmu::Shutdown();
g_controller_interface.Shutdown();
drives.clear();