diff --git a/Source/Plugins/Plugin_GCPad/Src/GCPad.cpp b/Source/Plugins/Plugin_GCPad/Src/GCPad.cpp index d399144c61..ec361eb751 100644 --- a/Source/Plugins/Plugin_GCPad/Src/GCPad.cpp +++ b/Source/Plugins/Plugin_GCPad/Src/GCPad.cpp @@ -656,7 +656,9 @@ bool IsFocus() Window FocusWin; int Revert; XGetInputFocus(GCdisplay, &FocusWin, &Revert); - return (GLWin != 0 && GLWin == FocusWin); + XWindowAttributes WinAttribs; + XGetWindowAttributes (WMdisplay, GLWin, &WinAttribs); + return (GLWin != 0 && (GLWin == FocusWin || WinAttribs.override_redirect)); #else return true; #endif diff --git a/Source/Plugins/Plugin_Wiimote/Src/main.cpp b/Source/Plugins/Plugin_Wiimote/Src/main.cpp index b0840114e7..b09ede8cc0 100644 --- a/Source/Plugins/Plugin_Wiimote/Src/main.cpp +++ b/Source/Plugins/Plugin_Wiimote/Src/main.cpp @@ -403,7 +403,9 @@ bool IsFocus() Window FocusWin; int Revert; XGetInputFocus(WMdisplay, &FocusWin, &Revert); - return (GLWin != 0 && GLWin == FocusWin); + XWindowAttributes WinAttribs; + XGetWindowAttributes (WMdisplay, GLWin, &WinAttribs); + return (GLWin != 0 && (GLWin == FocusWin || WinAttribs.override_redirect)); #else return true; #endif