CVS: main/libvo video_out.c,1.57,1.58 video_out.h,1.41,1.42 x11_common.c,1.97,1.98
Update of /cvsroot/mplayer/main/libvo In directory mail:/var/tmp.root/cvs-serv26593 Modified Files: video_out.c video_out.h x11_common.c Log Message: d_width==screenwidth && -fs hopefully fixed Index: video_out.c =================================================================== RCS file: /cvsroot/mplayer/main/libvo/video_out.c,v retrieving revision 1.57 retrieving revision 1.58 diff -u -r1.57 -r1.58 --- video_out.c 9 Sep 2002 20:03:21 -0000 1.57 +++ video_out.c 18 Sep 2002 01:22:03 -0000 1.58 @@ -30,11 +30,6 @@ int vo_dheight=0; int vo_dbpp=0; -int vo_old_x = 0; -int vo_old_y = 0; -int vo_old_width = 0; -int vo_old_height = 0; - int vo_doublebuffering = 0; int vo_vsync = 0; int vo_fs = 0; Index: video_out.h =================================================================== RCS file: /cvsroot/mplayer/main/libvo/video_out.h,v retrieving revision 1.41 retrieving revision 1.42 diff -u -r1.41 -r1.42 --- video_out.h 28 Aug 2002 21:32:31 -0000 1.41 +++ video_out.h 18 Sep 2002 01:22:03 -0000 1.42 @@ -170,11 +170,6 @@ extern int vo_dheight; extern int vo_dbpp; -extern int vo_old_x; -extern int vo_old_y; -extern int vo_old_width; -extern int vo_old_height; - extern int vo_doublebuffering; extern int vo_directrendering; extern int vo_vsync; Index: x11_common.c =================================================================== RCS file: /cvsroot/mplayer/main/libvo/x11_common.c,v retrieving revision 1.97 retrieving revision 1.98 diff -u -r1.97 -r1.98 --- x11_common.c 3 Sep 2002 18:10:42 -0000 1.97 +++ x11_common.c 18 Sep 2002 01:22:03 -0000 1.98 @@ -66,6 +66,12 @@ int vo_mouse_autohide = 0; int vo_wm_type = -1; +static int vo_old_x = 0; +static int vo_old_y = 0; +static int vo_old_width = 0; +static int vo_old_height = 0; + + #ifdef HAVE_XINERAMA int xinerama_screen = 0; int xinerama_x = 0; @@ -495,6 +501,7 @@ vo_window=None; } vo_fs=0; + vo_old_width=vo_old_height=0; } } @@ -529,8 +536,8 @@ ret|=VO_EVENT_EXPOSE; break; case ConfigureNotify: - if (!vo_fs && (Event.xconfigure.width == vo_screenwidth || Event.xconfigure.height == vo_screenheight)) break; - if (vo_fs && Event.xconfigure.width != vo_screenwidth && Event.xconfigure.height != vo_screenheight) break; +// if (!vo_fs && (Event.xconfigure.width == vo_screenwidth || Event.xconfigure.height == vo_screenheight)) break; +// if (vo_fs && Event.xconfigure.width != vo_screenwidth && Event.xconfigure.height != vo_screenheight) break; vo_dwidth=Event.xconfigure.width; vo_dheight=Event.xconfigure.height; #if 0 @@ -693,16 +700,24 @@ void vo_x11_fullscreen( void ) { - int x=0,y=0,w=vo_screenwidth,h=vo_screenheight; + int x,y,w,h; if ( WinID >= 0 ) return; - if ( !vo_fs && (vo_dwidth == vo_screenwidth || vo_dheight == vo_screenheight)) return; - if ( vo_fs && vo_dwidth != vo_screenwidth && vo_dheight != vo_screenheight) return; - - if ( vo_fs ) - { vo_fs=VO_FALSE; x=vo_old_x; y=vo_old_y; w=vo_old_width; h=vo_old_height; } - else { vo_fs=VO_TRUE; vo_old_x=vo_dx; vo_old_y=vo_dy; vo_old_width=vo_dwidth; vo_old_height=vo_dheight; } + if ( vo_fs ){ + // fs->win + if(vo_dwidth != vo_screenwidth && vo_dheight != vo_screenheight) return; + vo_fs=VO_FALSE; + x=vo_old_x; y=vo_old_y; w=vo_old_width; h=vo_old_height; + } else { + // win->fs + if(vo_old_width && + (vo_dwidth==vo_screenwidth && vo_dwidth!=vo_old_width) && + (vo_dheight==vo_screenheight && vo_dheight!=vo_old_height) ) return; + vo_fs=VO_TRUE; + vo_old_x=vo_dx; vo_old_y=vo_dy; vo_old_width=vo_dwidth; vo_old_height=vo_dheight; + x=0; y=0; w=vo_screenwidth; h=vo_screenheight; + } vo_x11_decoration( mDisplay,vo_window,(vo_fs) ? 0 : 1 ); vo_x11_sizehint( x,y,w,h,0 );
participants (1)
-
Arpi of Ize