summaryrefslogtreecommitdiffstats
path: root/libvo
diff options
context:
space:
mode:
authorattila <attila@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-04-13 11:08:59 +0000
committerattila <attila@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-04-13 11:08:59 +0000
commitd48f39e68c4f22d8f0b58bc8cc38f806ba8f5dd6 (patch)
tree1a7559f9583d8d5f8dd8cf8f5494385f65ce4212 /libvo
parent4be1fe461f3d976667ff937fb82f49601002c9c3 (diff)
downloadmpv-d48f39e68c4f22d8f0b58bc8cc38f806ba8f5dd6.tar.bz2
mpv-d48f39e68c4f22d8f0b58bc8cc38f806ba8f5dd6.tar.xz
Always calculate the xinerama screen mplayer is on.
Bug reported by thomas.lindroth(<at>)gmail.com git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26437 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo')
-rw-r--r--libvo/x11_common.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/libvo/x11_common.c b/libvo/x11_common.c
index 2ed8ff31c6..205fa2987d 100644
--- a/libvo/x11_common.c
+++ b/libvo/x11_common.c
@@ -368,6 +368,9 @@ static void init_atoms(void)
void update_xinerama_info(void) {
int screen = xinerama_screen;
+ // center coordinates of the window
+ int x = vo_dx + vo_dwidth / 2;
+ int y = vo_dy + vo_dheight / 2;
xinerama_x = xinerama_y = 0;
#ifdef HAVE_XINERAMA
if (screen >= -1 && XineramaIsActive(mDisplay))
@@ -376,11 +379,6 @@ void update_xinerama_info(void) {
int num_screens;
screens = XineramaQueryScreens(mDisplay, &num_screens);
- if (screen >= num_screens)
- screen = num_screens - 1;
- if (screen == -1) {
- int x = vo_dx + vo_dwidth / 2;
- int y = vo_dy + vo_dheight / 2;
for (screen = num_screens - 1; screen > 0; screen--) {
int left = screens[screen].x_org;
int right = left + screens[screen].width;
@@ -389,7 +387,6 @@ void update_xinerama_info(void) {
if (left <= x && x <= right && top <= y && y <= bottom)
break;
}
- }
if (screen < 0)
screen = 0;
vo_screenwidth = screens[screen].width;