[MPlayer-dev-eng] [PATCH] Fix for vo_gl2 fullscreen mode
Attila Kinali
attila at kinali.ch
Thu Feb 26 09:58:16 CET 2004
On Wed, 25 Feb 2004 22:46:16 +0100
Reimar Döffinger <Reimar.Doeffinger at stud.uni-karlsruhe.de> wrote:
> Hi,
> already found the first bugs... Please have a look at this patch instead.
> And please keep in mind that I don't really know what I'm doing - I
> mostly do some tests and up to now this version gave the best results.
Just let me know when you think it can be applied to cvs.
> I'd especially like to know if there is any special reason for this line:
> XSelectInput(mDisplay, vo_window, NoEventMask);
IMHO it looks fishy. Dunno why anyone want to disable all event.s
>
> [gl2_fs_fix2.diff text/plain (2115 bytes)]
> 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 25 Feb 2004 21:44:36 -0000
> @@ -677,23 +677,14 @@
> 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;
> + vo_dwidth = d_width;
> + vo_dheight = d_height;
> hint.x = 0;
> hint.y = 0;
> hint.width = d_width;
> hint.height = d_height;
> hint.flags = PPosition | PSize;
> - }
>
> /* Make the window */
>
> @@ -711,7 +702,6 @@
> {
> 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);
>
> @@ -733,15 +723,15 @@
> XNextEvent(mDisplay, &xev);
> }
> while (xev.type != MapNotify || xev.xmap.event != vo_window);
> -
> - XSelectInput(mDisplay, vo_window, NoEventMask);
> -
Dunno...Looks wrong to me
> }
> else {
> vo_x11_sizehint( hint.x, hint.y, hint.width, hint.height,0 );
> - if ( !(flags&1) ) XMoveResizeWindow( mDisplay,vo_window,hint.x,hint.y,hint.width,hint.height );
> + XMoveResizeWindow( mDisplay,vo_window,hint.x,hint.y,hint.width,hint.height );
Why do you removed the "if" here ?
> }
>
> + if (flags & VOFLAG_FULLSCREEN)
> + vo_x11_fullscreen();
> +
> vo_x11_classhint( mDisplay,vo_window,"gl2" );
> vo_hidecursor(mDisplay,vo_window);
>
> @@ -837,8 +827,6 @@
>
> image_height = height;
> image_width = width;
> - vo_dwidth = d_width;
> - vo_dheight = d_height;
> image_format = format;
>
> int_pause = 0;
Otherwise it looks ok.
Attila Kinali
--
egp ist vergleichbar mit einem ikea bausatz fuer flugzeugtraeger
-- reeler in +kaosu
More information about the MPlayer-dev-eng
mailing list