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
This commit is contained in:
Glenn Rice
2010-07-16 14:14:57 +00:00
parent 665d83ed45
commit 02ce753b76
18 changed files with 40 additions and 98 deletions
+1 -1
View File
@@ -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
+3 -2
View File
@@ -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
+3 -3
View File
@@ -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
+6 -9
View File
@@ -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;
+3 -3
View File
@@ -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);