Index: vo_gl2.c =================================================================== RCS file: /cvsroot/mplayer/main/libvo/vo_gl2.c,v retrieving revision 1.40 diff -u -r1.40 vo_gl2.c --- vo_gl2.c 22 Feb 2004 15:30:01 -0000 1.40 +++ vo_gl2.c 24 Feb 2004 21:09:54 -0000 @@ -677,23 +677,11 @@ XVisualInfo *vinfo, vinfo_buf; XEvent xev; - if( flags&0x01 ) - { - vo_fs = VO_TRUE; - aspect(&d_width,&d_height,A_ZOOM); - hint.x = 0; - hint.y = 0; - hint.width = vo_screenwidth; - hint.height = vo_screenheight; - hint.flags = PPosition | PSize; - } else { - vo_fs = VO_FALSE; - hint.x = 0; - hint.y = 0; - hint.width = d_width; - hint.height = d_height; - hint.flags = PPosition | PSize; - } + hint.x = 0; + hint.y = 0; + hint.width = d_width; + hint.height = d_height; + hint.flags = PPosition | PSize; /* Make the window */ @@ -709,9 +697,11 @@ if ( vo_window == None ) { + vo_fs = VO_FALSE; + vo_dwidth = d_width; + vo_dheight = d_height; vo_window = vo_x11_create_smooth_window(mDisplay, RootWindow(mDisplay,mScreen), vinfo->visual, hint.x, hint.y, hint.width, hint.height, vinfo->depth, vo_x11_create_colormap(vinfo)); - if ( flags&0x01 ) vo_x11_decoration( mDisplay,vo_window,0 ); XSelectInput(mDisplay, vo_window, StructureNotifyMask); @@ -742,6 +732,9 @@ if ( !(flags&1) ) XMoveResizeWindow( mDisplay,vo_window,hint.x,hint.y,hint.width,hint.height ); } + if (flags & VOFLAG_FULLSCREEN ^ vo_fs) // current and wanted fs mode differ + vo_x11_fullscreen(); + vo_x11_classhint( mDisplay,vo_window,"gl2" ); vo_hidecursor(mDisplay,vo_window); @@ -837,8 +830,6 @@ image_height = height; image_width = width; - vo_dwidth = d_width; - vo_dheight = d_height; image_format = format; int_pause = 0;