From 02ce753b7672b9447601173536313ed9fc4ad7e9 Mon Sep 17 00:00:00 2001 From: Glenn Rice Date: Fri, 16 Jul 2010 14:14:57 +0000 Subject: [PATCH] This is basicall linux code cleanup. We don not need to pass the X display handle from the video plugin anymore. The wiimote plugins now open their own display handles, and the GUI uses the display handle of the main window frame. Only the window handle from the video plugin is needed. The pWindowHandle variable now passes this instead of the display handle. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5884 8ced0084-cf51-0410-be5f-012b33b47a6e --- Source/Core/Core/Src/Core.cpp | 23 ++------------ Source/Core/Core/Src/Core.h | 4 +-- Source/Core/DolphinWX/Src/Frame.cpp | 2 +- Source/Core/DolphinWX/Src/FrameTools.cpp | 5 ++-- Source/Core/DolphinWX/Src/MainNoGUI.cpp | 6 ++-- Source/Core/DolphinWX/Src/X11Utils.cpp | 15 ++++------ Source/Core/DolphinWX/Src/X11Utils.h | 6 ++-- .../Src/ControllerInterface/Xlib/Xlib.cpp | 2 +- Source/PluginSpecs/pluginspecs_video.h | 4 --- Source/PluginSpecs/pluginspecs_wiimote.h | 8 ----- Source/Plugins/Plugin_VideoOGL/Src/GLUtil.cpp | 8 ++--- Source/Plugins/Plugin_VideoOGL/Src/main.cpp | 3 -- .../Plugin_VideoSoftware/Src/GLUtil.cpp | 30 +++++-------------- .../Plugin_VideoSoftware/Src/Renderer.cpp | 3 -- Source/Plugins/Plugin_Wiimote/Src/EmuMain.cpp | 2 +- .../Plugins/Plugin_Wiimote/Src/FillReport.cpp | 2 +- Source/Plugins/Plugin_Wiimote/Src/main.cpp | 9 ++++-- .../Plugin_WiimoteNew/Src/WiimoteNew.cpp | 6 +--- 18 files changed, 40 insertions(+), 98 deletions(-) diff --git a/Source/Core/Core/Src/Core.cpp b/Source/Core/Core/Src/Core.cpp index 344c878649..38a3944d5f 100644 --- a/Source/Core/Core/Src/Core.cpp +++ b/Source/Core/Core/Src/Core.cpp @@ -101,9 +101,7 @@ bool g_bStopping = false; bool g_bHwInit = false; bool g_bRealWiimote = false; HWND g_pWindowHandle = NULL; -#if defined(HAVE_X11) && HAVE_X11 -void *g_pXWindow = NULL; -#endif + Common::Thread* g_EmuThread = NULL; static Common::Thread* cpuThread = NULL; @@ -154,13 +152,6 @@ void *GetWindowHandle() return g_pWindowHandle; } -#if defined HAVE_X11 && HAVE_X11 -void *GetXWindow() -{ - return g_pXWindow; -} -#endif - bool GetRealWiimote() { return g_bRealWiimote; @@ -370,11 +361,8 @@ THREAD_RETURN EmuThread(void *pArg) Plugins.GetVideo()->Initialize(&VideoInitialize); // Call the dll - // Under linux, this is an X11 Display, not a HWND! + // Under linux, this is an X11 Window, not a HWND! g_pWindowHandle = (HWND)VideoInitialize.pWindowHandle; -#if defined(HAVE_X11) && HAVE_X11 - g_pXWindow = (void *)VideoInitialize.pXWindow; -#endif Callback_PeekMessages = VideoInitialize.pPeekMessages; g_pUpdateFPSDisplay = VideoInitialize.pUpdateFPSDisplay; @@ -397,20 +385,13 @@ THREAD_RETURN EmuThread(void *pArg) Plugins.GetDSP()->Initialize((void *)&dspInit); -#if defined(HAVE_X11) && HAVE_X11 - GCPad_Init(g_pXWindow); -#else GCPad_Init(g_pWindowHandle); -#endif // Load and Init WiimotePlugin - only if we are booting in wii mode if (_CoreParameter.bWii) { SWiimoteInitialize WiimoteInitialize; WiimoteInitialize.hWnd = g_pWindowHandle; -#if defined(HAVE_X11) && HAVE_X11 - WiimoteInitialize.pXWindow = g_pXWindow; -#endif WiimoteInitialize.ISOId = Ascii2Hex(_CoreParameter.m_strUniqueID); WiimoteInitialize.pLog = Callback_WiimoteLog; WiimoteInitialize.pWiimoteInterruptChannel = Callback_WiimoteInterruptChannel; diff --git a/Source/Core/Core/Src/Core.h b/Source/Core/Core/Src/Core.h index 25cb7dfe41..ec3cc9d5d2 100644 --- a/Source/Core/Core/Src/Core.h +++ b/Source/Core/Core/Src/Core.h @@ -62,9 +62,7 @@ namespace Core void Callback_WiimoteInterruptChannel(int _number, u16 _channelID, const void* _pData, u32 _Size); void* GetWindowHandle(); -#if defined HAVE_X11 && HAVE_X11 - void* GetXWindow(); -#endif + bool GetRealWiimote(); extern bool bReadTrace; diff --git a/Source/Core/DolphinWX/Src/Frame.cpp b/Source/Core/DolphinWX/Src/Frame.cpp index d1d9db6004..7fa9409712 100644 --- a/Source/Core/DolphinWX/Src/Frame.cpp +++ b/Source/Core/DolphinWX/Src/Frame.cpp @@ -880,7 +880,7 @@ void CFrame::OnKeyDown(wxKeyEvent& event) #ifdef _WIN32 PostMessage((HWND)Core::GetWindowHandle(), WM_USER, WM_USER_KEYDOWN, event.GetKeyCode()); #elif defined(HAVE_X11) && HAVE_X11 - X11Utils::SendKeyEvent(event.GetKeyCode()); + X11Utils::SendKeyEvent(X11Utils::XDisplayFromHandle(GetHandle()), event.GetKeyCode()); #endif } #ifdef _WIN32 diff --git a/Source/Core/DolphinWX/Src/FrameTools.cpp b/Source/Core/DolphinWX/Src/FrameTools.cpp index 4a93e23d66..2ec31b816f 100644 --- a/Source/Core/DolphinWX/Src/FrameTools.cpp +++ b/Source/Core/DolphinWX/Src/FrameTools.cpp @@ -702,7 +702,8 @@ void CFrame::OnRenderParentResize(wxSizeEvent& event) int x, y; m_RenderParent->GetSize(&width, &height); m_RenderParent->GetPosition(&x, &y); - X11Utils::SendClientEvent("RESIZE", x, y, width, height); + X11Utils::SendClientEvent(X11Utils::XDisplayFromHandle(GetHandle()), + "RESIZE", x, y, width, height); #endif } event.Skip(); @@ -956,7 +957,7 @@ void CFrame::OnPluginPAD(wxCommandEvent& WXUNUSED (event)) { #if defined(HAVE_X11) && HAVE_X11 Window win = X11Utils::XWindowFromHandle(GetHandle()); - GCPad_Init(&win); + GCPad_Init((void *)win); #else GCPad_Init(GetHandle()); #endif diff --git a/Source/Core/DolphinWX/Src/MainNoGUI.cpp b/Source/Core/DolphinWX/Src/MainNoGUI.cpp index 4af83d3df3..7ed9b69d81 100644 --- a/Source/Core/DolphinWX/Src/MainNoGUI.cpp +++ b/Source/Core/DolphinWX/Src/MainNoGUI.cpp @@ -139,7 +139,7 @@ void X11_MainLoop() updateMainFrameEvent.Wait(); Display *dpy = XOpenDisplay(0); - Window win = *(Window *)Core::GetXWindow(); + Window win = (Window)Core::GetWindowHandle(); XSelectInput(dpy, win, KeyPressMask | KeyReleaseMask | FocusChangeMask); #if defined(HAVE_XRANDR) && HAVE_XRANDR @@ -161,7 +161,7 @@ void X11_MainLoop() if (fullscreen) { - X11Utils::EWMH_Fullscreen(_NET_WM_STATE_TOGGLE); + X11Utils::EWMH_Fullscreen(dpy, _NET_WM_STATE_TOGGLE); #if defined(HAVE_XRANDR) && HAVE_XRANDR XRRConfig->ToggleDisplayMode(True); #endif @@ -197,7 +197,7 @@ void X11_MainLoop() else if ((key == XK_Return) && (event.xkey.state & Mod1Mask)) { fullscreen = !fullscreen; - X11Utils::EWMH_Fullscreen(_NET_WM_STATE_TOGGLE); + X11Utils::EWMH_Fullscreen(dpy, _NET_WM_STATE_TOGGLE); #if defined(HAVE_XRANDR) && HAVE_XRANDR XRRConfig->ToggleDisplayMode(fullscreen); #endif diff --git a/Source/Core/DolphinWX/Src/X11Utils.cpp b/Source/Core/DolphinWX/Src/X11Utils.cpp index bf3eab9164..513eae4b44 100644 --- a/Source/Core/DolphinWX/Src/X11Utils.cpp +++ b/Source/Core/DolphinWX/Src/X11Utils.cpp @@ -20,12 +20,11 @@ namespace X11Utils { -void SendClientEvent(const char *message, +void SendClientEvent(Display *dpy, const char *message, int data1, int data2, int data3, int data4) { XEvent event; - Display *dpy = (Display *)Core::GetWindowHandle(); - Window win = *(Window *)Core::GetXWindow(); + Window win = (Window)Core::GetWindowHandle(); // Init X event structure for client message event.xclient.type = ClientMessage; @@ -41,11 +40,10 @@ void SendClientEvent(const char *message, ERROR_LOG(VIDEO, "Failed to send message %s to the emulator window.", message); } -void SendKeyEvent(int key) +void SendKeyEvent(Display *dpy, int key) { XEvent event; - Display *dpy = (Display *)Core::GetWindowHandle(); - Window win = *(Window *)Core::GetXWindow(); + Window win = (Window)Core::GetWindowHandle(); // Init X event structure for key press event event.xkey.type = KeyPress; @@ -58,13 +56,12 @@ void SendKeyEvent(int key) ERROR_LOG(VIDEO, "Failed to send key press event to the emulator window."); } -void EWMH_Fullscreen(int action) +void EWMH_Fullscreen(Display *dpy, int action) { _assert_(action == _NET_WM_STATE_REMOVE || action == _NET_WM_STATE_ADD || action == _NET_WM_STATE_TOGGLE); - Display *dpy = (Display *)Core::GetWindowHandle(); - Window win = *(Window *)Core::GetXWindow(); + Window win = (Window)Core::GetWindowHandle(); // Init X event structure for _NET_WM_STATE_FULLSCREEN client message XEvent event; diff --git a/Source/Core/DolphinWX/Src/X11Utils.h b/Source/Core/DolphinWX/Src/X11Utils.h index d226b6cce4..2b1f6471ef 100644 --- a/Source/Core/DolphinWX/Src/X11Utils.h +++ b/Source/Core/DolphinWX/Src/X11Utils.h @@ -43,10 +43,10 @@ namespace X11Utils { -void SendClientEvent(const char *message, +void SendClientEvent(Display *dpy, const char *message, int data1, int data2, int data3, int data4); -void SendKeyEvent(int key); -void EWMH_Fullscreen(int action); +void SendKeyEvent(Display *dpy, int key); +void EWMH_Fullscreen(Display *dpy, int action); #if defined(HAVE_WX) && HAVE_WX Window XWindowFromHandle(void *Handle); Display *XDisplayFromHandle(void *Handle); diff --git a/Source/Core/InputCommon/Src/ControllerInterface/Xlib/Xlib.cpp b/Source/Core/InputCommon/Src/ControllerInterface/Xlib/Xlib.cpp index 49574900a6..68294ebfc2 100644 --- a/Source/Core/InputCommon/Src/ControllerInterface/Xlib/Xlib.cpp +++ b/Source/Core/InputCommon/Src/ControllerInterface/Xlib/Xlib.cpp @@ -7,7 +7,7 @@ namespace Xlib void Init(std::vector& devices, void* const hwnd) { - devices.push_back(new KeyboardMouse(*(Window*)hwnd)); + devices.push_back(new KeyboardMouse((Window)hwnd)); } KeyboardMouse::KeyboardMouse(Window window) : m_window(window) diff --git a/Source/PluginSpecs/pluginspecs_video.h b/Source/PluginSpecs/pluginspecs_video.h index 2821ace9fe..57b7828953 100644 --- a/Source/PluginSpecs/pluginspecs_video.h +++ b/Source/PluginSpecs/pluginspecs_video.h @@ -5,7 +5,6 @@ #ifndef _VIDEO_H_INCLUDED__ #define _VIDEO_H_INCLUDED__ -#include "Common.h" #include "PluginSpecs.h" #include "ExportProlog.h" @@ -71,9 +70,6 @@ typedef struct typedef struct { void *pWindowHandle; -#if defined(HAVE_X11) && HAVE_X11 - void *pXWindow; -#endif TSetInterrupt pSetInterrupt; TRegisterEvent pRegisterEvent; diff --git a/Source/PluginSpecs/pluginspecs_wiimote.h b/Source/PluginSpecs/pluginspecs_wiimote.h index d079d263b1..0d6711e11c 100644 --- a/Source/PluginSpecs/pluginspecs_wiimote.h +++ b/Source/PluginSpecs/pluginspecs_wiimote.h @@ -8,11 +8,6 @@ #include "PluginSpecs.h" #include "ExportProlog.h" -#if !defined _WIN32 && !defined __APPLE__ -#include "Config.h" -#endif - - typedef void (*TLogv)(const char* _pMessage, int _v); // This is called when the Wiimote sends input reports to the Core. @@ -24,9 +19,6 @@ typedef bool (*TRendererHasFocus)(void); typedef struct { HWND hWnd; -#if defined HAVE_X11 && HAVE_X11 - void *pXWindow; -#endif u32 ISOId; TLogv pLog; TWiimoteInterruptChannel pWiimoteInterruptChannel; diff --git a/Source/Plugins/Plugin_VideoOGL/Src/GLUtil.cpp b/Source/Plugins/Plugin_VideoOGL/Src/GLUtil.cpp index 7dcc4fa051..82ee13710a 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/GLUtil.cpp +++ b/Source/Plugins/Plugin_VideoOGL/Src/GLUtil.cpp @@ -127,7 +127,8 @@ void CreateXWindow (void) GLWin.attr.colormap = XCreateColormap(GLWin.dpy, GLWin.parent, GLWin.vi->visual, AllocNone); GLWin.attr.event_mask = ExposureMask | KeyPressMask | KeyReleaseMask | - StructureNotifyMask | ResizeRedirectMask; + StructureNotifyMask | ResizeRedirectMask | EnterWindowMask | + LeaveWindowMask | FocusChangeMask; GLWin.attr.background_pixel = BlackPixel(GLWin.dpy, GLWin.screen); GLWin.attr.border_pixel = 0; @@ -138,8 +139,6 @@ void CreateXWindow (void) wmProtocols[0] = XInternAtom(GLWin.dpy, "WM_DELETE_WINDOW", True); XSetWMProtocols(GLWin.dpy, GLWin.win, wmProtocols, 1); XSetStandardProperties(GLWin.dpy, GLWin.win, "GPU", "GPU", None, NULL, 0, NULL); - XSelectInput(GLWin.dpy, GLWin.win, ExposureMask | KeyPressMask | KeyReleaseMask | - StructureNotifyMask | EnterWindowMask | LeaveWindowMask | FocusChangeMask ); XMapRaised(GLWin.dpy, GLWin.win); XSync(GLWin.dpy, True); @@ -359,7 +358,6 @@ bool OpenGL_Create(SVideoInitialize &_VideoInitialize, int _iwidth, int _iheight GLWin.dpy = XOpenDisplay(0); GLWin.parent = (Window)g_VideoInitialize.pWindowHandle; - g_VideoInitialize.pWindowHandle = (Display *)GLWin.dpy; GLWin.screen = DefaultScreen(GLWin.dpy); if (GLWin.parent == 0) GLWin.parent = RootWindow(GLWin.dpy, GLWin.screen); @@ -404,7 +402,7 @@ bool OpenGL_Create(SVideoInitialize &_VideoInitialize, int _iwidth, int _iheight GLWin.height = _theight; CreateXWindow(); - g_VideoInitialize.pXWindow = (Window *) &GLWin.win; + g_VideoInitialize.pWindowHandle = (void *)GLWin.win; #endif return true; } diff --git a/Source/Plugins/Plugin_VideoOGL/Src/main.cpp b/Source/Plugins/Plugin_VideoOGL/Src/main.cpp index 3f0d18b023..b68eca263f 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/main.cpp +++ b/Source/Plugins/Plugin_VideoOGL/Src/main.cpp @@ -226,9 +226,6 @@ void Initialize(void *init) // Now the window handle is written _pVideoInitialize->pWindowHandle = g_VideoInitialize.pWindowHandle; -#if defined(HAVE_X11) && HAVE_X11 - _pVideoInitialize->pXWindow = g_VideoInitialize.pXWindow; -#endif OSD::AddMessage("Dolphin OpenGL Video Plugin", 5000); } diff --git a/Source/Plugins/Plugin_VideoSoftware/Src/GLUtil.cpp b/Source/Plugins/Plugin_VideoSoftware/Src/GLUtil.cpp index 3144851950..d325c0a59c 100644 --- a/Source/Plugins/Plugin_VideoSoftware/Src/GLUtil.cpp +++ b/Source/Plugins/Plugin_VideoSoftware/Src/GLUtil.cpp @@ -271,7 +271,6 @@ bool OpenGL_Create(SVideoInitialize &_VideoInitialize, int _twidth, int _theight GLWin.dpy = XOpenDisplay(0); GLWin.parent = (Window)g_VideoInitialize.pWindowHandle; - g_VideoInitialize.pWindowHandle = (HWND)GLWin.dpy; GLWin.screen = DefaultScreen(GLWin.dpy); /* get an appropriate visual */ @@ -316,7 +315,8 @@ bool OpenGL_Create(SVideoInitialize &_VideoInitialize, int _twidth, int _theight // create a window in window mode GLWin.attr.event_mask = ExposureMask | KeyPressMask | KeyReleaseMask | - StructureNotifyMask | ResizeRedirectMask; + StructureNotifyMask | ResizeRedirectMask | EnterWindowMask | + LeaveWindowMask | FocusChangeMask; GLWin.win = XCreateWindow(GLWin.dpy, GLWin.parent, xPos, yPos, _twidth, _theight, 0, vi->depth, InputOutput, vi->visual, CWBorderPixel | CWColormap | CWEventMask, &GLWin.attr); @@ -327,7 +327,7 @@ bool OpenGL_Create(SVideoInitialize &_VideoInitialize, int _twidth, int _theight "GPU", None, NULL, 0, NULL); XMapRaised(GLWin.dpy, GLWin.win); - g_VideoInitialize.pXWindow = (Window *) &GLWin.win; + g_VideoInitialize.pWindowHandle = (void *)GLWin.win; #endif return true; } @@ -337,27 +337,11 @@ bool OpenGL_MakeCurrent() #if defined(USE_WX) && USE_WX GLWin.glCanvas->SetCurrent(*GLWin.glCtxt); #elif defined(_WIN32) - if (!wglMakeCurrent(hDC,hRC)) { - PanicAlert("(5) Can't Activate The GL Rendering Context."); - return false; - } + return wglMakeCurrent(hDC,hRC) ? true : false; #elif defined(HAVE_X11) && HAVE_X11 - Window winDummy; - unsigned int borderDummy; - // connect the glx-context to the window - glXMakeCurrent(GLWin.dpy, GLWin.win, GLWin.ctx); - XGetGeometry(GLWin.dpy, GLWin.win, &winDummy, &GLWin.x, &GLWin.y, - &GLWin.width, &GLWin.height, &borderDummy, &GLWin.depth); - NOTICE_LOG(VIDEO, "GLWin Depth %d", GLWin.depth) - if (glXIsDirect(GLWin.dpy, GLWin.ctx)) { - NOTICE_LOG(VIDEO, "detected direct rendering"); - } else { - ERROR_LOG(VIDEO, "no Direct Rendering possible!"); - } - - // better for pad plugin key input (thc) - XSelectInput(GLWin.dpy, GLWin.win, ExposureMask | KeyPressMask | KeyReleaseMask | - StructureNotifyMask | EnterWindowMask | LeaveWindowMask | FocusChangeMask ); + g_VideoInitialize.pRequestWindowSize(GLWin.x, GLWin.y, (int&)GLWin.width, (int&)GLWin.height); + XMoveResizeWindow(GLWin.dpy, GLWin.win, GLWin.x, GLWin.y, GLWin.width, GLWin.height); + return glXMakeCurrent(GLWin.dpy, GLWin.win, GLWin.ctx); #endif return true; } diff --git a/Source/Plugins/Plugin_VideoSoftware/Src/Renderer.cpp b/Source/Plugins/Plugin_VideoSoftware/Src/Renderer.cpp index 9088636965..52575900f3 100644 --- a/Source/Plugins/Plugin_VideoSoftware/Src/Renderer.cpp +++ b/Source/Plugins/Plugin_VideoSoftware/Src/Renderer.cpp @@ -40,9 +40,6 @@ void Renderer::Init(SVideoInitialize *_pVideoInitialize) _pVideoInitialize->pPeekMessages = g_VideoInitialize.pPeekMessages; _pVideoInitialize->pUpdateFPSDisplay = g_VideoInitialize.pUpdateFPSDisplay; _pVideoInitialize->pWindowHandle = g_VideoInitialize.pWindowHandle; -#if defined(HAVE_X11) && HAVE_X11 - _pVideoInitialize->pXWindow = g_VideoInitialize.pXWindow; -#endif } void Renderer::Shutdown() diff --git a/Source/Plugins/Plugin_Wiimote/Src/EmuMain.cpp b/Source/Plugins/Plugin_Wiimote/Src/EmuMain.cpp index c10224a7d8..aed99e318f 100644 --- a/Source/Plugins/Plugin_Wiimote/Src/EmuMain.cpp +++ b/Source/Plugins/Plugin_Wiimote/Src/EmuMain.cpp @@ -230,7 +230,7 @@ void GetMousePos(float& x, float& y) int root_x, root_y, win_x, win_y; if (IsFocus()) { - Window GLWin = *(Window *)g_WiimoteInitialize.pXWindow; + Window GLWin = (Window)g_WiimoteInitialize.hWnd; XWindowAttributes WinAttribs; XGetWindowAttributes (WMdisplay, GLWin, &WinAttribs); WinWidth = (float)WinAttribs.width; diff --git a/Source/Plugins/Plugin_Wiimote/Src/FillReport.cpp b/Source/Plugins/Plugin_Wiimote/Src/FillReport.cpp index 66c1a214b4..8e43d91fd5 100644 --- a/Source/Plugins/Plugin_Wiimote/Src/FillReport.cpp +++ b/Source/Plugins/Plugin_Wiimote/Src/FillReport.cpp @@ -358,7 +358,7 @@ bool IsKey(int Key) #if defined(HAVE_X11) && HAVE_X11 if (Key == EWM_SHAKE || Key == EWM_A || Key == EWM_B) { - Window GLWin = *(Window *)g_WiimoteInitialize.pXWindow; + Window GLWin = (Window)g_WiimoteInitialize.hWnd; int root_x, root_y, win_x, win_y; Window rootDummy, childWin; unsigned int mask; diff --git a/Source/Plugins/Plugin_Wiimote/Src/main.cpp b/Source/Plugins/Plugin_Wiimote/Src/main.cpp index 0807219654..f7ecad1b8e 100644 --- a/Source/Plugins/Plugin_Wiimote/Src/main.cpp +++ b/Source/Plugins/Plugin_Wiimote/Src/main.cpp @@ -40,7 +40,7 @@ #endif #if defined(HAVE_X11) && HAVE_X11 - Display* WMdisplay; + Display* WMdisplay = NULL; #endif SWiimoteInitialize g_WiimoteInitialize; PLUGIN_GLOBALS* globals = NULL; @@ -208,7 +208,7 @@ void Initialize(void *init) g_Config.Load(); #endif #if defined(HAVE_X11) && HAVE_X11 - WMdisplay = (Display*)g_WiimoteInitialize.hWnd; + WMdisplay = XOpenDisplay(NULL); #endif g_ISOId = g_WiimoteInitialize.ISOId; @@ -254,6 +254,11 @@ void Shutdown(void) WiiMoteReal::Shutdown(); #endif WiiMoteEmu::Shutdown(); + +#if defined(HAVE_X11) && HAVE_X11 + if (WMdisplay) + XCloseDisplay(WMdisplay); +#endif } diff --git a/Source/Plugins/Plugin_WiimoteNew/Src/WiimoteNew.cpp b/Source/Plugins/Plugin_WiimoteNew/Src/WiimoteNew.cpp index 6acf6538c3..46980ccb9f 100644 --- a/Source/Plugins/Plugin_WiimoteNew/Src/WiimoteNew.cpp +++ b/Source/Plugins/Plugin_WiimoteNew/Src/WiimoteNew.cpp @@ -281,7 +281,7 @@ void DllConfig(HWND _hParent) { #if defined(HAVE_X11) && HAVE_X11 Window win = GDK_WINDOW_XID(GTK_WIDGET(_hParent)->window); - InitPlugin(&win); + InitPlugin((void *)win); #else InitPlugin(_hParent); #endif @@ -346,11 +346,7 @@ void Initialize(void *init) { g_WiimoteInitialize = *(SWiimoteInitialize*)init; if ( false == g_plugin.controller_interface.IsInit() ) -#if defined(HAVE_X11) && HAVE_X11 - InitPlugin( g_WiimoteInitialize.pXWindow ); -#else InitPlugin( g_WiimoteInitialize.hWnd ); -#endif } // ___________________________________________________________________________