Function to get a range of information about all the children of a window
Fri Jul 4 23:49:22 2003 Owen Taylor <otaylor@redhat.com> * gdk/x11/gdkasync.[ch] (_gdk_x11_get_window_child_info): Function to get a range of information about all the children of a window in a single pass. * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse) gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Use _gdk_x11_get_window_child_info() to greatly reduce the number of roundtrips.
This commit is contained in:
		| @ -26,11 +26,25 @@ | ||||
|  | ||||
| G_BEGIN_DECLS | ||||
|  | ||||
| typedef struct _GdkChildInfoX11 GdkChildInfoX11; | ||||
|  | ||||
| typedef void (*GdkSendXEventCallback) (Window   window, | ||||
| 				       gboolean success, | ||||
| 				       gpointer data); | ||||
|  | ||||
| void _gdk_send_xevent_async        (GdkDisplay            *display, | ||||
| struct _GdkChildInfoX11 | ||||
| { | ||||
|   Window window; | ||||
|   gint x; | ||||
|   gint y; | ||||
|   gint width; | ||||
|   gint height; | ||||
|   guint is_mapped : 1; | ||||
|   guint has_wm_state : 1; | ||||
|   guint window_class : 2; | ||||
| }; | ||||
|  | ||||
| void _gdk_x11_send_xevent_async    (GdkDisplay            *display, | ||||
| 				    Window                 window, | ||||
| 				    gboolean               propagate, | ||||
| 				    glong                  event_mask, | ||||
| @ -42,6 +56,12 @@ void _gdk_x11_set_input_focus_safe (GdkDisplay            *display, | ||||
| 				    int                    revert_to, | ||||
| 				    Time                   time); | ||||
|  | ||||
| gboolean _gdk_x11_get_window_child_info (GdkDisplay       *display, | ||||
| 					 Window            window, | ||||
| 					 gboolean          get_wm_state, | ||||
| 					 GdkChildInfoX11 **children, | ||||
| 					 guint            *nchildren); | ||||
|  | ||||
| G_END_DECLS | ||||
|  | ||||
| #endif /* __GDK_ASYNC_H__ */ | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Owen Taylor
					Owen Taylor