CVS: rdesktop constants.h, 1.50, 1.51 ewmhints.c, 1.14, 1.15 xproto.h, 1.6, 1.7 xwin.c, 1.226, 1.227

Peter Åstrand <[email protected]> Thu, 06 Mar 2008 07:39:24 -0800
Newsgroups gmane.network.rdesktop.cvs
Message-ID <[email protected]>
Update of /cvsroot/rdesktop/rdesktop
In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv28732

Modified Files:
	constants.h ewmhints.c xproto.h xwin.c 
Log Message:
Applied rdesktop part of patch:

[ 1715359 ] seamlessrdp topmost windows



Index: constants.h
===================================================================
RCS file: /cvsroot/rdesktop/rdesktop/constants.h,v
retrieving revision 1.50
retrieving revision 1.51
diff -C2 -d -r1.50 -r1.51
*** constants.h	4 Jan 2007 05:39:38 -0000	1.50
--- constants.h	6 Mar 2008 15:39:21 -0000	1.51
***************
*** 426,429 ****
--- 426,430 ----
  
  #define SEAMLESSRDP_CREATE_MODAL	0x0001
+ #define SEAMLESSRDP_CREATE_TOPMOST	0x0002
  
  #define SEAMLESSRDP_HELLO_RECONNECT	0x0001

Index: ewmhints.c
===================================================================
RCS file: /cvsroot/rdesktop/rdesktop/ewmhints.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** ewmhints.c	18 Jun 2007 12:00:33 -0000	1.14
--- ewmhints.c	6 Mar 2008 15:39:21 -0000	1.15
***************
*** 37,41 ****
  	g_net_wm_state_hidden_atom, g_net_wm_name_atom, g_utf8_string_atom,
  	g_net_wm_state_skip_taskbar_atom, g_net_wm_state_skip_pager_atom,
! 	g_net_wm_state_modal_atom, g_net_wm_icon_atom;
  
  Atom g_net_wm_state_atom, g_net_wm_desktop_atom;
--- 37,41 ----
  	g_net_wm_state_hidden_atom, g_net_wm_name_atom, g_utf8_string_atom,
  	g_net_wm_state_skip_taskbar_atom, g_net_wm_state_skip_pager_atom,
! 	g_net_wm_state_modal_atom, g_net_wm_icon_atom, g_net_wm_state_above_atom;
  
  Atom g_net_wm_state_atom, g_net_wm_desktop_atom;
***************
*** 187,190 ****
--- 187,191 ----
  	g_net_wm_state_skip_pager_atom = XInternAtom(g_display, "_NET_WM_STATE_SKIP_PAGER", False);
  	g_net_wm_state_modal_atom = XInternAtom(g_display, "_NET_WM_STATE_MODAL", False);
+ 	g_net_wm_state_above_atom = XInternAtom(g_display, "_NET_WM_STATE_ABOVE", False);
  	g_net_wm_state_atom = XInternAtom(g_display, "_NET_WM_STATE", False);
  	g_net_wm_desktop_atom = XInternAtom(g_display, "_NET_WM_DESKTOP", False);
***************
*** 534,537 ****
--- 535,546 ----
  }
  
+ int
+ ewmh_set_window_above(Window wnd)
+ {
+ 	if (ewmh_modify_state(wnd, 1, g_net_wm_state_above_atom, 0) < 0)
+ 		return -1;
+ 	return 0;
+ }
+ 
  #endif /* MAKE_PROTO */
  

Index: xproto.h
===================================================================
RCS file: /cvsroot/rdesktop/rdesktop/xproto.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** xproto.h	18 Jun 2007 12:00:33 -0000	1.6
--- xproto.h	6 Mar 2008 15:39:21 -0000	1.7
***************
*** 12,13 ****
--- 12,14 ----
  void ewmh_set_icon(Window wnd, int width, int height, const char *rgba_data);
  void ewmh_del_icon(Window wnd, int width, int height);
+ int ewmh_set_window_above(Window wnd);

Index: xwin.c
===================================================================
RCS file: /cvsroot/rdesktop/rdesktop/xwin.c,v
retrieving revision 1.226
retrieving revision 1.227
diff -C2 -d -r1.226 -r1.227
*** xwin.c	30 Aug 2007 04:47:36 -0000	1.226
--- xwin.c	6 Mar 2008 15:39:21 -0000	1.227
***************
*** 3453,3456 ****
--- 3453,3462 ----
  	}
  
+ 	if (flags & SEAMLESSRDP_CREATE_TOPMOST)
+ 	{
+ 		/* Make window always-on-top */
+ 		ewmh_set_window_above(wnd);
+ 	}
+ 
  	/* FIXME: Support for Input Context:s */
  
***************
*** 3707,3710 ****
--- 3713,3722 ----
  
  	sw_restack_window(sw, behind);
+ 
+ 	if (flags & SEAMLESSRDP_CREATE_TOPMOST)
+ 	{
+ 		/* Make window always-on-top */
+ 		ewmh_set_window_above(sw->wnd);
+ 	}
  }
  


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/