summaryrefslogtreecommitdiffstats
path: root/libvo/vo_xmga.c
diff options
context:
space:
mode:
authorpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-10-17 09:49:25 +0000
committerpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-10-17 09:49:25 +0000
commit7eadbc8831d075a383e82c0fda3ea68a3d219385 (patch)
tree0f1d7f126ba4960830d30f3e1afc149a95f43dd1 /libvo/vo_xmga.c
parent60c8189dd92322e2426c19795e82724f0b996e2a (diff)
downloadmpv-7eadbc8831d075a383e82c0fda3ea68a3d219385.tar.bz2
mpv-7eadbc8831d075a383e82c0fda3ea68a3d219385.tar.xz
-fixed-vo support
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7778 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo/vo_xmga.c')
-rw-r--r--libvo/vo_xmga.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/libvo/vo_xmga.c b/libvo/vo_xmga.c
index 3d2a688d3a..d3a157e24e 100644
--- a/libvo/vo_xmga.c
+++ b/libvo/vo_xmga.c
@@ -247,7 +247,9 @@ static uint32_t config( uint32_t width, uint32_t height, uint32_t d_width, uint3
} else {
- vo_window=XCreateWindow( mDisplay,mRootWin,
+ if ( vo_window == None )
+ {
+ vo_window=XCreateWindow( mDisplay,mRootWin,
vo_dx,vo_dy,
vo_dwidth,vo_dheight,
xWAttribs.border_pixel,
@@ -255,20 +257,22 @@ static uint32_t config( uint32_t width, uint32_t height, uint32_t d_width, uint3
InputOutput,
vinfo.visual,xswamask,&xWAttribs );
- vo_x11_classhint( mDisplay,vo_window,"xmga" );
- vo_hidecursor(mDisplay,vo_window);
- vo_x11_sizehint( vo_dx,vo_dy,vo_dwidth,vo_dheight,0 );
+ vo_x11_classhint( mDisplay,vo_window,"xmga" );
+ vo_hidecursor(mDisplay,vo_window);
+ vo_x11_sizehint( vo_dx,vo_dy,vo_dwidth,vo_dheight,0 );
- XStoreName( mDisplay,vo_window,mTitle );
- XMapWindow( mDisplay,vo_window );
+ XStoreName( mDisplay,vo_window,mTitle );
+ XMapWindow( mDisplay,vo_window );
- if ( flags&1 ) vo_x11_fullscreen();
+ if ( flags&1 ) vo_x11_fullscreen();
#ifdef HAVE_XINERAMA
- vo_x11_xinerama_move(mDisplay,vo_window);
+ vo_x11_xinerama_move(mDisplay,vo_window);
#endif
+ } else if ( !(flags&1) ) XMoveResizeWindow( mDisplay,vo_window,vo_dx,vo_dy,vo_dwidth,vo_dheight );
}
+ if ( vo_gc != None ) XFreeGC( mDisplay,vo_gc );
vo_gc=XCreateGC( mDisplay,vo_window,GCForeground,&wGCV );
} // !GUI
@@ -288,6 +292,8 @@ static uint32_t config( uint32_t width, uint32_t height, uint32_t d_width, uint3
XFlush( mDisplay );
XSync( mDisplay,False );
+
+ ioctl(f,MGA_VID_ON,0);
return 0;
}