summaryrefslogtreecommitdiffstats
path: root/libvo
diff options
context:
space:
mode:
authorarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-09-28 22:37:20 +0000
committerarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-09-28 22:37:20 +0000
commit8ded55d12f862aa2ef4a663f29025dbc33445bb2 (patch)
tree36036f593de5afb5ed35fc9663b824e1052fd86d /libvo
parentf73a875f011a53d73d189b51324095cd65221363 (diff)
downloadmpv-8ded55d12f862aa2ef4a663f29025dbc33445bb2.tar.bz2
mpv-8ded55d12f862aa2ef4a663f29025dbc33445bb2.tar.xz
fullscreen fixes, based on mail by Havoc Pennington <hp@redhat.com>
- it should not set _NET_WM_STATE_STAYS_ON_TOP, this hint does not exist in the spec (http://www.freedesktop.org/standards/wm-spec/1.2/html/x224.html) and _NET_WM_STATE_FULLSCREEN already implies "on top" so there's no need to set this. it should set _NET_WM_STATE_FULLSCREEN instead, I don't currently see code to set _NET_WM_STATE_FULLSCREEN - the XUnmapWindow() after sending the client message is officially speaking breaking the spec, should be XWithdrawWindow(). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7543 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo')
-rw-r--r--libvo/x11_common.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libvo/x11_common.c b/libvo/x11_common.c
index 0977048988..fc2b8e076e 100644
--- a/libvo/x11_common.c
+++ b/libvo/x11_common.c
@@ -667,7 +667,8 @@ void vo_x11_setlayer( int layer )
e.xclient.window=vo_window;
e.xclient.format=32;
e.xclient.data.l[0]=layer;
- e.xclient.data.l[1]=XInternAtom( mDisplay,"_NET_WM_STATE_STAYS_ON_TOP",False );
+// e.xclient.data.l[1]=XInternAtom( mDisplay,"_NET_WM_STATE_STAYS_ON_TOP",False );
+ e.xclient.data.l[1]=XInternAtom( mDisplay,"_NET_WM_STATE_FULLSCREEN",False );
XSendEvent( mDisplay,mRootWin,False,SubstructureRedirectMask,&e );
XFree( args );
@@ -723,7 +724,8 @@ void vo_x11_fullscreen( void )
vo_x11_sizehint( x,y,w,h,0 );
vo_x11_setlayer( vo_fs );
if(vo_wm_type==vo_wm_Unknown && !(vo_fsmode&16))
- XUnmapWindow( mDisplay,vo_window ); // required for MWM
+// XUnmapWindow( mDisplay,vo_window ); // required for MWM
+ XWithdrawWindow(mDisplay,vo_window,mScreen);
XMoveResizeWindow( mDisplay,vo_window,x,y,w,h );
#ifdef HAVE_XINERAMA
vo_x11_xinerama_move(mDisplay,vo_window);