changeset 12125:f4fc74a88e65

full screen flipping synchronization corrections (by Adam Tla/lka)
author rathann
date Mon, 05 Apr 2004 21:35:30 +0000
parents 83274c97be9e
children 6a38dc4ead51
files libvo/x11_common.c
diffstat 1 files changed, 4 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/libvo/x11_common.c	Mon Apr 05 21:34:04 2004 +0000
+++ b/libvo/x11_common.c	Mon Apr 05 21:35:30 2004 +0000
@@ -78,6 +78,7 @@
 int vo_mouse_autohide = 0;
 int vo_wm_type = 0;
 static int vo_fs_type = 0;
+static int vo_fs_flip = 0;
 char** vo_fstype_list;
 
 /* if equal to 1 means that WM is a metacity (broken as hell) */
@@ -814,6 +815,7 @@
       case MapNotify:
 		vo_hint.win_gravity = old_gravity;
 		XSetWMNormalHints( mDisplay,vo_window,&vo_hint );
+		vo_fs_flip = 0;
 	   break;
      }
   }
@@ -1056,7 +1058,7 @@
 {
  int x,y,w,h;
 
- if ( WinID >= 0 ) return;
+ if ( WinID >= 0 || vo_fs_flip) return;
 
  if ( vo_fs ){
    // fs->win
@@ -1084,6 +1086,7 @@
  if(vo_wm_type==0 && !(vo_fsmode&16)) {
     XUnmapWindow( mDisplay,vo_window );  // required for MWM
     XWithdrawWindow(mDisplay,vo_window,mScreen);
+    vo_fs_flip = 1;
  }
 
  vo_x11_decoration( mDisplay,vo_window,(vo_fs) ? 0 : 1 );