summaryrefslogtreecommitdiffstats
path: root/libvo/x11_common.c
diff options
context:
space:
mode:
authorpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-10-01 14:37:01 +0000
committerpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-10-01 14:37:01 +0000
commit690bccca999e83ff636a4d935e9c5212871ac1e2 (patch)
treed7b7bb2f6d49f4ce42c1072cb20790dd5b45cb6b /libvo/x11_common.c
parent3ef4629545772e39aeed57195521e78fe5c08aaa (diff)
downloadmpv-690bccca999e83ff636a4d935e9c5212871ac1e2.tar.bz2
mpv-690bccca999e83ff636a4d935e9c5212871ac1e2.tar.xz
_NET_WM_FULLSCREEN support
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7573 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo/x11_common.c')
-rw-r--r--libvo/x11_common.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/libvo/x11_common.c b/libvo/x11_common.c
index e13730d6ba..4ee2ec90db 100644
--- a/libvo/x11_common.c
+++ b/libvo/x11_common.c
@@ -635,7 +635,7 @@ void vo_x11_setlayer( int layer )
Atom type;
int format;
unsigned long nitems, bytesafter;
- unsigned char * args = NULL;
+ Atom * args = NULL;
if ( WinID >= 0 ) return;
@@ -658,6 +658,7 @@ void vo_x11_setlayer( int layer )
if ( Success == XGetWindowProperty( mDisplay,mRootWin,type,0,16384,False,AnyPropertyType,&type,&format,&nitems,&bytesafter,&args ) && nitems > 0 )
{
XEvent e;
+ int i;
mp_dbg( MSGT_VO,MSGL_STATUS,"[x11] NET style stay on top ( layer %d ).\n",layer );
memset( &e,0,sizeof( e ) );
@@ -667,8 +668,12 @@ 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_FULLSCREEN",False );
+ type=XInternAtom( mDisplay,"_NET_WM_STATE_FULLSCREEN",False );
+ for ( i=0;i < nitems;i++ )
+ if ( args[i] == type ) { e.xclient.data.l[1]=XInternAtom( mDisplay,"_NET_WM_STATE_FULLSCREEN",False ); break; }
+
XSendEvent( mDisplay,mRootWin,False,SubstructureRedirectMask,&e );
XFree( args );