aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRainer Hochecker <fernetmenta@online.de>2014-08-20 14:57:07 +0200
committerRainer Hochecker <fernetmenta@online.de>2014-08-20 16:43:50 +0200
commit6e7bc91d28c232676ae41abf4d819e598c019bdd (patch)
treea6e720cb9defc91204f81e7ab0ca39d3c4bf57e8
parent303d857f98601967a4ff5ddb2592c3d8963a3081 (diff)
X11: fix multi-monitor setups after recent changes of X servers
-rw-r--r--xbmc/windowing/X11/WinSystemX11.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/xbmc/windowing/X11/WinSystemX11.cpp b/xbmc/windowing/X11/WinSystemX11.cpp
index 018a4d2ebb..60761ec050 100644
--- a/xbmc/windowing/X11/WinSystemX11.cpp
+++ b/xbmc/windowing/X11/WinSystemX11.cpp
@@ -776,6 +776,8 @@ bool CWinSystemX11::SetWindow(int width, int height, bool fullscreen, const std:
bool mouseActive = false;
float mouseX = 0;
float mouseY = 0;
+ int x0 = 0;
+ int y0 = 0;
if (m_mainWindow && ((m_bFullScreen != fullscreen) || m_currentOutput.compare(output) != 0 || m_windowDirty))
{
@@ -823,8 +825,6 @@ bool CWinSystemX11::SetWindow(int width, int height, bool fullscreen, const std:
Colormap cmap;
XSetWindowAttributes swa;
XVisualInfo *vi;
- int x0 = 0;
- int y0 = 0;
XOutput *out = g_xrandr.GetOutput(output);
if (!out)
@@ -944,6 +944,10 @@ bool CWinSystemX11::SetWindow(int width, int height, bool fullscreen, const std:
}
XMapRaised(m_dpy, m_glWindow);
XMapRaised(m_dpy, m_mainWindow);
+
+ if (fullscreen)
+ XMoveWindow(m_dpy, m_mainWindow, x0, y0);
+
XSync(m_dpy,TRUE);
if (changeWindow && mouseActive)