aboutsummaryrefslogtreecommitdiffhomepage
path: root/Gui/wm
diff options
context:
space:
mode:
authorGravatar reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-07-11 18:40:02 +0000
committerGravatar reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-07-11 18:40:02 +0000
commit9f4c23ecc5d2dd0732634c1581b6a99cee0ecd63 (patch)
treeee19261cd606d5b0e58bf017cae6302292f062c6 /Gui/wm
parentb6091747f13eff9151817e3541c77a002517b359 (diff)
Somewhat fix Gui with xinerama, reuse existing code, maybe one day the Gui will
consist of something besides duplicate code. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19017 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'Gui/wm')
-rw-r--r--Gui/wm/ws.c30
1 files changed, 12 insertions, 18 deletions
diff --git a/Gui/wm/ws.c b/Gui/wm/ws.c
index 3edb6d245d..5e2e010bf3 100644
--- a/Gui/wm/ws.c
+++ b/Gui/wm/ws.c
@@ -237,24 +237,6 @@ wsXDNDInitialize();
wsScreen=DefaultScreen( wsDisplay );
wsRootWin=RootWindow( wsDisplay,wsScreen );
-#ifdef HAVE_XINERAMA
- if(XineramaIsActive(wsDisplay))
- {
- XineramaScreenInfo *screens;
- int num_screens;
-
- screens = XineramaQueryScreens(wsDisplay, &num_screens);
- if(xinerama_screen >= num_screens) xinerama_screen = 0;
- wsOrgX = screens[xinerama_screen].x_org;
- wsOrgY = screens[xinerama_screen].y_org;
- wsMaxX=screens[xinerama_screen].width;
- wsMaxY=screens[xinerama_screen].height;
- mp_msg( MSGT_GPLAYER,MSGL_V,"[ws] screens %d Max %d, %d Org %d,%d\n",
- num_screens, wsMaxX, wsMaxY, wsOrgX, wsOrgY);
- XFree(screens);
- }
- else
-#endif
#ifdef HAVE_XF86VM
{
int clock;
@@ -272,6 +254,11 @@ wsXDNDInitialize();
if ( !wsMaxY )
wsMaxY=DisplayHeight( wsDisplay,wsScreen );
}
+ vo_screenwidth = wsMaxX; vo_screenheight = wsMaxY;
+ xinerama_x = wsOrgX; xinerama_y = wsOrgY;
+ update_xinerama_info();
+ wsMaxX = vo_screenwidth; wsMaxY = vo_screenheight;
+ wsOrgX = xinerama_x; wsOrgY = xinerama_y;
wsGetDepthOnScreen();
#ifdef DEBUG
@@ -794,6 +781,13 @@ void wsFullScreen( wsTWindow * win )
{
win->OldX=win->X; win->OldY=win->Y;
win->OldWidth=win->Width; win->OldHeight=win->Height;
+ vo_dx = win->X; vo_dy = win->Y;
+ vo_dwidth = win->Width; vo_dheight = win->Height;
+ vo_screenwidth = wsMaxX; vo_screenheight = wsMaxY;
+ xinerama_x = wsOrgX; xinerama_y = wsOrgY;
+ update_xinerama_info();
+ wsMaxX = vo_screenwidth; wsMaxY = vo_screenheight;
+ wsOrgX = xinerama_x; wsOrgY = xinerama_y;
win->X=wsOrgX; win->Y=wsOrgY;
win->Width=wsMaxX; win->Height=wsMaxY;
}