[PATCH 2/3] Prefix all ICCCM public functions, types and macros by 'icccm'.

Arnaud Fontaine arnau at debian.org
Sat Sep 4 08:09:56 PDT 2010


By convention, all public functions, types and macros of other
xcb/util libraries are prefixed by their name, and so should icccm.

The library SONAME has been bumped since this commit completely breaks
the interface.
---
 icccm/Makefile.am |    2 +-
 icccm/icccm.c     |  494 +++++++++++++++++++-------------------
 icccm/xcb_icccm.h |  706 ++++++++++++++++++++++++++--------------------------
 3 files changed, 601 insertions(+), 601 deletions(-)

diff --git a/icccm/Makefile.am b/icccm/Makefile.am
index 2e7f8ca..f333384 100644
--- a/icccm/Makefile.am
+++ b/icccm/Makefile.am
@@ -10,7 +10,7 @@ AM_CFLAGS = $(CWARNFLAGS)
 libxcb_icccm_la_SOURCES = icccm.c
 libxcb_icccm_la_CPPFLAGS = $(XCB_CFLAGS) $(XPROTO_CFLAGS)
 libxcb_icccm_la_LIBADD = $(XCB_LIBS) $(XPROTO_LIBS)
-libxcb_icccm_la_LDFLAGS = -version-info 3:0:0
+libxcb_icccm_la_LDFLAGS = -version-info 4:0:0
 
 pkgconfig_DATA = xcb-icccm.pc
 
diff --git a/icccm/icccm.c b/icccm/icccm.c
index b06d683..ed623d0 100644
--- a/icccm/icccm.c
+++ b/icccm/icccm.c
@@ -36,26 +36,26 @@
 #include "xcb_icccm.h"
 
 xcb_get_property_cookie_t
-xcb_get_text_property(xcb_connection_t *c,
-                      xcb_window_t window,
-                      xcb_atom_t property)
+xcb_icccm_get_text_property(xcb_connection_t *c,
+                            xcb_window_t window,
+                            xcb_atom_t property)
 {
   return xcb_get_property(c, 0, window, property, XCB_GET_PROPERTY_TYPE_ANY, 0, UINT_MAX);
 }
 
 xcb_get_property_cookie_t
-xcb_get_text_property_unchecked(xcb_connection_t *c,
-                                xcb_window_t window,
-                                xcb_atom_t property)
+xcb_icccm_get_text_property_unchecked(xcb_connection_t *c,
+                                      xcb_window_t window,
+                                      xcb_atom_t property)
 {
   return xcb_get_property_unchecked(c, 0, window, property, XCB_GET_PROPERTY_TYPE_ANY, 0, UINT_MAX);
 }
 
 uint8_t
-xcb_get_text_property_reply(xcb_connection_t *c,
-                            xcb_get_property_cookie_t cookie,
-                            xcb_get_text_property_reply_t *prop,
-                            xcb_generic_error_t **e)
+xcb_icccm_get_text_property_reply(xcb_connection_t *c,
+                                  xcb_get_property_cookie_t cookie,
+                                  xcb_icccm_get_text_property_reply_t *prop,
+                                  xcb_generic_error_t **e)
 {
   xcb_get_property_reply_t *reply = xcb_get_property_reply(c, cookie, e);
 
@@ -74,7 +74,7 @@ xcb_get_text_property_reply(xcb_connection_t *c,
 }
 
 void
-xcb_get_text_property_reply_wipe(xcb_get_text_property_reply_t *prop)
+xcb_icccm_get_text_property_reply_wipe(xcb_icccm_get_text_property_reply_t *prop)
 {
   free(prop->_reply);
 }
@@ -82,9 +82,9 @@ xcb_get_text_property_reply_wipe(xcb_get_text_property_reply_t *prop)
 /* WM_NAME */
 
 xcb_void_cookie_t
-xcb_set_wm_name_checked(xcb_connection_t *c, xcb_window_t window,
-                        xcb_atom_t encoding, uint8_t format,
-                        uint32_t name_len, const char *name)
+xcb_icccm_set_wm_name_checked(xcb_connection_t *c, xcb_window_t window,
+                              xcb_atom_t encoding, uint8_t format,
+                              uint32_t name_len, const char *name)
 {
   return xcb_change_property_checked(c, XCB_PROP_MODE_REPLACE, window,
                                      XCB_ATOM_WM_NAME, encoding, format,
@@ -92,8 +92,8 @@ xcb_set_wm_name_checked(xcb_connection_t *c, xcb_window_t window,
 }
 
 xcb_void_cookie_t
-xcb_set_wm_name(xcb_connection_t *c, xcb_window_t window, xcb_atom_t encoding,
-                uint8_t format, uint32_t name_len, const char *name)
+xcb_icccm_set_wm_name(xcb_connection_t *c, xcb_window_t window, xcb_atom_t encoding,
+                      uint8_t format, uint32_t name_len, const char *name)
 {
   return xcb_change_property(c, XCB_PROP_MODE_REPLACE, window,
                              XCB_ATOM_WM_NAME, encoding, format, name_len,
@@ -101,34 +101,34 @@ xcb_set_wm_name(xcb_connection_t *c, xcb_window_t window, xcb_atom_t encoding,
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_name(xcb_connection_t *c,
-                xcb_window_t window)
+xcb_icccm_get_wm_name(xcb_connection_t *c,
+                      xcb_window_t window)
 {
-  return xcb_get_text_property(c, window, XCB_ATOM_WM_NAME);
+  return xcb_icccm_get_text_property(c, window, XCB_ATOM_WM_NAME);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_name_unchecked(xcb_connection_t *c,
-                          xcb_window_t window)
+xcb_icccm_get_wm_name_unchecked(xcb_connection_t *c,
+                                xcb_window_t window)
 {
-  return xcb_get_text_property_unchecked(c, window, XCB_ATOM_WM_NAME);
+  return xcb_icccm_get_text_property_unchecked(c, window, XCB_ATOM_WM_NAME);
 }
 
 uint8_t
-xcb_get_wm_name_reply(xcb_connection_t *c,
-                      xcb_get_property_cookie_t cookie,
-                      xcb_get_text_property_reply_t *prop,
-                      xcb_generic_error_t **e)
+xcb_icccm_get_wm_name_reply(xcb_connection_t *c,
+                            xcb_get_property_cookie_t cookie,
+                            xcb_icccm_get_text_property_reply_t *prop,
+                            xcb_generic_error_t **e)
 {
-  return xcb_get_text_property_reply(c, cookie, prop, e);
+  return xcb_icccm_get_text_property_reply(c, cookie, prop, e);
 }
 
 /* WM_ICON_NAME */
 
 xcb_void_cookie_t
-xcb_set_wm_icon_name_checked(xcb_connection_t *c, xcb_window_t window,
-                             xcb_atom_t encoding, uint8_t format,
-                             uint32_t name_len, const char *name)
+xcb_icccm_set_wm_icon_name_checked(xcb_connection_t *c, xcb_window_t window,
+                                   xcb_atom_t encoding, uint8_t format,
+                                   uint32_t name_len, const char *name)
 {
   return xcb_change_property_checked(c, XCB_PROP_MODE_REPLACE, window,
                                      XCB_ATOM_WM_ICON_NAME, encoding, format,
@@ -136,9 +136,9 @@ xcb_set_wm_icon_name_checked(xcb_connection_t *c, xcb_window_t window,
 }
 
 xcb_void_cookie_t
-xcb_set_wm_icon_name(xcb_connection_t *c, xcb_window_t window,
-                     xcb_atom_t encoding, uint8_t format, uint32_t name_len,
-                     const char *name)
+xcb_icccm_set_wm_icon_name(xcb_connection_t *c, xcb_window_t window,
+                           xcb_atom_t encoding, uint8_t format, uint32_t name_len,
+                           const char *name)
 {
   return xcb_change_property(c, XCB_PROP_MODE_REPLACE, window,
                              XCB_ATOM_WM_ICON_NAME, encoding, format,
@@ -146,36 +146,36 @@ xcb_set_wm_icon_name(xcb_connection_t *c, xcb_window_t window,
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_icon_name(xcb_connection_t *c,
-                     xcb_window_t window)
+xcb_icccm_get_wm_icon_name(xcb_connection_t *c,
+                           xcb_window_t window)
 {
-  return xcb_get_text_property(c, window, XCB_ATOM_WM_ICON_NAME);
+  return xcb_icccm_get_text_property(c, window, XCB_ATOM_WM_ICON_NAME);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_icon_name_unchecked(xcb_connection_t *c,
-                               xcb_window_t window)
+xcb_icccm_get_wm_icon_name_unchecked(xcb_connection_t *c,
+                                     xcb_window_t window)
 {
-  return xcb_get_text_property_unchecked(c, window, XCB_ATOM_WM_ICON_NAME);
+  return xcb_icccm_get_text_property_unchecked(c, window, XCB_ATOM_WM_ICON_NAME);
 }
 
 uint8_t
-xcb_get_wm_icon_name_reply(xcb_connection_t *c,
-                           xcb_get_property_cookie_t cookie,
-                           xcb_get_text_property_reply_t *prop,
-                           xcb_generic_error_t **e)
+xcb_icccm_get_wm_icon_name_reply(xcb_connection_t *c,
+                                 xcb_get_property_cookie_t cookie,
+                                 xcb_icccm_get_text_property_reply_t *prop,
+                                 xcb_generic_error_t **e)
 {
-  return xcb_get_text_property_reply(c, cookie, prop, e);
+  return xcb_icccm_get_text_property_reply(c, cookie, prop, e);
 }
 
 /* WM_COLORMAP_WINDOWS */
 
 xcb_void_cookie_t
-xcb_set_wm_colormap_windows_checked(xcb_connection_t *c,
-                                    xcb_window_t window,
-                                    xcb_atom_t wm_colormap_windows_atom,
-                                    uint32_t list_len,
-                                    const xcb_window_t *list)
+xcb_icccm_set_wm_colormap_windows_checked(xcb_connection_t *c,
+                                          xcb_window_t window,
+                                          xcb_atom_t wm_colormap_windows_atom,
+                                          uint32_t list_len,
+                                          const xcb_window_t *list)
 {
   return xcb_change_property_checked(c, XCB_PROP_MODE_REPLACE, window,
                                      wm_colormap_windows_atom, XCB_ATOM_WINDOW,
@@ -183,11 +183,11 @@ xcb_set_wm_colormap_windows_checked(xcb_connection_t *c,
 }
 
 xcb_void_cookie_t
-xcb_set_wm_colormap_windows(xcb_connection_t *c,
-                            xcb_window_t window,
-                            xcb_atom_t wm_colormap_windows_atom,
-                            uint32_t list_len,
-                            const xcb_atom_t *list)
+xcb_icccm_set_wm_colormap_windows(xcb_connection_t *c,
+                                  xcb_window_t window,
+                                  xcb_atom_t wm_colormap_windows_atom,
+                                  uint32_t list_len,
+                                  const xcb_atom_t *list)
 {
   return xcb_change_property(c, XCB_PROP_MODE_REPLACE, window,
                              wm_colormap_windows_atom, XCB_ATOM_WINDOW, 32,
@@ -196,26 +196,26 @@ xcb_set_wm_colormap_windows(xcb_connection_t *c,
 
 
 xcb_get_property_cookie_t
-xcb_get_wm_colormap_windows(xcb_connection_t *c,
-                            xcb_window_t window,
-                            xcb_atom_t wm_colormap_windows_atom )
+xcb_icccm_get_wm_colormap_windows(xcb_connection_t *c,
+                                  xcb_window_t window,
+                                  xcb_atom_t wm_colormap_windows_atom )
 {
   return xcb_get_property(c, 0, window, wm_colormap_windows_atom,
                           XCB_ATOM_WINDOW, 0, UINT_MAX);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_colormap_windows_unchecked(xcb_connection_t *c,
-                                      xcb_window_t window,
-                                      xcb_atom_t wm_colormap_windows_atom)
+xcb_icccm_get_wm_colormap_windows_unchecked(xcb_connection_t *c,
+                                            xcb_window_t window,
+                                            xcb_atom_t wm_colormap_windows_atom)
 {
   return xcb_get_property_unchecked(c, 0, window, wm_colormap_windows_atom,
                                     XCB_ATOM_WINDOW, 0, UINT_MAX);
 }
 
 uint8_t
-xcb_get_wm_colormap_windows_from_reply(xcb_get_property_reply_t *reply,
-                                       xcb_get_wm_colormap_windows_reply_t *colormap_windows)
+xcb_icccm_get_wm_colormap_windows_from_reply(xcb_get_property_reply_t *reply,
+                                             xcb_icccm_get_wm_colormap_windows_reply_t *colormap_windows)
 {
   if(!reply || reply->type != XCB_ATOM_WINDOW || reply->format != 32)
     return 0;
@@ -228,20 +228,20 @@ xcb_get_wm_colormap_windows_from_reply(xcb_get_property_reply_t *reply,
 }
 
 uint8_t
-xcb_get_wm_colormap_windows_reply(xcb_connection_t *c,
-                                  xcb_get_property_cookie_t cookie,
-                                  xcb_get_wm_colormap_windows_reply_t *colormap_windows,
-                                  xcb_generic_error_t **e)
+xcb_icccm_get_wm_colormap_windows_reply(xcb_connection_t *c,
+                                        xcb_get_property_cookie_t cookie,
+                                        xcb_icccm_get_wm_colormap_windows_reply_t *colormap_windows,
+                                        xcb_generic_error_t **e)
 {
   xcb_get_property_reply_t *reply = xcb_get_property_reply(c, cookie, e);
-  uint8_t ret = xcb_get_wm_colormap_windows_from_reply(reply, colormap_windows);
+  uint8_t ret = xcb_icccm_get_wm_colormap_windows_from_reply(reply, colormap_windows);
   if(!ret)
     free(reply);
   return ret;
 }
 
 void
-xcb_get_wm_colormap_windows_reply_wipe(xcb_get_wm_colormap_windows_reply_t *colormap_windows)
+xcb_icccm_get_wm_colormap_windows_reply_wipe(xcb_icccm_get_wm_colormap_windows_reply_t *colormap_windows)
 {
   free(colormap_windows->_reply);
 }
@@ -249,9 +249,9 @@ xcb_get_wm_colormap_windows_reply_wipe(xcb_get_wm_colormap_windows_reply_t *colo
 /* WM_CLIENT_MACHINE */
 
 xcb_void_cookie_t
-xcb_set_wm_client_machine_checked(xcb_connection_t *c, xcb_window_t window,
-                                  xcb_atom_t encoding, uint8_t format,
-                                  uint32_t name_len, const char *name)
+xcb_icccm_set_wm_client_machine_checked(xcb_connection_t *c, xcb_window_t window,
+                                        xcb_atom_t encoding, uint8_t format,
+                                        uint32_t name_len, const char *name)
 {
   return xcb_change_property_checked(c, XCB_PROP_MODE_REPLACE, window,
                                      XCB_ATOM_WM_CLIENT_MACHINE, encoding,
@@ -259,9 +259,9 @@ xcb_set_wm_client_machine_checked(xcb_connection_t *c, xcb_window_t window,
 }
 
 xcb_void_cookie_t
-xcb_set_wm_client_machine(xcb_connection_t *c, xcb_window_t window,
-                          xcb_atom_t encoding, uint8_t format,
-                          uint32_t name_len, const char *name)
+xcb_icccm_set_wm_client_machine(xcb_connection_t *c, xcb_window_t window,
+                                xcb_atom_t encoding, uint8_t format,
+                                uint32_t name_len, const char *name)
 {
   return xcb_change_property(c, XCB_PROP_MODE_REPLACE, window,
                              XCB_ATOM_WM_CLIENT_MACHINE, encoding, format,
@@ -269,35 +269,35 @@ xcb_set_wm_client_machine(xcb_connection_t *c, xcb_window_t window,
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_client_machine(xcb_connection_t *c,
-                          xcb_window_t window)
+xcb_icccm_get_wm_client_machine(xcb_connection_t *c,
+                                xcb_window_t window)
 {
-  return xcb_get_text_property(c, window, XCB_ATOM_WM_CLIENT_MACHINE);
+  return xcb_icccm_get_text_property(c, window, XCB_ATOM_WM_CLIENT_MACHINE);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_client_machine_unchecked(xcb_connection_t *c,
-                                    xcb_window_t window)
+xcb_icccm_get_wm_client_machine_unchecked(xcb_connection_t *c,
+                                          xcb_window_t window)
 {
-  return xcb_get_text_property_unchecked(c, window, XCB_ATOM_WM_CLIENT_MACHINE);
+  return xcb_icccm_get_text_property_unchecked(c, window, XCB_ATOM_WM_CLIENT_MACHINE);
 }
 
 uint8_t
-xcb_get_wm_client_machine_reply(xcb_connection_t *c,
-                                xcb_get_property_cookie_t cookie,
-                                xcb_get_text_property_reply_t *prop,
-                                xcb_generic_error_t **e)
+xcb_icccm_get_wm_client_machine_reply(xcb_connection_t *c,
+                                      xcb_get_property_cookie_t cookie,
+                                      xcb_icccm_get_text_property_reply_t *prop,
+                                      xcb_generic_error_t **e)
 {
-  return xcb_get_text_property_reply(c, cookie, prop, e);
+  return xcb_icccm_get_text_property_reply(c, cookie, prop, e);
 }
 
 /* WM_CLASS */
 
 xcb_void_cookie_t
-xcb_set_wm_class_checked(xcb_connection_t *c,
-                         xcb_window_t window,
-                         uint32_t class_len,
-                         const char *class)
+xcb_icccm_set_wm_class_checked(xcb_connection_t *c,
+                               xcb_window_t window,
+                               uint32_t class_len,
+                               const char *class)
 {
   return xcb_change_property_checked(c, XCB_PROP_MODE_REPLACE, window,
                                      XCB_ATOM_WM_CLASS, XCB_ATOM_STRING, 8,
@@ -305,10 +305,10 @@ xcb_set_wm_class_checked(xcb_connection_t *c,
 }
 
 xcb_void_cookie_t
-xcb_set_wm_class(xcb_connection_t *c,
-                 xcb_window_t window,
-                 uint32_t class_len,
-                 const char *class)
+xcb_icccm_set_wm_class(xcb_connection_t *c,
+                       xcb_window_t window,
+                       uint32_t class_len,
+                       const char *class)
 {
   return xcb_change_property(c, XCB_PROP_MODE_REPLACE, window,
                              XCB_ATOM_WM_CLASS, XCB_ATOM_STRING, 8,
@@ -316,20 +316,20 @@ xcb_set_wm_class(xcb_connection_t *c,
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_class(xcb_connection_t *c, xcb_window_t window)
+xcb_icccm_get_wm_class(xcb_connection_t *c, xcb_window_t window)
 {
   return xcb_get_property(c, 0, window, XCB_ATOM_WM_CLASS, XCB_ATOM_STRING, 0L, 2048L);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_class_unchecked(xcb_connection_t *c, xcb_window_t window)
+xcb_icccm_get_wm_class_unchecked(xcb_connection_t *c, xcb_window_t window)
 {
   return xcb_get_property_unchecked(c, 0, window, XCB_ATOM_WM_CLASS, XCB_ATOM_STRING, 0L, 2048L);
 }
 
 uint8_t
-xcb_get_wm_class_from_reply(xcb_get_wm_class_reply_t *prop,
-                            xcb_get_property_reply_t *reply)
+xcb_icccm_get_wm_class_from_reply(xcb_icccm_get_wm_class_reply_t *prop,
+                                  xcb_get_property_reply_t *reply)
 {
   if(!reply || reply->type != XCB_ATOM_STRING || reply->format != 8)
     return 0;
@@ -356,19 +356,19 @@ xcb_get_wm_class_from_reply(xcb_get_wm_class_reply_t *prop,
 }
 
 uint8_t
-xcb_get_wm_class_reply(xcb_connection_t *c, xcb_get_property_cookie_t cookie,
-                       xcb_get_wm_class_reply_t *prop, xcb_generic_error_t **e)
+xcb_icccm_get_wm_class_reply(xcb_connection_t *c, xcb_get_property_cookie_t cookie,
+                             xcb_icccm_get_wm_class_reply_t *prop, xcb_generic_error_t **e)
 {
   xcb_get_property_reply_t *reply = xcb_get_property_reply(c, cookie, e);
-  uint8_t ret = xcb_get_wm_class_from_reply(prop, reply);
+  uint8_t ret = xcb_icccm_get_wm_class_from_reply(prop, reply);
   /* if reply parsing failed, free the reply to avoid mem leak */
   if(!ret)
-      free(reply);
+    free(reply);
   return ret;
 }
 
 void
-xcb_get_wm_class_reply_wipe(xcb_get_wm_class_reply_t *prop)
+xcb_icccm_get_wm_class_reply_wipe(xcb_icccm_get_wm_class_reply_t *prop)
 {
   free(prop->_reply);
 }
@@ -376,8 +376,8 @@ xcb_get_wm_class_reply_wipe(xcb_get_wm_class_reply_t *prop)
 /* WM_TRANSIENT_FOR */
 
 xcb_void_cookie_t
-xcb_set_wm_transient_for_checked(xcb_connection_t *c, xcb_window_t window,
-                                 xcb_window_t transient_for_window)
+xcb_icccm_set_wm_transient_for_checked(xcb_connection_t *c, xcb_window_t window,
+                                       xcb_window_t transient_for_window)
 {
   return xcb_change_property_checked(c, XCB_PROP_MODE_REPLACE, window,
                                      XCB_ATOM_WM_TRANSIENT_FOR,
@@ -386,8 +386,8 @@ xcb_set_wm_transient_for_checked(xcb_connection_t *c, xcb_window_t window,
 }
 
 xcb_void_cookie_t
-xcb_set_wm_transient_for(xcb_connection_t *c, xcb_window_t window,
-                         xcb_window_t transient_for_window)
+xcb_icccm_set_wm_transient_for(xcb_connection_t *c, xcb_window_t window,
+                               xcb_window_t transient_for_window)
 {
   return xcb_change_property(c, XCB_PROP_MODE_REPLACE, window,
                              XCB_ATOM_WM_TRANSIENT_FOR, XCB_ATOM_WINDOW, 32,
@@ -395,20 +395,20 @@ xcb_set_wm_transient_for(xcb_connection_t *c, xcb_window_t window,
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_transient_for(xcb_connection_t *c, xcb_window_t window)
+xcb_icccm_get_wm_transient_for(xcb_connection_t *c, xcb_window_t window)
 {
   return xcb_get_property(c, 0, window, XCB_ATOM_WM_TRANSIENT_FOR, XCB_ATOM_WINDOW, 0, 1);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_transient_for_unchecked(xcb_connection_t *c, xcb_window_t window)
+xcb_icccm_get_wm_transient_for_unchecked(xcb_connection_t *c, xcb_window_t window)
 {
   return xcb_get_property_unchecked(c, 0, window, XCB_ATOM_WM_TRANSIENT_FOR, XCB_ATOM_WINDOW, 0, 1);
 }
 
 uint8_t
-xcb_get_wm_transient_for_from_reply(xcb_window_t *prop,
-                                    xcb_get_property_reply_t *reply)
+xcb_icccm_get_wm_transient_for_from_reply(xcb_window_t *prop,
+                                          xcb_get_property_reply_t *reply)
 {
   if(!reply || reply->type != XCB_ATOM_WINDOW || reply->format != 32 || !reply->length)
     return 0;
@@ -419,13 +419,13 @@ xcb_get_wm_transient_for_from_reply(xcb_window_t *prop,
 }
 
 uint8_t
-xcb_get_wm_transient_for_reply(xcb_connection_t *c,
-                               xcb_get_property_cookie_t cookie,
-                               xcb_window_t *prop,
-                               xcb_generic_error_t **e)
+xcb_icccm_get_wm_transient_for_reply(xcb_connection_t *c,
+                                     xcb_get_property_cookie_t cookie,
+                                     xcb_window_t *prop,
+                                     xcb_generic_error_t **e)
 {
   xcb_get_property_reply_t *reply = xcb_get_property_reply(c, cookie, e);
-  uint8_t ret = xcb_get_wm_transient_for_from_reply(prop, reply);
+  uint8_t ret = xcb_icccm_get_wm_transient_for_from_reply(prop, reply);
   free(reply);
   return ret;
 }
@@ -433,64 +433,64 @@ xcb_get_wm_transient_for_reply(xcb_connection_t *c,
 /* WM_SIZE_HINTS */
 
 void
-xcb_size_hints_set_position(xcb_size_hints_t *hints, int user_specified,
-                            int32_t x, int32_t y)
+xcb_icccm_size_hints_set_position(xcb_size_hints_t *hints, int user_specified,
+                                  int32_t x, int32_t y)
 {
-  hints->flags &= ~(XCB_SIZE_HINT_US_POSITION | XCB_SIZE_HINT_P_POSITION);
+  hints->flags &= ~(XCB_ICCCM_SIZE_HINT_US_POSITION | XCB_ICCCM_SIZE_HINT_P_POSITION);
   if (user_specified)
-    hints->flags |= XCB_SIZE_HINT_US_POSITION;
+    hints->flags |= XCB_ICCCM_SIZE_HINT_US_POSITION;
   else
-    hints->flags |= XCB_SIZE_HINT_P_POSITION;
+    hints->flags |= XCB_ICCCM_SIZE_HINT_P_POSITION;
   hints->x = x;
   hints->y = y;
 }
 
 void
-xcb_size_hints_set_size(xcb_size_hints_t *hints, int user_specified,
-                         int32_t width, int32_t height)
+xcb_icccm_size_hints_set_size(xcb_size_hints_t *hints, int user_specified,
+                              int32_t width, int32_t height)
 {
-  hints->flags &= ~(XCB_SIZE_HINT_US_SIZE | XCB_SIZE_HINT_P_SIZE);
+  hints->flags &= ~(XCB_ICCCM_SIZE_HINT_US_SIZE | XCB_ICCCM_SIZE_HINT_P_SIZE);
   if (user_specified)
-    hints->flags |= XCB_SIZE_HINT_US_SIZE;
+    hints->flags |= XCB_ICCCM_SIZE_HINT_US_SIZE;
   else
-    hints->flags |= XCB_SIZE_HINT_P_SIZE;
+    hints->flags |= XCB_ICCCM_SIZE_HINT_P_SIZE;
   hints->width = width;
   hints->height = height;
 }
 
 void
-xcb_size_hints_set_min_size(xcb_size_hints_t *hints, int32_t min_width,
-                            int32_t min_height)
+xcb_icccm_size_hints_set_min_size(xcb_size_hints_t *hints, int32_t min_width,
+                                  int32_t min_height)
 {
-  hints->flags |= XCB_SIZE_HINT_P_MIN_SIZE;
+  hints->flags |= XCB_ICCCM_SIZE_HINT_P_MIN_SIZE;
   hints->min_width = min_width;
   hints->min_height = min_height;
 }
 
 void
-xcb_size_hints_set_max_size(xcb_size_hints_t *hints, int32_t max_width,
-                            int32_t max_height)
+xcb_icccm_size_hints_set_max_size(xcb_size_hints_t *hints, int32_t max_width,
+                                  int32_t max_height)
 {
-  hints->flags |= XCB_SIZE_HINT_P_MAX_SIZE;
+  hints->flags |= XCB_ICCCM_SIZE_HINT_P_MAX_SIZE;
   hints->max_width = max_width;
   hints->max_height = max_height;
 }
 
 void
-xcb_size_hints_set_resize_inc(xcb_size_hints_t *hints, int32_t width_inc,
-                              int32_t height_inc)
+xcb_icccm_size_hints_set_resize_inc(xcb_size_hints_t *hints, int32_t width_inc,
+                                    int32_t height_inc)
 {
-  hints->flags |= XCB_SIZE_HINT_P_RESIZE_INC;
+  hints->flags |= XCB_ICCCM_SIZE_HINT_P_RESIZE_INC;
   hints->width_inc = width_inc;
   hints->height_inc = height_inc;
 }
 
 void
-xcb_size_hints_set_aspect(xcb_size_hints_t *hints, int32_t min_aspect_num,
-                          int32_t min_aspect_den, int32_t max_aspect_num,
-                          int32_t max_aspect_den)
+xcb_icccm_size_hints_set_aspect(xcb_size_hints_t *hints, int32_t min_aspect_num,
+                                int32_t min_aspect_den, int32_t max_aspect_num,
+                                int32_t max_aspect_den)
 {
-  hints->flags |= XCB_SIZE_HINT_P_ASPECT;
+  hints->flags |= XCB_ICCCM_SIZE_HINT_P_ASPECT;
   hints->min_aspect_num = min_aspect_num;
   hints->min_aspect_den = min_aspect_den;
   hints->max_aspect_num = max_aspect_num;
@@ -498,24 +498,24 @@ xcb_size_hints_set_aspect(xcb_size_hints_t *hints, int32_t min_aspect_num,
 }
 
 void
-xcb_size_hints_set_base_size(xcb_size_hints_t *hints, int32_t base_width,
-                             int32_t base_height)
+xcb_icccm_size_hints_set_base_size(xcb_size_hints_t *hints, int32_t base_width,
+                                   int32_t base_height)
 {
-  hints->flags |= XCB_SIZE_HINT_BASE_SIZE;
+  hints->flags |= XCB_ICCCM_SIZE_HINT_BASE_SIZE;
   hints->base_width = base_width;
   hints->base_height = base_height;
 }
 
 void
-xcb_size_hints_set_win_gravity(xcb_size_hints_t *hints, xcb_gravity_t win_gravity)
+xcb_icccm_size_hints_set_win_gravity(xcb_size_hints_t *hints, xcb_gravity_t win_gravity)
 {
-  hints->flags |= XCB_SIZE_HINT_P_WIN_GRAVITY;
+  hints->flags |= XCB_ICCCM_SIZE_HINT_P_WIN_GRAVITY;
   hints->win_gravity = win_gravity;
 }
 
 xcb_void_cookie_t
-xcb_set_wm_size_hints_checked(xcb_connection_t *c, xcb_window_t window,
-                              xcb_atom_t property, xcb_size_hints_t *hints)
+xcb_icccm_set_wm_size_hints_checked(xcb_connection_t *c, xcb_window_t window,
+                                    xcb_atom_t property, xcb_size_hints_t *hints)
 {
   return xcb_change_property_checked(c, XCB_PROP_MODE_REPLACE, window, property,
 				     XCB_ATOM_WM_SIZE_HINTS, 32, sizeof(*hints) >> 2,
@@ -523,30 +523,30 @@ xcb_set_wm_size_hints_checked(xcb_connection_t *c, xcb_window_t window,
 }
 
 xcb_void_cookie_t
-xcb_set_wm_size_hints(xcb_connection_t *c, xcb_window_t window,
-                      xcb_atom_t property, xcb_size_hints_t *hints)
+xcb_icccm_set_wm_size_hints(xcb_connection_t *c, xcb_window_t window,
+                            xcb_atom_t property, xcb_size_hints_t *hints)
 {
   return xcb_change_property(c, XCB_PROP_MODE_REPLACE, window, property,
 			     XCB_ATOM_WM_SIZE_HINTS, 32, sizeof(*hints) >> 2, hints);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_size_hints(xcb_connection_t *c, xcb_window_t window,
-                      xcb_atom_t property)
+xcb_icccm_get_wm_size_hints(xcb_connection_t *c, xcb_window_t window,
+                            xcb_atom_t property)
 {
-  return xcb_get_property(c, 0, window, property, XCB_ATOM_WM_SIZE_HINTS, 0L, XCB_NUM_WM_SIZE_HINTS_ELEMENTS);
+  return xcb_get_property(c, 0, window, property, XCB_ATOM_WM_SIZE_HINTS, 0L, XCB_ICCCM_NUM_WM_SIZE_HINTS_ELEMENTS);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_size_hints_unchecked(xcb_connection_t *c, xcb_window_t window,
-                                xcb_atom_t property)
+xcb_icccm_get_wm_size_hints_unchecked(xcb_connection_t *c, xcb_window_t window,
+                                      xcb_atom_t property)
 {
   return xcb_get_property_unchecked(c, 0, window, property, XCB_ATOM_WM_SIZE_HINTS,
-                                    0L, XCB_NUM_WM_SIZE_HINTS_ELEMENTS);
+                                    0L, XCB_ICCCM_NUM_WM_SIZE_HINTS_ELEMENTS);
 }
 
 uint8_t
-xcb_get_wm_size_hints_from_reply(xcb_size_hints_t *hints, xcb_get_property_reply_t *reply)
+xcb_icccm_get_wm_size_hints_from_reply(xcb_size_hints_t *hints, xcb_get_property_reply_t *reply)
 {
   uint32_t flags;
   int length;
@@ -555,31 +555,31 @@ xcb_get_wm_size_hints_from_reply(xcb_size_hints_t *hints, xcb_get_property_reply
     return 0;
 
   if (!(reply->type == XCB_ATOM_WM_SIZE_HINTS &&
-         reply->format == 32))
+        reply->format == 32))
     return 0;
 
   length = xcb_get_property_value_length(reply) / (reply->format / 8);
 
-  if(length > XCB_NUM_WM_SIZE_HINTS_ELEMENTS)
-    length = XCB_NUM_WM_SIZE_HINTS_ELEMENTS;
+  if(length > XCB_ICCCM_NUM_WM_SIZE_HINTS_ELEMENTS)
+    length = XCB_ICCCM_NUM_WM_SIZE_HINTS_ELEMENTS;
 
   memcpy(hints, (xcb_size_hints_t *) xcb_get_property_value (reply),
          length * (reply->format / 8));
 
-  flags = (XCB_SIZE_HINT_US_POSITION | XCB_SIZE_HINT_US_SIZE |
-           XCB_SIZE_HINT_P_POSITION | XCB_SIZE_HINT_P_SIZE |
-           XCB_SIZE_HINT_P_MIN_SIZE | XCB_SIZE_HINT_P_MAX_SIZE |
-           XCB_SIZE_HINT_P_RESIZE_INC | XCB_SIZE_HINT_P_ASPECT);
+  flags = (XCB_ICCCM_SIZE_HINT_US_POSITION | XCB_ICCCM_SIZE_HINT_US_SIZE |
+           XCB_ICCCM_SIZE_HINT_P_POSITION | XCB_ICCCM_SIZE_HINT_P_SIZE |
+           XCB_ICCCM_SIZE_HINT_P_MIN_SIZE | XCB_ICCCM_SIZE_HINT_P_MAX_SIZE |
+           XCB_ICCCM_SIZE_HINT_P_RESIZE_INC | XCB_ICCCM_SIZE_HINT_P_ASPECT);
 
   /* NumPropSizeElements = 18 (ICCCM version 1) */
   if(length >= 18)
-    flags |= (XCB_SIZE_HINT_BASE_SIZE | XCB_SIZE_HINT_P_WIN_GRAVITY);
+    flags |= (XCB_ICCCM_SIZE_HINT_BASE_SIZE | XCB_ICCCM_SIZE_HINT_P_WIN_GRAVITY);
   else
-  {
-    hints->base_width = 0;
-    hints->base_height = 0;
-    hints->win_gravity = 0;
-  }
+    {
+      hints->base_width = 0;
+      hints->base_height = 0;
+      hints->win_gravity = 0;
+    }
   /* get rid of unwanted bits */
   hints->flags &= flags;
 
@@ -587,11 +587,11 @@ xcb_get_wm_size_hints_from_reply(xcb_size_hints_t *hints, xcb_get_property_reply
 }
 
 uint8_t
-xcb_get_wm_size_hints_reply(xcb_connection_t *c, xcb_get_property_cookie_t cookie,
-                            xcb_size_hints_t *hints, xcb_generic_error_t **e)
+xcb_icccm_get_wm_size_hints_reply(xcb_connection_t *c, xcb_get_property_cookie_t cookie,
+                                  xcb_size_hints_t *hints, xcb_generic_error_t **e)
 {
   xcb_get_property_reply_t *reply = xcb_get_property_reply(c, cookie, e);
-  uint8_t ret = xcb_get_wm_size_hints_from_reply(hints, reply);
+  uint8_t ret = xcb_icccm_get_wm_size_hints_from_reply(hints, reply);
   free(reply);
   return ret;
 }
@@ -599,151 +599,151 @@ xcb_get_wm_size_hints_reply(xcb_connection_t *c, xcb_get_property_cookie_t cooki
 /* WM_NORMAL_HINTS */
 
 xcb_void_cookie_t
-xcb_set_wm_normal_hints_checked(xcb_connection_t *c, xcb_window_t window,
-                                xcb_size_hints_t *hints)
+xcb_icccm_set_wm_normal_hints_checked(xcb_connection_t *c, xcb_window_t window,
+                                      xcb_size_hints_t *hints)
 {
-  return xcb_set_wm_size_hints_checked(c, window, XCB_ATOM_WM_NORMAL_HINTS, hints);
+  return xcb_icccm_set_wm_size_hints_checked(c, window, XCB_ATOM_WM_NORMAL_HINTS, hints);
 }
 
 xcb_void_cookie_t
-xcb_set_wm_normal_hints(xcb_connection_t *c, xcb_window_t window,
-                        xcb_size_hints_t *hints)
+xcb_icccm_set_wm_normal_hints(xcb_connection_t *c, xcb_window_t window,
+                              xcb_size_hints_t *hints)
 {
-  return xcb_set_wm_size_hints(c, window, XCB_ATOM_WM_NORMAL_HINTS, hints);
+  return xcb_icccm_set_wm_size_hints(c, window, XCB_ATOM_WM_NORMAL_HINTS, hints);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_normal_hints(xcb_connection_t *c, xcb_window_t window)
+xcb_icccm_get_wm_normal_hints(xcb_connection_t *c, xcb_window_t window)
 {
-  return xcb_get_wm_size_hints(c, window, XCB_ATOM_WM_NORMAL_HINTS);
+  return xcb_icccm_get_wm_size_hints(c, window, XCB_ATOM_WM_NORMAL_HINTS);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_normal_hints_unchecked(xcb_connection_t *c, xcb_window_t window)
+xcb_icccm_get_wm_normal_hints_unchecked(xcb_connection_t *c, xcb_window_t window)
 {
-  return xcb_get_wm_size_hints_unchecked(c, window, XCB_ATOM_WM_NORMAL_HINTS);
+  return xcb_icccm_get_wm_size_hints_unchecked(c, window, XCB_ATOM_WM_NORMAL_HINTS);
 }
 
 uint8_t
-xcb_get_wm_normal_hints_reply(xcb_connection_t *c,
-                              xcb_get_property_cookie_t cookie,
-                              xcb_size_hints_t *hints,
-                              xcb_generic_error_t **e)
+xcb_icccm_get_wm_normal_hints_reply(xcb_connection_t *c,
+                                    xcb_get_property_cookie_t cookie,
+                                    xcb_size_hints_t *hints,
+                                    xcb_generic_error_t **e)
 {
-  return xcb_get_wm_size_hints_reply(c, cookie, hints, e);
+  return xcb_icccm_get_wm_size_hints_reply(c, cookie, hints, e);
 }
 
 /* WM_HINTS */
 
 uint32_t
-xcb_wm_hints_get_urgency(xcb_wm_hints_t *hints)
+xcb_icccm_wm_hints_get_urgency(xcb_icccm_wm_hints_t *hints)
 {
-  return (hints->flags & XCB_WM_HINT_X_URGENCY);
+  return (hints->flags & XCB_ICCCM_WM_HINT_X_URGENCY);
 }
 
 void
-xcb_wm_hints_set_input(xcb_wm_hints_t *hints, uint8_t input)
+xcb_icccm_wm_hints_set_input(xcb_icccm_wm_hints_t *hints, uint8_t input)
 {
   hints->input = input;
-  hints->flags |= XCB_WM_HINT_INPUT;
+  hints->flags |= XCB_ICCCM_WM_HINT_INPUT;
 }
 
 void
-xcb_wm_hints_set_iconic(xcb_wm_hints_t *hints)
+xcb_icccm_wm_hints_set_iconic(xcb_icccm_wm_hints_t *hints)
 {
-  hints->initial_state = XCB_WM_STATE_ICONIC;
-  hints->flags |= XCB_WM_HINT_STATE;
+  hints->initial_state = XCB_ICCCM_WM_STATE_ICONIC;
+  hints->flags |= XCB_ICCCM_WM_HINT_STATE;
 }
 
 void
-xcb_wm_hints_set_normal(xcb_wm_hints_t *hints)
+xcb_icccm_wm_hints_set_normal(xcb_icccm_wm_hints_t *hints)
 {
-  hints->initial_state = XCB_WM_STATE_NORMAL;
-  hints->flags |= XCB_WM_HINT_STATE;
+  hints->initial_state = XCB_ICCCM_WM_STATE_NORMAL;
+  hints->flags |= XCB_ICCCM_WM_HINT_STATE;
 }
 
 void
-xcb_wm_hints_set_withdrawn(xcb_wm_hints_t *hints)
+xcb_icccm_wm_hints_set_withdrawn(xcb_icccm_wm_hints_t *hints)
 {
-  hints->initial_state = XCB_WM_STATE_WITHDRAWN;
-  hints->flags |= XCB_WM_HINT_STATE;
+  hints->initial_state = XCB_ICCCM_WM_STATE_WITHDRAWN;
+  hints->flags |= XCB_ICCCM_WM_HINT_STATE;
 }
 
 void
-xcb_wm_hints_set_none(xcb_wm_hints_t *hints)
+xcb_icccm_wm_hints_set_none(xcb_icccm_wm_hints_t *hints)
 {
-  hints->flags &= ~XCB_WM_HINT_STATE;
+  hints->flags &= ~XCB_ICCCM_WM_HINT_STATE;
 }
 
 void
-xcb_wm_hints_set_icon_pixmap(xcb_wm_hints_t *hints, xcb_pixmap_t icon_pixmap)
+xcb_icccm_wm_hints_set_icon_pixmap(xcb_icccm_wm_hints_t *hints, xcb_pixmap_t icon_pixmap)
 {
   hints->icon_pixmap = icon_pixmap;
-  hints->flags |= XCB_WM_HINT_ICON_PIXMAP;
+  hints->flags |= XCB_ICCCM_WM_HINT_ICON_PIXMAP;
 }
 
 void
-xcb_wm_hints_set_icon_mask(xcb_wm_hints_t *hints, xcb_pixmap_t icon_mask)
+xcb_icccm_wm_hints_set_icon_mask(xcb_icccm_wm_hints_t *hints, xcb_pixmap_t icon_mask)
 {
   hints->icon_mask = icon_mask;
-  hints->flags |= XCB_WM_HINT_ICON_MASK;
+  hints->flags |= XCB_ICCCM_WM_HINT_ICON_MASK;
 }
 
 void
-xcb_wm_hints_set_icon_window(xcb_wm_hints_t *hints, xcb_window_t icon_window)
+xcb_icccm_wm_hints_set_icon_window(xcb_icccm_wm_hints_t *hints, xcb_window_t icon_window)
 {
   hints->icon_window = icon_window;
-  hints->flags |= XCB_WM_HINT_ICON_WINDOW;
+  hints->flags |= XCB_ICCCM_WM_HINT_ICON_WINDOW;
 }
 
 void
-xcb_wm_hints_set_window_group(xcb_wm_hints_t *hints, xcb_window_t window_group)
+xcb_icccm_wm_hints_set_window_group(xcb_icccm_wm_hints_t *hints, xcb_window_t window_group)
 {
   hints->window_group = window_group;
-  hints->flags |= XCB_WM_HINT_WINDOW_GROUP;
+  hints->flags |= XCB_ICCCM_WM_HINT_WINDOW_GROUP;
 }
 
 void
-xcb_wm_hints_set_urgency(xcb_wm_hints_t *hints)
+xcb_icccm_wm_hints_set_urgency(xcb_icccm_wm_hints_t *hints)
 {
-  hints->flags |= XCB_WM_HINT_X_URGENCY;
+  hints->flags |= XCB_ICCCM_WM_HINT_X_URGENCY;
 }
 
 xcb_void_cookie_t
-xcb_set_wm_hints_checked(xcb_connection_t *c, xcb_window_t window,
-                         xcb_wm_hints_t *hints)
+xcb_icccm_set_wm_hints_checked(xcb_connection_t *c, xcb_window_t window,
+                               xcb_icccm_wm_hints_t *hints)
 {
   return xcb_change_property_checked(c, XCB_PROP_MODE_REPLACE, window, XCB_ATOM_WM_HINTS,
 				     XCB_ATOM_WM_HINTS, 32, sizeof(*hints) >> 2, hints);
 }
 
 xcb_void_cookie_t
-xcb_set_wm_hints(xcb_connection_t *c, xcb_window_t window,
-                 xcb_wm_hints_t *hints)
+xcb_icccm_set_wm_hints(xcb_connection_t *c, xcb_window_t window,
+                       xcb_icccm_wm_hints_t *hints)
 {
   return xcb_change_property(c, XCB_PROP_MODE_REPLACE, window, XCB_ATOM_WM_HINTS,
 			     XCB_ATOM_WM_HINTS, 32, sizeof(*hints) >> 2, hints);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_hints(xcb_connection_t *c,
-                 xcb_window_t window)
+xcb_icccm_get_wm_hints(xcb_connection_t *c,
+                       xcb_window_t window)
 {
   return xcb_get_property(c, 0, window, XCB_ATOM_WM_HINTS, XCB_ATOM_WM_HINTS, 0L,
-                          XCB_NUM_WM_HINTS_ELEMENTS);
+                          XCB_ICCCM_NUM_WM_HINTS_ELEMENTS);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_hints_unchecked(xcb_connection_t *c,
-                           xcb_window_t window)
+xcb_icccm_get_wm_hints_unchecked(xcb_connection_t *c,
+                                 xcb_window_t window)
 {
   return xcb_get_property_unchecked(c, 0, window, XCB_ATOM_WM_HINTS, XCB_ATOM_WM_HINTS, 0L,
-                                    XCB_NUM_WM_HINTS_ELEMENTS);
+                                    XCB_ICCCM_NUM_WM_HINTS_ELEMENTS);
 }
 
 uint8_t
-xcb_get_wm_hints_from_reply(xcb_wm_hints_t *hints,
-                            xcb_get_property_reply_t *reply)
+xcb_icccm_get_wm_hints_from_reply(xcb_icccm_wm_hints_t *hints,
+                                  xcb_get_property_reply_t *reply)
 {
   if(!reply || reply->type != XCB_ATOM_WM_HINTS || reply->format != 32)
     return 0;
@@ -751,7 +751,7 @@ xcb_get_wm_hints_from_reply(xcb_wm_hints_t *hints,
   int length = xcb_get_property_value_length(reply);
   int num_elem = length / (reply->format / 8);
 
-  if(num_elem < XCB_NUM_WM_HINTS_ELEMENTS - 1)
+  if(num_elem < XCB_ICCCM_NUM_WM_HINTS_ELEMENTS - 1)
     return 0;
 
   if(length > sizeof(xcb_size_hints_t))
@@ -759,20 +759,20 @@ xcb_get_wm_hints_from_reply(xcb_wm_hints_t *hints,
 
   memcpy(hints, (xcb_size_hints_t *) xcb_get_property_value(reply), length);
 
-  if(num_elem < XCB_NUM_WM_HINTS_ELEMENTS)
+  if(num_elem < XCB_ICCCM_NUM_WM_HINTS_ELEMENTS)
     hints->window_group = XCB_NONE;
 
   return 1;
 }
 
 uint8_t
-xcb_get_wm_hints_reply(xcb_connection_t *c,
-                       xcb_get_property_cookie_t cookie,
-                       xcb_wm_hints_t *hints,
-                       xcb_generic_error_t **e)
+xcb_icccm_get_wm_hints_reply(xcb_connection_t *c,
+                             xcb_get_property_cookie_t cookie,
+                             xcb_icccm_wm_hints_t *hints,
+                             xcb_generic_error_t **e)
 {
   xcb_get_property_reply_t *reply = xcb_get_property_reply(c, cookie, e);
-  int ret = xcb_get_wm_hints_from_reply(hints, reply);
+  int ret = xcb_icccm_get_wm_hints_from_reply(hints, reply);
   free(reply);
   return ret;
 }
@@ -780,40 +780,40 @@ xcb_get_wm_hints_reply(xcb_connection_t *c,
 /* WM_PROTOCOLS */
 
 xcb_void_cookie_t
-xcb_set_wm_protocols_checked(xcb_connection_t *c, xcb_window_t window,
-                             xcb_atom_t wm_protocols, uint32_t list_len,
-                             xcb_atom_t *list)
+xcb_icccm_set_wm_protocols_checked(xcb_connection_t *c, xcb_window_t window,
+                                   xcb_atom_t wm_protocols, uint32_t list_len,
+                                   xcb_atom_t *list)
 {
   return xcb_change_property_checked(c, XCB_PROP_MODE_REPLACE, window,
                                      wm_protocols, XCB_ATOM_ATOM, 32, list_len, list);
 }
 
 xcb_void_cookie_t
-xcb_set_wm_protocols(xcb_connection_t *c, xcb_window_t window,
-                     xcb_atom_t wm_protocols, uint32_t list_len, xcb_atom_t *list)
+xcb_icccm_set_wm_protocols(xcb_connection_t *c, xcb_window_t window,
+                           xcb_atom_t wm_protocols, uint32_t list_len, xcb_atom_t *list)
 {
   return xcb_change_property(c, XCB_PROP_MODE_REPLACE, window, wm_protocols,
                              XCB_ATOM_ATOM, 32, list_len, list);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_protocols(xcb_connection_t *c, xcb_window_t window,
-                     xcb_atom_t wm_protocol_atom)
+xcb_icccm_get_wm_protocols(xcb_connection_t *c, xcb_window_t window,
+                           xcb_atom_t wm_protocol_atom)
 {
   return xcb_get_property(c, 0, window, wm_protocol_atom, XCB_ATOM_ATOM, 0, UINT_MAX);
 }
 
 xcb_get_property_cookie_t
-xcb_get_wm_protocols_unchecked(xcb_connection_t *c,
-                               xcb_window_t window,
-                               xcb_atom_t wm_protocol_atom)
+xcb_icccm_get_wm_protocols_unchecked(xcb_connection_t *c,
+                                     xcb_window_t window,
+                                     xcb_atom_t wm_protocol_atom)
 {
   return xcb_get_property_unchecked(c, 0, window, wm_protocol_atom, XCB_ATOM_ATOM, 0,
                                     UINT_MAX);
 }
 
 uint8_t
-xcb_get_wm_protocols_from_reply(xcb_get_property_reply_t *reply, xcb_get_wm_protocols_reply_t *protocols)
+xcb_icccm_get_wm_protocols_from_reply(xcb_get_property_reply_t *reply, xcb_icccm_get_wm_protocols_reply_t *protocols)
 {
   if(!reply || reply->type != XCB_ATOM_ATOM || reply->format != 32)
     return 0;
@@ -826,20 +826,20 @@ xcb_get_wm_protocols_from_reply(xcb_get_property_reply_t *reply, xcb_get_wm_prot
 }
 
 uint8_t
-xcb_get_wm_protocols_reply(xcb_connection_t *c,
-                           xcb_get_property_cookie_t cookie,
-                           xcb_get_wm_protocols_reply_t *protocols,
-                           xcb_generic_error_t **e)
+xcb_icccm_get_wm_protocols_reply(xcb_connection_t *c,
+                                 xcb_get_property_cookie_t cookie,
+                                 xcb_icccm_get_wm_protocols_reply_t *protocols,
+                                 xcb_generic_error_t **e)
 {
   xcb_get_property_reply_t *reply = xcb_get_property_reply(c, cookie, e);
-  uint8_t ret = xcb_get_wm_protocols_from_reply(reply, protocols);
+  uint8_t ret = xcb_icccm_get_wm_protocols_from_reply(reply, protocols);
   if(!ret)
-      free(reply);
+    free(reply);
   return ret;
 }
 
 void
-xcb_get_wm_protocols_reply_wipe(xcb_get_wm_protocols_reply_t *protocols)
+xcb_icccm_get_wm_protocols_reply_wipe(xcb_icccm_get_wm_protocols_reply_t *protocols)
 {
   free(protocols->_reply);
 }
diff --git a/icccm/xcb_icccm.h b/icccm/xcb_icccm.h
index 1617b84..8f0934a 100644
--- a/icccm/xcb_icccm.h
+++ b/icccm/xcb_icccm.h
@@ -49,18 +49,18 @@ extern "C" {
  * @brief TextProperty reply structure.
  */
 typedef struct {
-  /** Store reply to avoid memory allocation, should normally not be
-      used directly */
-  xcb_get_property_reply_t *_reply;
-  /** Encoding used */
-  xcb_atom_t encoding;
-  /** Length of the name field above */
-  uint32_t name_len;
-  /** Property value */
-  char *name;
-  /** Format, may be 8, 16 or 32 */
-  uint8_t format;
-} xcb_get_text_property_reply_t;
+/** Store reply to avoid memory allocation, should normally not be
+    used directly */
+xcb_get_property_reply_t *_reply;
+/** Encoding used */
+xcb_atom_t encoding;
+/** Length of the name field above */
+uint32_t name_len;
+/** Property value */
+char *name;
+/** Format, may be 8, 16 or 32 */
+uint8_t format;
+} xcb_icccm_get_text_property_reply_t;
 
 /**
  * @brief Deliver a GetProperty request to the X server.
@@ -72,16 +72,16 @@ typedef struct {
  * Allow to get a window property, in most case you might want to use
  * above functions to get an ICCCM property for a given window.
  */
-xcb_get_property_cookie_t xcb_get_text_property(xcb_connection_t *c,
-                                                xcb_window_t window,
-                                                xcb_atom_t property);
+xcb_get_property_cookie_t xcb_icccm_get_text_property(xcb_connection_t *c,
+                                                        xcb_window_t window,
+                                                        xcb_atom_t property);
 
 /**
- * @see xcb_get_text_property()
+ * @see xcb_icccm_get_text_property()
  */
-xcb_get_property_cookie_t xcb_get_text_property_unchecked(xcb_connection_t *c,
-                                                          xcb_window_t window,
-                                                          xcb_atom_t property);
+xcb_get_property_cookie_t xcb_icccm_get_text_property_unchecked(xcb_connection_t *c,
+                                                                  xcb_window_t window,
+                                                                  xcb_atom_t property);
 
 /**
  * @brief Fill given structure with the property value of a window.
@@ -95,21 +95,21 @@ xcb_get_property_cookie_t xcb_get_text_property_unchecked(xcb_connection_t *c,
  * therefore the structure must not be wiped.
  *
  * The parameter e supplied to this function must be NULL if
- * xcb_get_text_property_unchecked() is used.  Otherwise, it stores
+ * xcb_icccm_get_text_property_unchecked() is used.  Otherwise, it stores
  * the error if any.  prop structure members should be freed by
- * xcb_get_text_property_reply_wipe().
+ * xcb_icccm_get_text_property_reply_wipe().
  */
-uint8_t xcb_get_text_property_reply(xcb_connection_t *c,
-                                    xcb_get_property_cookie_t cookie,
-                                    xcb_get_text_property_reply_t *prop,
-                                    xcb_generic_error_t **e);
+uint8_t xcb_icccm_get_text_property_reply(xcb_connection_t *c,
+                                            xcb_get_property_cookie_t cookie,
+                                            xcb_icccm_get_text_property_reply_t *prop,
+                                            xcb_generic_error_t **e);
 
 /**
  * @brief Wipe prop structure members previously allocated by
- *        xcb_get_text_property_reply().
+ *        xcb_icccm_get_text_property_reply().
  * @param prop prop structure whose members is going to be freed.
  */
-void xcb_get_text_property_reply_wipe(xcb_get_text_property_reply_t *prop);
+void xcb_icccm_get_text_property_reply_wipe(xcb_icccm_get_text_property_reply_t *prop);
 
 /* WM_NAME */
 
@@ -122,19 +122,19 @@ void xcb_get_text_property_reply_wipe(xcb_get_text_property_reply_t *prop);
  * @param name_len Length of name value to set.
  * @param name Name value to set.
  */
-xcb_void_cookie_t xcb_set_wm_name_checked(xcb_connection_t *c,
-                                          xcb_window_t window,
-                                          xcb_atom_t encoding,
-                                          uint8_t format,
-                                          uint32_t name_len,
-                                          const char *name);
+xcb_void_cookie_t xcb_icccm_set_wm_name_checked(xcb_connection_t *c,
+                                                  xcb_window_t window,
+                                                  xcb_atom_t encoding,
+                                                  uint8_t format,
+                                                  uint32_t name_len,
+                                                  const char *name);
 
 /**
- * @see xcb_set_wm_name_checked()
+ * @see xcb_icccm_set_wm_name_checked()
  */
-xcb_void_cookie_t xcb_set_wm_name(xcb_connection_t *c, xcb_window_t window,
-                                  xcb_atom_t encoding, uint8_t format,
-                                  uint32_t name_len, const char *name);
+xcb_void_cookie_t xcb_icccm_set_wm_name(xcb_connection_t *c, xcb_window_t window,
+                                          xcb_atom_t encoding, uint8_t format,
+                                          uint32_t name_len, const char *name);
 
 /**
  * @brief Deliver a GetProperty request to the X server for WM_NAME.
@@ -142,14 +142,14 @@ xcb_void_cookie_t xcb_set_wm_name(xcb_connection_t *c, xcb_window_t window,
  * @param window Window X identifier.
  * @return The request cookie.
  */
-xcb_get_property_cookie_t xcb_get_wm_name(xcb_connection_t *c,
-                                          xcb_window_t window);
+xcb_get_property_cookie_t xcb_icccm_get_wm_name(xcb_connection_t *c,
+                                                  xcb_window_t window);
 
 /**
- * @see xcb_get_wm_name()
+ * @see xcb_icccm_get_wm_name()
  */
-xcb_get_property_cookie_t xcb_get_wm_name_unchecked(xcb_connection_t *c,
-                                                    xcb_window_t window);
+xcb_get_property_cookie_t xcb_icccm_get_wm_name_unchecked(xcb_connection_t *c,
+                                                            xcb_window_t window);
 
 /**
  * @brief Fill given structure with the WM_NAME property of a window.
@@ -157,13 +157,13 @@ xcb_get_property_cookie_t xcb_get_wm_name_unchecked(xcb_connection_t *c,
  * @param cookie Request cookie.
  * @param prop WM_NAME property value.
  * @param e Error if any.
- * @see xcb_get_text_property_reply()
+ * @see xcb_icccm_get_text_property_reply()
  * @return Return 1 on success, 0 otherwise.
  */
-uint8_t xcb_get_wm_name_reply(xcb_connection_t *c,
-                              xcb_get_property_cookie_t cookie,
-                              xcb_get_text_property_reply_t *prop,
-                              xcb_generic_error_t **e);
+uint8_t xcb_icccm_get_wm_name_reply(xcb_connection_t *c,
+                                      xcb_get_property_cookie_t cookie,
+                                      xcb_icccm_get_text_property_reply_t *prop,
+                                      xcb_generic_error_t **e);
 
 /* WM_ICON_NAME */
 
@@ -176,7 +176,17 @@ uint8_t xcb_get_wm_name_reply(xcb_connection_t *c,
  * @param name_len Length of name value to set.
  * @param name Name value to set.
  */
-xcb_void_cookie_t xcb_set_wm_icon_name_checked(xcb_connection_t *c,
+xcb_void_cookie_t xcb_icccm_set_wm_icon_name_checked(xcb_connection_t *c,
+                                                       xcb_window_t window,
+                                                       xcb_atom_t encoding,
+                                                       uint8_t format,
+                                                       uint32_t name_len,
+                                                       const char *name);
+
+/**
+ * @see xcb_icccm_set_wm_icon_name_checked()
+ */
+xcb_void_cookie_t xcb_icccm_set_wm_icon_name(xcb_connection_t *c,
                                                xcb_window_t window,
                                                xcb_atom_t encoding,
                                                uint8_t format,
@@ -184,29 +194,19 @@ xcb_void_cookie_t xcb_set_wm_icon_name_checked(xcb_connection_t *c,
                                                const char *name);
 
 /**
- * @see xcb_set_wm_icon_name_checked()
- */
-xcb_void_cookie_t xcb_set_wm_icon_name(xcb_connection_t *c,
-                                       xcb_window_t window,
-                                       xcb_atom_t encoding,
-                                       uint8_t format,
-                                       uint32_t name_len,
-                                       const char *name);
-
-/**
  * @brief Send request to get WM_ICON_NAME property of a window.
  * @param c The connection to the X server.
  * @param window Window X identifier.
  * @return The request cookie.
  */
-xcb_get_property_cookie_t xcb_get_wm_icon_name(xcb_connection_t *c,
-                                               xcb_window_t window);
+xcb_get_property_cookie_t xcb_icccm_get_wm_icon_name(xcb_connection_t *c,
+                                                       xcb_window_t window);
 
 /**
-  * @see xcb_get_wm_icon_name()
-  */
-xcb_get_property_cookie_t xcb_get_wm_icon_name_unchecked(xcb_connection_t *c,
-                                                         xcb_window_t window);
+ * @see xcb_icccm_get_wm_icon_name()
+ */
+xcb_get_property_cookie_t xcb_icccm_get_wm_icon_name_unchecked(xcb_connection_t *c,
+                                                                 xcb_window_t window);
 
 /**
  * @brief Fill given structure with the WM_ICON_NAME property of a window.
@@ -214,13 +214,13 @@ xcb_get_property_cookie_t xcb_get_wm_icon_name_unchecked(xcb_connection_t *c,
  * @param cookie Request cookie.
  * @param prop WM_ICON_NAME property value.
  * @param e Error if any.
- * @see xcb_get_text_property_reply()
+ * @see xcb_icccm_get_text_property_reply()
  * @return Return 1 on success, 0 otherwise.
  */
-uint8_t xcb_get_wm_icon_name_reply(xcb_connection_t *c,
-                                   xcb_get_property_cookie_t cookie,
-                                   xcb_get_text_property_reply_t *prop,
-                                   xcb_generic_error_t **e);
+uint8_t xcb_icccm_get_wm_icon_name_reply(xcb_connection_t *c,
+                                           xcb_get_property_cookie_t cookie,
+                                           xcb_icccm_get_text_property_reply_t *prop,
+                                           xcb_generic_error_t **e);
 
 /* WM_COLORMAP_WINDOWS */
 
@@ -233,33 +233,33 @@ uint8_t xcb_get_wm_icon_name_reply(xcb_connection_t *c,
  * @param list Windows list.
  * @return The request cookie.
  */
-xcb_void_cookie_t xcb_set_wm_colormap_windows_checked(xcb_connection_t *c,
+xcb_void_cookie_t xcb_icccm_set_wm_colormap_windows_checked(xcb_connection_t *c,
+                                                              xcb_window_t window,
+                                                              xcb_atom_t wm_colormap_windows_atom,
+                                                              uint32_t list_len,
+                                                              const xcb_window_t *list);
+
+/**
+ * @see xcb_icccm_set_wm_colormap_windows_checked()
+ */
+xcb_void_cookie_t xcb_icccm_set_wm_colormap_windows(xcb_connection_t *c,
                                                       xcb_window_t window,
                                                       xcb_atom_t wm_colormap_windows_atom,
                                                       uint32_t list_len,
                                                       const xcb_window_t *list);
 
 /**
- * @see xcb_set_wm_colormap_windows_checked()
- */
-xcb_void_cookie_t xcb_set_wm_colormap_windows(xcb_connection_t *c,
-                                              xcb_window_t window,
-                                              xcb_atom_t wm_colormap_windows_atom,
-                                              uint32_t list_len,
-                                              const xcb_window_t *list);
-
-/**
  * @brief WM_COLORMAP_WINDOWS structure.
  */
 typedef struct {
-  /** Length of the windows list */
-  uint32_t windows_len;
-  /** Windows list */
-  xcb_window_t *windows;
-  /** Store reply to avoid memory allocation, should normally not be
-      used directly */
-  xcb_get_property_reply_t *_reply;
-} xcb_get_wm_colormap_windows_reply_t;
+/** Length of the windows list */
+uint32_t windows_len;
+/** Windows list */
+xcb_window_t *windows;
+/** Store reply to avoid memory allocation, should normally not be
+    used directly */
+xcb_get_property_reply_t *_reply;
+} xcb_icccm_get_wm_colormap_windows_reply_t;
 
 /**
  * @brief Send request to get WM_COLORMAP_WINDOWS property of a given window.
@@ -267,16 +267,16 @@ typedef struct {
  * @param window Window X identifier.
  * @return The request cookie.
  */
-xcb_get_property_cookie_t xcb_get_wm_colormap_windows(xcb_connection_t *c,
-                                                      xcb_window_t window,
-                                                      xcb_atom_t wm_colormap_windows_atom);
+xcb_get_property_cookie_t xcb_icccm_get_wm_colormap_windows(xcb_connection_t *c,
+                                                              xcb_window_t window,
+                                                              xcb_atom_t wm_colormap_windows_atom);
 
 /**
- * @see xcb_get_wm_colormap_windows()
+ * @see xcb_icccm_get_wm_colormap_windows()
  */
-xcb_get_property_cookie_t xcb_get_wm_colormap_windows_unchecked(xcb_connection_t *c,
-                                                                xcb_window_t window,
-                                                                xcb_atom_t wm_colormap_windows_atom);
+xcb_get_property_cookie_t xcb_icccm_get_wm_colormap_windows_unchecked(xcb_connection_t *c,
+                                                                        xcb_window_t window,
+                                                                        xcb_atom_t wm_colormap_windows_atom);
 
 /**
  * @brief Fill the given structure with the WM_COLORMAP_WINDOWS property of a window.
@@ -285,10 +285,10 @@ xcb_get_property_cookie_t xcb_get_wm_colormap_windows_unchecked(xcb_connection_t
  * @return Return 1 on success, 0 otherwise.
  *
  * protocols structure members should be freed by
- * xcb_get_wm_protocols_reply_wipe().
+ * xcb_icccm_get_wm_protocols_reply_wipe().
  */
-uint8_t xcb_get_wm_colormap_windows_from_reply(xcb_get_property_reply_t *reply,
-                                               xcb_get_wm_colormap_windows_reply_t *colormap_windows);
+uint8_t xcb_icccm_get_wm_colormap_windows_from_reply(xcb_get_property_reply_t *reply,
+                                                       xcb_icccm_get_wm_colormap_windows_reply_t *colormap_windows);
 /**
  * @brief Fill the given structure with the WM_COLORMAP_WINDOWS property of a window.
  * @param c The connection to the X server.
@@ -298,21 +298,21 @@ uint8_t xcb_get_wm_colormap_windows_from_reply(xcb_get_property_reply_t *reply,
  * @return Return 1 on success, 0 otherwise.
  *
  * The parameter e supplied to this function must be NULL if
- * xcb_get_wm_colormap_windows_unchecked() is used.  Otherwise, it
+ * xcb_icccm_get_wm_colormap_windows_unchecked() is used.  Otherwise, it
  * stores the error if any. protocols structure members should be
- * freed by xcb_get_wm_colormap_windows_reply_wipe().
+ * freed by xcb_icccm_get_wm_colormap_windows_reply_wipe().
  */
-uint8_t xcb_get_wm_colormap_windows_reply(xcb_connection_t *c,
-                                          xcb_get_property_cookie_t cookie,
-                                          xcb_get_wm_colormap_windows_reply_t *windows,
-                                          xcb_generic_error_t **e);
+uint8_t xcb_icccm_get_wm_colormap_windows_reply(xcb_connection_t *c,
+                                                  xcb_get_property_cookie_t cookie,
+                                                  xcb_icccm_get_wm_colormap_windows_reply_t *windows,
+                                                  xcb_generic_error_t **e);
 
 /**
  * @brief Wipe protocols structure members previously allocated by
- *        xcb_get_wm_colormap_windows_reply().
+ *        xcb_icccm_get_wm_colormap_windows_reply().
  * @param windows windows structure whose members is going to be freed.
  */
-void xcb_get_wm_colormap_windows_reply_wipe(xcb_get_wm_colormap_windows_reply_t *windows);
+void xcb_icccm_get_wm_colormap_windows_reply_wipe(xcb_icccm_get_wm_colormap_windows_reply_t *windows);
 
 /* WM_CLIENT_MACHINE */
 
@@ -325,7 +325,17 @@ void xcb_get_wm_colormap_windows_reply_wipe(xcb_get_wm_colormap_windows_reply_t
  * @param name_len Length of name value to set.
  * @param name Name value to set.
  */
-xcb_void_cookie_t xcb_set_wm_client_machine_checked(xcb_connection_t *c,
+xcb_void_cookie_t xcb_icccm_set_wm_client_machine_checked(xcb_connection_t *c,
+                                                            xcb_window_t window,
+                                                            xcb_atom_t encoding,
+                                                            uint8_t format,
+                                                            uint32_t name_len,
+                                                            const char *name);
+
+/**
+ * @see xcb_icccm_set_wm_client_machine_checked()
+ */
+xcb_void_cookie_t xcb_icccm_set_wm_client_machine(xcb_connection_t *c,
                                                     xcb_window_t window,
                                                     xcb_atom_t encoding,
                                                     uint8_t format,
@@ -333,29 +343,19 @@ xcb_void_cookie_t xcb_set_wm_client_machine_checked(xcb_connection_t *c,
                                                     const char *name);
 
 /**
- * @see xcb_set_wm_client_machine_checked()
- */
-xcb_void_cookie_t xcb_set_wm_client_machine(xcb_connection_t *c,
-                                            xcb_window_t window,
-                                            xcb_atom_t encoding,
-                                            uint8_t format,
-                                            uint32_t name_len,
-                                            const char *name);
-
-/**
  * @brief Send request to get WM_CLIENT_MACHINE property of a window.
  * @param c The connection to the X server.
  * @param window Window X identifier.
  * @return The request cookie.
  */
-xcb_get_property_cookie_t xcb_get_wm_client_machine(xcb_connection_t *c,
-                                                    xcb_window_t window);
+xcb_get_property_cookie_t xcb_icccm_get_wm_client_machine(xcb_connection_t *c,
+                                                            xcb_window_t window);
 
 /**
- * @see xcb_get_wm_client_machine()
+ * @see xcb_icccm_get_wm_client_machine()
  */
-xcb_get_property_cookie_t xcb_get_wm_client_machine_unchecked(xcb_connection_t *c,
-                                                              xcb_window_t window);
+xcb_get_property_cookie_t xcb_icccm_get_wm_client_machine_unchecked(xcb_connection_t *c,
+                                                                      xcb_window_t window);
 
 /**
  * @brief Fill given structure with the WM_CLIENT_MACHINE property of a window.
@@ -363,13 +363,13 @@ xcb_get_property_cookie_t xcb_get_wm_client_machine_unchecked(xcb_connection_t *
  * @param cookie Request cookie.
  * @param prop WM_CLIENT_MACHINE property value.
  * @param e Error if any.
- * @see xcb_get_text_property_reply()
+ * @see xcb_icccm_get_text_property_reply()
  * @return Return 1 on success, 0 otherwise.
  */
-uint8_t xcb_get_wm_client_machine_reply(xcb_connection_t *c,
-                                        xcb_get_property_cookie_t cookie,
-                                        xcb_get_text_property_reply_t *prop,
-                                        xcb_generic_error_t **e);
+uint8_t xcb_icccm_get_wm_client_machine_reply(xcb_connection_t *c,
+                                                xcb_get_property_cookie_t cookie,
+                                                xcb_icccm_get_text_property_reply_t *prop,
+                                                xcb_generic_error_t **e);
 
 /* WM_CLASS */
 
@@ -389,28 +389,28 @@ uint8_t xcb_get_wm_client_machine_reply(xcb_connection_t *c,
  * @param class WM_CLASS string.
  * @return The request cookie.
  */
-xcb_void_cookie_t xcb_set_wm_class_checked(xcb_connection_t *c,
-                                           xcb_window_t window,
-                                           uint32_t class_len,
-                                           const char *class);
+xcb_void_cookie_t xcb_icccm_set_wm_class_checked(xcb_connection_t *c,
+                                                   xcb_window_t window,
+                                                   uint32_t class_len,
+                                                   const char *class);
 
 /**
- * @see xcb_set_wm_class_checked()
+ * @see xcb_icccm_set_wm_class_checked()
  */
-xcb_void_cookie_t xcb_set_wm_class(xcb_connection_t *c,
-                                   xcb_window_t window,
-                                   uint32_t class_len,
-                                   const char *class);
+xcb_void_cookie_t xcb_icccm_set_wm_class(xcb_connection_t *c,
+                                           xcb_window_t window,
+                                           uint32_t class_len,
+                                           const char *class);
 
 typedef struct {
-  /** Instance name */
-  char *instance_name;
-  /** Class of application */
-  char *class_name;
-  /** Store reply to avoid memory allocation, should normally not be
-      used directly */
-  xcb_get_property_reply_t *_reply;
-} xcb_get_wm_class_reply_t;
+/** Instance name */
+char *instance_name;
+/** Class of application */
+char *class_name;
+/** Store reply to avoid memory allocation, should normally not be
+    used directly */
+xcb_get_property_reply_t *_reply;
+} xcb_icccm_get_wm_class_reply_t;
 
 /**
  * @brief Deliver a GetProperty request to the X server for WM_CLASS.
@@ -418,14 +418,14 @@ typedef struct {
  * @param window Window X identifier.
  * @return The request cookie.
  */
-xcb_get_property_cookie_t xcb_get_wm_class(xcb_connection_t *c,
-                                           xcb_window_t window);
+xcb_get_property_cookie_t xcb_icccm_get_wm_class(xcb_connection_t *c,
+                                                   xcb_window_t window);
 
 /**
- * @see xcb_get_wm_class()
+ * @see xcb_icccm_get_wm_class()
  */
-xcb_get_property_cookie_t xcb_get_wm_class_unchecked(xcb_connection_t *c,
-                                                     xcb_window_t window);
+xcb_get_property_cookie_t xcb_icccm_get_wm_class_unchecked(xcb_connection_t *c,
+                                                             xcb_window_t window);
 
 
 /**
@@ -435,8 +435,8 @@ xcb_get_property_cookie_t xcb_get_wm_class_unchecked(xcb_connection_t *c,
  * @return Return 1 on success, 0 otherwise.
  */
 uint8_t
-xcb_get_wm_class_from_reply(xcb_get_wm_class_reply_t *prop,
-                            xcb_get_property_reply_t *reply);
+xcb_icccm_get_wm_class_from_reply(xcb_icccm_get_wm_class_reply_t *prop,
+                                    xcb_get_property_reply_t *reply);
 
 /**
  * @brief Fill given structure with the WM_CLASS property of a window.
@@ -447,21 +447,21 @@ xcb_get_wm_class_from_reply(xcb_get_wm_class_reply_t *prop,
  * @return Return 1 on success, 0 otherwise.
  *
  * The parameter e supplied to this function must be NULL if
- * xcb_get_wm_class_unchecked() is used.  Otherwise, it stores the
+ * xcb_icccm_get_wm_class_unchecked() is used.  Otherwise, it stores the
  * error if any. prop structure members should be freed by
- * xcb_get_wm_class_reply_wipe().
+ * xcb_icccm_get_wm_class_reply_wipe().
  */
-uint8_t xcb_get_wm_class_reply(xcb_connection_t *c,
-                               xcb_get_property_cookie_t cookie,
-                               xcb_get_wm_class_reply_t *prop,
-                               xcb_generic_error_t **e);
+uint8_t xcb_icccm_get_wm_class_reply(xcb_connection_t *c,
+                                       xcb_get_property_cookie_t cookie,
+                                       xcb_icccm_get_wm_class_reply_t *prop,
+                                       xcb_generic_error_t **e);
 
 /**
  * @brief Wipe prop structure members previously allocated by
- *        xcb_get_wm_class_reply().
+ *        xcb_icccm_get_wm_class_reply().
  * @param prop prop structure whose members is going to be freed.
  */
-void xcb_get_wm_class_reply_wipe(xcb_get_wm_class_reply_t *prop);
+void xcb_icccm_get_wm_class_reply_wipe(xcb_icccm_get_wm_class_reply_t *prop);
 
 /* WM_TRANSIENT_FOR */
 
@@ -472,16 +472,16 @@ void xcb_get_wm_class_reply_wipe(xcb_get_wm_class_reply_t *prop);
  * @param transient_for_window The WM_TRANSIENT_FOR window X identifier.
  * @return The request cookie.
  */
-xcb_void_cookie_t xcb_set_wm_transient_for_checked(xcb_connection_t *c,
-                                                   xcb_window_t window,
-                                                   xcb_window_t transient_for_window);
+xcb_void_cookie_t xcb_icccm_set_wm_transient_for_checked(xcb_connection_t *c,
+                                                           xcb_window_t window,
+                                                           xcb_window_t transient_for_window);
 
 /**
- * @see xcb_set_wm_transient_for
+ * @see xcb_icccm_set_wm_transient_for
  */
-xcb_void_cookie_t xcb_set_wm_transient_for(xcb_connection_t *c,
-                                           xcb_window_t window,
-                                           xcb_window_t transient_for_window);
+xcb_void_cookie_t xcb_icccm_set_wm_transient_for(xcb_connection_t *c,
+                                                   xcb_window_t window,
+                                                   xcb_window_t transient_for_window);
 
 /**
  * @brief Send request to get WM_TRANSIENT_FOR property of a window.
@@ -489,14 +489,14 @@ xcb_void_cookie_t xcb_set_wm_transient_for(xcb_connection_t *c,
  * @param window Window X identifier.
  * @return The request cookie.
  */
-xcb_get_property_cookie_t xcb_get_wm_transient_for(xcb_connection_t *c,
-                                                   xcb_window_t window);
+xcb_get_property_cookie_t xcb_icccm_get_wm_transient_for(xcb_connection_t *c,
+                                                           xcb_window_t window);
 
 /**
- * @see xcb_get_wm_transient_for_unchecked()
+ * @see xcb_icccm_get_wm_transient_for_unchecked()
  */
-xcb_get_property_cookie_t xcb_get_wm_transient_for_unchecked(xcb_connection_t *c,
-                                                             xcb_window_t window);
+xcb_get_property_cookie_t xcb_icccm_get_wm_transient_for_unchecked(xcb_connection_t *c,
+                                                                     xcb_window_t window);
 
 /**
  * @brief Fill given window pointer with the WM_TRANSIENT_FOR property of a window.
@@ -505,8 +505,8 @@ xcb_get_property_cookie_t xcb_get_wm_transient_for_unchecked(xcb_connection_t *c
  * @return Return 1 on success, 0 otherwise.
  */
 uint8_t
-xcb_get_wm_transient_for_from_reply(xcb_window_t *prop,
-                                    xcb_get_property_reply_t *reply);
+xcb_icccm_get_wm_transient_for_from_reply(xcb_window_t *prop,
+                                            xcb_get_property_reply_t *reply);
 /**
  * @brief Fill given structure with the WM_TRANSIENT_FOR property of a window.
  * @param c The connection to the X server.
@@ -516,57 +516,57 @@ xcb_get_wm_transient_for_from_reply(xcb_window_t *prop,
  * @return Return 1 on success, 0 otherwise.
  *
  * The parameter e supplied to this function must be NULL if
- * xcb_get_wm_transient_for_unchecked() is used.  Otherwise, it stores
+ * xcb_icccm_get_wm_transient_for_unchecked() is used.  Otherwise, it stores
  * the error if any.
  */
-uint8_t xcb_get_wm_transient_for_reply(xcb_connection_t *c,
-                                       xcb_get_property_cookie_t cookie,
-                                       xcb_window_t *prop,
-                                       xcb_generic_error_t **e);
+uint8_t xcb_icccm_get_wm_transient_for_reply(xcb_connection_t *c,
+                                               xcb_get_property_cookie_t cookie,
+                                               xcb_window_t *prop,
+                                               xcb_generic_error_t **e);
 
 /* WM_SIZE_HINTS */
 
 typedef enum {
-  XCB_SIZE_HINT_US_POSITION = 1 << 0,
-  XCB_SIZE_HINT_US_SIZE = 1 << 1,
-  XCB_SIZE_HINT_P_POSITION = 1 << 2,
-  XCB_SIZE_HINT_P_SIZE = 1 << 3,
-  XCB_SIZE_HINT_P_MIN_SIZE = 1 << 4,
-  XCB_SIZE_HINT_P_MAX_SIZE = 1 << 5,
-  XCB_SIZE_HINT_P_RESIZE_INC = 1 << 6,
-  XCB_SIZE_HINT_P_ASPECT = 1 << 7,
-  XCB_SIZE_HINT_BASE_SIZE = 1 << 8,
-  XCB_SIZE_HINT_P_WIN_GRAVITY = 1 << 9
-} xcb_size_hints_flags_t;
+XCB_ICCCM_SIZE_HINT_US_POSITION = 1 << 0,
+  XCB_ICCCM_SIZE_HINT_US_SIZE = 1 << 1,
+  XCB_ICCCM_SIZE_HINT_P_POSITION = 1 << 2,
+  XCB_ICCCM_SIZE_HINT_P_SIZE = 1 << 3,
+  XCB_ICCCM_SIZE_HINT_P_MIN_SIZE = 1 << 4,
+  XCB_ICCCM_SIZE_HINT_P_MAX_SIZE = 1 << 5,
+  XCB_ICCCM_SIZE_HINT_P_RESIZE_INC = 1 << 6,
+  XCB_ICCCM_SIZE_HINT_P_ASPECT = 1 << 7,
+  XCB_ICCCM_SIZE_HINT_BASE_SIZE = 1 << 8,
+  XCB_ICCCM_SIZE_HINT_P_WIN_GRAVITY = 1 << 9
+  } xcb_icccm_size_hints_flags_t;
 
 /**
  * @brief Size hints structure.
  */
 typedef struct {
-  /** User specified flags */
-  uint32_t flags;
-  /** User-specified position */
-  int32_t x, y;
-  /** User-specified size */
-  int32_t width, height;
-  /** Program-specified minimum size */
-  int32_t min_width, min_height;
-  /** Program-specified maximum size */
-  int32_t max_width, max_height;
-  /** Program-specified resize increments */
-  int32_t width_inc, height_inc;
-  /** Program-specified minimum aspect ratios */
-  int32_t min_aspect_num, min_aspect_den;
-  /** Program-specified maximum aspect ratios */
-  int32_t max_aspect_num, max_aspect_den;
-  /** Program-specified base size */
-  int32_t base_width, base_height;
-  /** Program-specified window gravity */
-  uint32_t win_gravity;
+/** User specified flags */
+uint32_t flags;
+/** User-specified position */
+int32_t x, y;
+/** User-specified size */
+int32_t width, height;
+/** Program-specified minimum size */
+int32_t min_width, min_height;
+/** Program-specified maximum size */
+int32_t max_width, max_height;
+/** Program-specified resize increments */
+int32_t width_inc, height_inc;
+/** Program-specified minimum aspect ratios */
+int32_t min_aspect_num, min_aspect_den;
+/** Program-specified maximum aspect ratios */
+int32_t max_aspect_num, max_aspect_den;
+/** Program-specified base size */
+int32_t base_width, base_height;
+/** Program-specified window gravity */
+uint32_t win_gravity;
 } xcb_size_hints_t;
 
 /** Number of elements in this structure */
-#define XCB_NUM_WM_SIZE_HINTS_ELEMENTS 18
+#define XCB_ICCCM_NUM_WM_SIZE_HINTS_ELEMENTS 18
 
 /**
  * @brief Set size hints to a given position.
@@ -575,8 +575,8 @@ typedef struct {
  * @param x The X position.
  * @param y The Y position.
  */
-void xcb_size_hints_set_position(xcb_size_hints_t *hints, int user_specified,
-                                 int32_t x, int32_t y);
+void xcb_icccm_size_hints_set_position(xcb_size_hints_t *hints, int user_specified,
+                                         int32_t x, int32_t y);
 
 /**
  * @brief Set size hints to a given size.
@@ -585,8 +585,8 @@ void xcb_size_hints_set_position(xcb_size_hints_t *hints, int user_specified,
  * @param width The width.
  * @param height The height.
  */
-void xcb_size_hints_set_size(xcb_size_hints_t *hints, int user_specified,
-                             int32_t width, int32_t height);
+void xcb_icccm_size_hints_set_size(xcb_size_hints_t *hints, int user_specified,
+                                     int32_t width, int32_t height);
 
 /**
  * @brief Set size hints to a given minimum size.
@@ -594,8 +594,8 @@ void xcb_size_hints_set_size(xcb_size_hints_t *hints, int user_specified,
  * @param width The minimum width.
  * @param height The minimum height.
  */
-void xcb_size_hints_set_min_size(xcb_size_hints_t *hints, int32_t min_width,
-                                 int32_t min_height);
+void xcb_icccm_size_hints_set_min_size(xcb_size_hints_t *hints, int32_t min_width,
+                                         int32_t min_height);
 
 /**
  * @brief Set size hints to a given maximum size.
@@ -603,8 +603,8 @@ void xcb_size_hints_set_min_size(xcb_size_hints_t *hints, int32_t min_width,
  * @param width The maximum width.
  * @param height The maximum height.
  */
-void xcb_size_hints_set_max_size(xcb_size_hints_t *hints, int32_t max_width,
-                                 int32_t max_height);
+void xcb_icccm_size_hints_set_max_size(xcb_size_hints_t *hints, int32_t max_width,
+                                         int32_t max_height);
 
 /**
  * @brief Set size hints to a given resize increments.
@@ -612,8 +612,8 @@ void xcb_size_hints_set_max_size(xcb_size_hints_t *hints, int32_t max_width,
  * @param width The resize increments width.
  * @param height The resize increments height.
  */
-void xcb_size_hints_set_resize_inc(xcb_size_hints_t *hints, int32_t width_inc,
-                                   int32_t height_inc);
+void xcb_icccm_size_hints_set_resize_inc(xcb_size_hints_t *hints, int32_t width_inc,
+                                           int32_t height_inc);
 
 /**
  * @brief Set size hints to a given aspect ratios.
@@ -623,9 +623,9 @@ void xcb_size_hints_set_resize_inc(xcb_size_hints_t *hints, int32_t width_inc,
  * @param max_aspect_num The maximum aspect ratios for the width.
  * @param max_aspect_den The maximum aspect ratios for the height.
  */
-void xcb_size_hints_set_aspect(xcb_size_hints_t *hints, int32_t min_aspect_num,
-                               int32_t min_aspect_den, int32_t max_aspect_num,
-                               int32_t max_aspect_den);
+void xcb_icccm_size_hints_set_aspect(xcb_size_hints_t *hints, int32_t min_aspect_num,
+                                       int32_t min_aspect_den, int32_t max_aspect_num,
+                                     int32_t max_aspect_den);
 
 /**
  * @brief Set size hints to a given base size.
@@ -633,16 +633,16 @@ void xcb_size_hints_set_aspect(xcb_size_hints_t *hints, int32_t min_aspect_num,
  * @param base_width Base width.
  * @param base_height Base height.
  */
-void xcb_size_hints_set_base_size(xcb_size_hints_t *hints, int32_t base_width,
-                                  int32_t base_height);
+void xcb_icccm_size_hints_set_base_size(xcb_size_hints_t *hints, int32_t base_width,
+                                          int32_t base_height);
 
 /**
  * @brief Set size hints to a given window gravity.
  * @param hints SIZE_HINTS structure.
  * @param win_gravity Window gravity value.
  */
-void xcb_size_hints_set_win_gravity(xcb_size_hints_t *hints,
-                                    xcb_gravity_t win_gravity);
+void xcb_icccm_size_hints_set_win_gravity(xcb_size_hints_t *hints,
+                                            xcb_gravity_t win_gravity);
 
 /**
  * @brief Deliver a ChangeProperty request to set a value to a given property.
@@ -651,18 +651,18 @@ void xcb_size_hints_set_win_gravity(xcb_size_hints_t *hints,
  * @param property Property to set value for.
  * @param hints Hints value to set.
  */
-xcb_void_cookie_t xcb_set_wm_size_hints_checked(xcb_connection_t *c,
-						xcb_window_t window,
-						xcb_atom_t property,
-						xcb_size_hints_t *hints);
+xcb_void_cookie_t xcb_icccm_set_wm_size_hints_checked(xcb_connection_t *c,
+                                                        xcb_window_t window,
+                                                      xcb_atom_t property,
+                                                      xcb_size_hints_t *hints);
 
 /**
- * @see xcb_set_wm_size_hints_checked()
+ * @see xcb_icccm_set_wm_size_hints_checked()
  */
-xcb_void_cookie_t xcb_set_wm_size_hints(xcb_connection_t *c,
-					xcb_window_t window,
-					xcb_atom_t property,
-					xcb_size_hints_t *hints);
+xcb_void_cookie_t xcb_icccm_set_wm_size_hints(xcb_connection_t *c,
+                                                xcb_window_t window,
+                                              xcb_atom_t property,
+                                              xcb_size_hints_t *hints);
 
 /**
  * @brief Send request to get size hints structure for the named property.
@@ -671,16 +671,16 @@ xcb_void_cookie_t xcb_set_wm_size_hints(xcb_connection_t *c,
  * @param property Specify the property name.
  * @return The request cookie.
  */
-xcb_get_property_cookie_t xcb_get_wm_size_hints(xcb_connection_t *c,
-                                                xcb_window_t window,
-                                                xcb_atom_t property);
+xcb_get_property_cookie_t xcb_icccm_get_wm_size_hints(xcb_connection_t *c,
+                                                        xcb_window_t window,
+                                                      xcb_atom_t property);
 
 /**
- * @see xcb_get_wm_size_hints()
+ * @see xcb_icccm_get_wm_size_hints()
  */
-xcb_get_property_cookie_t xcb_get_wm_size_hints_unchecked(xcb_connection_t *c,
-                                                          xcb_window_t window,
-                                                          xcb_atom_t property);
+xcb_get_property_cookie_t xcb_icccm_get_wm_size_hints_unchecked(xcb_connection_t *c,
+                                                                  xcb_window_t window,
+                                                                xcb_atom_t property);
 
 /**
  * @brief Fill given structure with the size hints of the named property.
@@ -691,13 +691,13 @@ xcb_get_property_cookie_t xcb_get_wm_size_hints_unchecked(xcb_connection_t *c,
  * @return Return 1 on success, 0 otherwise.
  *
  * The parameter e supplied to this function must be NULL if
- * xcb_get_wm_size_hints_unchecked() is used.  Otherwise, it stores
+ * xcb_icccm_get_wm_size_hints_unchecked() is used.  Otherwise, it stores
  * the error if any. The returned pointer should be freed.
  */
-uint8_t xcb_get_wm_size_hints_reply(xcb_connection_t *c,
-                                    xcb_get_property_cookie_t cookie,
-                                    xcb_size_hints_t *hints,
-                                    xcb_generic_error_t **e);
+uint8_t xcb_icccm_get_wm_size_hints_reply(xcb_connection_t *c,
+                                            xcb_get_property_cookie_t cookie,
+                                          xcb_size_hints_t *hints,
+                                          xcb_generic_error_t **e);
 
 /* WM_NORMAL_HINTS */
 
@@ -707,16 +707,16 @@ uint8_t xcb_get_wm_size_hints_reply(xcb_connection_t *c,
  * @param window Window X identifier.
  * @param hints Hints value to set.
  */
-xcb_void_cookie_t xcb_set_wm_normal_hints_checked(xcb_connection_t *c,
-						  xcb_window_t window,
-						  xcb_size_hints_t *hints);
+xcb_void_cookie_t xcb_icccm_set_wm_normal_hints_checked(xcb_connection_t *c,
+                                                          xcb_window_t window,
+                                                        xcb_size_hints_t *hints);
 
 /**
- * @see xcb_set_wm_normal_hints_checked()
+ * @see xcb_icccm_set_wm_normal_hints_checked()
  */
-xcb_void_cookie_t xcb_set_wm_normal_hints(xcb_connection_t *c,
-					  xcb_window_t window,
-					  xcb_size_hints_t *hints);
+xcb_void_cookie_t xcb_icccm_set_wm_normal_hints(xcb_connection_t *c,
+                                                  xcb_window_t window,
+                                                xcb_size_hints_t *hints);
 
 /**
  * @brief Send request to get WM_NORMAL_HINTS property of a window.
@@ -724,14 +724,14 @@ xcb_void_cookie_t xcb_set_wm_normal_hints(xcb_connection_t *c,
  * @param window Window X identifier.
  * @return The request cookie.
  */
-xcb_get_property_cookie_t xcb_get_wm_normal_hints(xcb_connection_t *c,
-                                                  xcb_window_t window);
+xcb_get_property_cookie_t xcb_icccm_get_wm_normal_hints(xcb_connection_t *c,
+                                                          xcb_window_t window);
 
 /**
- * @see xcb_get_wm_normal_hints()
+ * @see xcb_icccm_get_wm_normal_hints()
  */
-xcb_get_property_cookie_t xcb_get_wm_normal_hints_unchecked(xcb_connection_t *c,
-                                                            xcb_window_t window);
+xcb_get_property_cookie_t xcb_icccm_get_wm_normal_hints_unchecked(xcb_connection_t *c,
+                                                                    xcb_window_t window);
 
 /**
  * @brief Fill given structure with the WM_NORMAL_HINTS property of a window.
@@ -740,8 +740,8 @@ xcb_get_property_cookie_t xcb_get_wm_normal_hints_unchecked(xcb_connection_t *c,
  * @return Return 1 on success, 0 otherwise.
  */
 uint8_t
-xcb_get_wm_size_hints_from_reply(xcb_size_hints_t *hints,
-                                 xcb_get_property_reply_t *reply);
+xcb_icccm_get_wm_size_hints_from_reply(xcb_size_hints_t *hints,
+                                         xcb_get_property_reply_t *reply);
 
 /**
  * @brief Fill given structure with the WM_NORMAL_HINTS property of a window.
@@ -752,13 +752,13 @@ xcb_get_wm_size_hints_from_reply(xcb_size_hints_t *hints,
  * @return Return 1 on success, 0 otherwise.
  *
  * The parameter e supplied to this function must be NULL if
- * xcb_get_wm_normal_hints_unchecked() is used.  Otherwise, it stores
+ * xcb_icccm_get_wm_normal_hints_unchecked() is used.  Otherwise, it stores
  * the error if any. The returned pointer should be freed.
  */
-uint8_t xcb_get_wm_normal_hints_reply(xcb_connection_t *c,
-                                      xcb_get_property_cookie_t cookie,
-                                      xcb_size_hints_t *hints,
-                                      xcb_generic_error_t **e);
+uint8_t xcb_icccm_get_wm_normal_hints_reply(xcb_connection_t *c,
+                                              xcb_get_property_cookie_t cookie,
+                                            xcb_size_hints_t *hints,
+                                            xcb_generic_error_t **e);
 
 /* WM_HINTS */
 
@@ -766,10 +766,10 @@ uint8_t xcb_get_wm_normal_hints_reply(xcb_connection_t *c,
  * @brief WM hints structure (may be extended in the future).
  */
 typedef struct {
-  /** Marks which fields in this structure are defined */
-  int32_t flags;
-  /** Does this application rely on the window manager to get keyboard
-      input? */
+/** Marks which fields in this structure are defined */
+int32_t flags;
+/** Does this application rely on the window manager to get keyboard
+    input? */
   uint32_t input;
   /** See below */
   int32_t initial_state;
@@ -783,110 +783,110 @@ typedef struct {
   xcb_pixmap_t icon_mask;
   /* Identifier of related window group */
   xcb_window_t window_group;
-} xcb_wm_hints_t;
+} xcb_icccm_wm_hints_t;
 
 /** Number of elements in this structure */
-#define XCB_NUM_WM_HINTS_ELEMENTS 9
+#define XCB_ICCCM_NUM_WM_HINTS_ELEMENTS 9
 
 /**
  * @brief WM_HINTS window states.
  */
 typedef enum {
-  XCB_WM_STATE_WITHDRAWN = 0,
-  XCB_WM_STATE_NORMAL = 1,
-  XCB_WM_STATE_ICONIC = 3
-} xcb_wm_state_t;
+  XCB_ICCCM_WM_STATE_WITHDRAWN = 0,
+  XCB_ICCCM_WM_STATE_NORMAL = 1,
+  XCB_ICCCM_WM_STATE_ICONIC = 3
+} xcb_icccm_wm_state_t;
 
 typedef enum {
-  XCB_WM_HINT_INPUT = (1L << 0),
-  XCB_WM_HINT_STATE = (1L << 1),
-  XCB_WM_HINT_ICON_PIXMAP = (1L << 2),
-  XCB_WM_HINT_ICON_WINDOW = (1L << 3),
-  XCB_WM_HINT_ICON_POSITION = (1L << 4),
-  XCB_WM_HINT_ICON_MASK = (1L << 5),
-  XCB_WM_HINT_WINDOW_GROUP = (1L << 6),
-  XCB_WM_HINT_X_URGENCY = (1L << 8)
-} xcb_wm_t;
-
-#define XCB_WM_ALL_HINTS (XCB_WM_HINT_INPUT | XCB_WM_HINT_STATE |\
-                          XCB_WM_HINT_ICON_PIXMAP | XCB_WM_HINT_ICON_WINDOW |\
-                          XCB_WM_HINT_ICON_POSITION | XCB_WM_HINT_ICON_MASK |\
-                          XCB_WM_HINT_WINDOW_GROUP)
+  XCB_ICCCM_WM_HINT_INPUT = (1L << 0),
+  XCB_ICCCM_WM_HINT_STATE = (1L << 1),
+  XCB_ICCCM_WM_HINT_ICON_PIXMAP = (1L << 2),
+  XCB_ICCCM_WM_HINT_ICON_WINDOW = (1L << 3),
+  XCB_ICCCM_WM_HINT_ICON_POSITION = (1L << 4),
+  XCB_ICCCM_WM_HINT_ICON_MASK = (1L << 5),
+  XCB_ICCCM_WM_HINT_WINDOW_GROUP = (1L << 6),
+  XCB_ICCCM_WM_HINT_X_URGENCY = (1L << 8)
+} xcb_icccm_wm_t;
+
+#define XCB_ICCCM_WM_ALL_HINTS (XCB_ICCCM_WM_HINT_INPUT | XCB_ICCCM_WM_HINT_STATE | \
+                                XCB_ICCCM_WM_HINT_ICON_PIXMAP | XCB_ICCCM_WM_HINT_ICON_WINDOW | \
+                                XCB_ICCCM_WM_HINT_ICON_POSITION | XCB_ICCCM_WM_HINT_ICON_MASK | \
+                                XCB_ICCCM_WM_HINT_WINDOW_GROUP)
 
 /**
  * @brief Get urgency hint.
  * @param hints WM_HINTS structure.
  * @return Urgency hint value.
  */
-uint32_t xcb_wm_hints_get_urgency(xcb_wm_hints_t *hints);
+uint32_t xcb_icccm_wm_hints_get_urgency(xcb_icccm_wm_hints_t *hints);
 
 /**
  * @brief Set input focus.
  * @param hints WM_HINTS structure.
  * @param input Input focus.
  */
-void xcb_wm_hints_set_input(xcb_wm_hints_t *hints, uint8_t input);
+void xcb_icccm_wm_hints_set_input(xcb_icccm_wm_hints_t *hints, uint8_t input);
 
 /**
  * @brief Set hints state to 'iconic'.
  * @param hints WM_HINTS structure.
  */
-void xcb_wm_hints_set_iconic(xcb_wm_hints_t *hints);
+void xcb_icccm_wm_hints_set_iconic(xcb_icccm_wm_hints_t *hints);
 
 /**
  * @brief Set hints state to 'normal'.
  * @param hints WM_HINTS structure.
  */
-void xcb_wm_hints_set_normal(xcb_wm_hints_t *hints);
+void xcb_icccm_wm_hints_set_normal(xcb_icccm_wm_hints_t *hints);
 
 /**
  * @brief Set hints state to 'withdrawn'.
  * @param hints WM_HINTS structure.
  */
-void xcb_wm_hints_set_withdrawn(xcb_wm_hints_t *hints);
+void xcb_icccm_wm_hints_set_withdrawn(xcb_icccm_wm_hints_t *hints);
 
 /**
  * @brief Set hints state to none.
  * @param hints WM_HINTS structure.
  */
-void xcb_wm_hints_set_none(xcb_wm_hints_t *hints);
+void xcb_icccm_wm_hints_set_none(xcb_icccm_wm_hints_t *hints);
 
 /**
  * @brief Set pixmap to be used as icon.
  * @param hints WM_HINTS structure.
  * @param icon_pixmap Pixmap.
  */
-void xcb_wm_hints_set_icon_pixmap(xcb_wm_hints_t *hints,
-                                  xcb_pixmap_t icon_pixmap);
+void xcb_icccm_wm_hints_set_icon_pixmap(xcb_icccm_wm_hints_t *hints,
+                                        xcb_pixmap_t icon_pixmap);
 
 /**
  * @brief Set icon mask bitmap.
  * @param hints WM_HINTS structure.
  * @param icon_mask Pixmap.
  */
-void xcb_wm_hints_set_icon_mask(xcb_wm_hints_t *hints, xcb_pixmap_t icon_mask);
+void xcb_icccm_wm_hints_set_icon_mask(xcb_icccm_wm_hints_t *hints, xcb_pixmap_t icon_mask);
 
 /**
  * @brief Set window identifier to be used as icon.
  * @param hints WM_HINTS structure.
  * @param icon_window Window X identifier.
  */
-void xcb_wm_hints_set_icon_window(xcb_wm_hints_t *hints,
-                                  xcb_window_t icon_window);
+void xcb_icccm_wm_hints_set_icon_window(xcb_icccm_wm_hints_t *hints,
+                                        xcb_window_t icon_window);
 
 /**
  * @brief Set identifier of related window group.
  * @param hints WM_HINTS structure.
  * @param window_group Window X identifier.
  */
-void xcb_wm_hints_set_window_group(xcb_wm_hints_t *hints,
-                                   xcb_window_t window_group);
+void xcb_icccm_wm_hints_set_window_group(xcb_icccm_wm_hints_t *hints,
+                                         xcb_window_t window_group);
 
 /**
  * @brief Set urgency hints flag.
  * @param hints WM_HINTS structure.
  */
-void xcb_wm_hints_set_urgency(xcb_wm_hints_t *hints);
+void xcb_icccm_wm_hints_set_urgency(xcb_icccm_wm_hints_t *hints);
 
 /**
  * @brief Deliver a SetProperty request to set WM_HINTS property value.
@@ -894,16 +894,16 @@ void xcb_wm_hints_set_urgency(xcb_wm_hints_t *hints);
  * @param window Window X identifier.
  * @param hints Hints value to set.
  */
-xcb_void_cookie_t xcb_set_wm_hints_checked(xcb_connection_t *c,
-					   xcb_window_t window,
-					   xcb_wm_hints_t *hints);
+xcb_void_cookie_t xcb_icccm_set_wm_hints_checked(xcb_connection_t *c,
+                                                 xcb_window_t window,
+                                                 xcb_icccm_wm_hints_t *hints);
 
 /**
- * @see xcb_set_wm_hints_checked()
+ * @see xcb_icccm_set_wm_hints_checked()
  */
-xcb_void_cookie_t xcb_set_wm_hints(xcb_connection_t *c,
-				   xcb_window_t window,
-				   xcb_wm_hints_t *hints);
+xcb_void_cookie_t xcb_icccm_set_wm_hints(xcb_connection_t *c,
+                                         xcb_window_t window,
+                                         xcb_icccm_wm_hints_t *hints);
 
 /**
  * @brief Send request to get WM_HINTS property of a window.
@@ -911,14 +911,14 @@ xcb_void_cookie_t xcb_set_wm_hints(xcb_connection_t *c,
  * @param window Window X identifier.
  * @return The request cookie.
  */
-xcb_get_property_cookie_t xcb_get_wm_hints(xcb_connection_t *c,
-                                           xcb_window_t window);
+xcb_get_property_cookie_t xcb_icccm_get_wm_hints(xcb_connection_t *c,
+                                                 xcb_window_t window);
 
 /**
- * @see xcb_get_wm_hints()
+ * @see xcb_icccm_get_wm_hints()
  */
-xcb_get_property_cookie_t xcb_get_wm_hints_unchecked(xcb_connection_t *c,
-                                                     xcb_window_t window);
+xcb_get_property_cookie_t xcb_icccm_get_wm_hints_unchecked(xcb_connection_t *c,
+                                                           xcb_window_t window);
 
 /**
  * @brief Fill given structure with the WM_HINTS property of a window.
@@ -927,8 +927,8 @@ xcb_get_property_cookie_t xcb_get_wm_hints_unchecked(xcb_connection_t *c,
  * @return Return 1 on success, 0 otherwise.
  */
 uint8_t
-xcb_get_wm_hints_from_reply(xcb_wm_hints_t *hints,
-                            xcb_get_property_reply_t *reply);
+xcb_icccm_get_wm_hints_from_reply(xcb_icccm_wm_hints_t *hints,
+                                  xcb_get_property_reply_t *reply);
 
 /**
  * @brief Fill given structure with the WM_HINTS property of a window.
@@ -939,13 +939,13 @@ xcb_get_wm_hints_from_reply(xcb_wm_hints_t *hints,
  * @return Return 1 on success, 0 otherwise.
  *
  * The parameter e supplied to this function must be NULL if
- * xcb_get_wm_hints_unchecked() is used.  Otherwise, it stores the
+ * xcb_icccm_get_wm_hints_unchecked() is used.  Otherwise, it stores the
  * error if any. The returned pointer should be freed.
  */
-uint8_t xcb_get_wm_hints_reply(xcb_connection_t *c,
-                               xcb_get_property_cookie_t cookie,
-                               xcb_wm_hints_t *hints,
-                               xcb_generic_error_t **e);
+uint8_t xcb_icccm_get_wm_hints_reply(xcb_connection_t *c,
+                                     xcb_get_property_cookie_t cookie,
+                                     xcb_icccm_wm_hints_t *hints,
+                                     xcb_generic_error_t **e);
 
 /* WM_PROTOCOLS */
 
@@ -957,20 +957,20 @@ uint8_t xcb_get_wm_hints_reply(xcb_connection_t *c,
  * @param list_len Atom list len.
  * @param list Atom list.
  */
-xcb_void_cookie_t xcb_set_wm_protocols_checked(xcb_connection_t *c,
-                                               xcb_window_t window,
-                                               xcb_atom_t wm_protocols,
-                                               uint32_t list_len,
-                                               xcb_atom_t *list);
+xcb_void_cookie_t xcb_icccm_set_wm_protocols_checked(xcb_connection_t *c,
+                                                     xcb_window_t window,
+                                                     xcb_atom_t wm_protocols,
+                                                     uint32_t list_len,
+                                                     xcb_atom_t *list);
 
 /**
- * @see xcb_set_wm_protocols_checked()
+ * @see xcb_icccm_set_wm_protocols_checked()
  */
-xcb_void_cookie_t xcb_set_wm_protocols(xcb_connection_t *c,
-                                       xcb_window_t window,
-                                       xcb_atom_t wm_protocols,
-                                       uint32_t list_len,
-                                       xcb_atom_t *list);
+xcb_void_cookie_t xcb_icccm_set_wm_protocols(xcb_connection_t *c,
+                                             xcb_window_t window,
+                                             xcb_atom_t wm_protocols,
+                                             uint32_t list_len,
+                                             xcb_atom_t *list);
 
 /**
  * @brief WM_PROTOCOLS structure.
@@ -983,7 +983,7 @@ typedef struct {
   /** Store reply to avoid memory allocation, should normally not be
       used directly */
   xcb_get_property_reply_t *_reply;
-} xcb_get_wm_protocols_reply_t;
+} xcb_icccm_get_wm_protocols_reply_t;
 
 /**
  * @brief Send request to get WM_PROTOCOLS property of a given window.
@@ -991,16 +991,16 @@ typedef struct {
  * @param window Window X identifier.
  * @return The request cookie.
  */
-xcb_get_property_cookie_t xcb_get_wm_protocols(xcb_connection_t *c,
-                                               xcb_window_t window,
-                                               xcb_atom_t wm_protocol_atom);
+xcb_get_property_cookie_t xcb_icccm_get_wm_protocols(xcb_connection_t *c,
+                                                     xcb_window_t window,
+                                                     xcb_atom_t wm_protocol_atom);
 
 /**
- * @see xcb_get_wm_protocols()
+ * @see xcb_icccm_get_wm_protocols()
  */
-xcb_get_property_cookie_t xcb_get_wm_protocols_unchecked(xcb_connection_t *c,
-                                                         xcb_window_t window,
-                                                         xcb_atom_t wm_protocol_atom);
+xcb_get_property_cookie_t xcb_icccm_get_wm_protocols_unchecked(xcb_connection_t *c,
+                                                               xcb_window_t window,
+                                                               xcb_atom_t wm_protocol_atom);
 
 /**
  * @brief Fill the given structure with the WM_PROTOCOLS property of a window.
@@ -1009,10 +1009,10 @@ xcb_get_property_cookie_t xcb_get_wm_protocols_unchecked(xcb_connection_t *c,
  * @return Return 1 on success, 0 otherwise.
  *
  * protocols structure members should be freed by
- * xcb_get_wm_protocols_reply_wipe().
+ * xcb_icccm_get_wm_protocols_reply_wipe().
  */
-uint8_t xcb_get_wm_protocols_from_reply(xcb_get_property_reply_t *reply,
-                                        xcb_get_wm_protocols_reply_t *protocols);
+uint8_t xcb_icccm_get_wm_protocols_from_reply(xcb_get_property_reply_t *reply,
+                                              xcb_icccm_get_wm_protocols_reply_t *protocols);
 /**
  * @brief Fill the given structure with the WM_PROTOCOLS property of a window.
  * @param c The connection to the X server.
@@ -1022,21 +1022,21 @@ uint8_t xcb_get_wm_protocols_from_reply(xcb_get_property_reply_t *reply,
  * @return Return 1 on success, 0 otherwise.
  *
  * The parameter e supplied to this function must be NULL if
- * xcb_get_wm_protocols_unchecked() is used.  Otherwise, it stores the
+ * xcb_icccm_get_wm_protocols_unchecked() is used.  Otherwise, it stores the
  * error if any. protocols structure members should be freed by
- * xcb_get_wm_protocols_reply_wipe().
+ * xcb_icccm_get_wm_protocols_reply_wipe().
  */
-uint8_t xcb_get_wm_protocols_reply(xcb_connection_t *c,
-                                   xcb_get_property_cookie_t cookie,
-                                   xcb_get_wm_protocols_reply_t *protocols,
-                                   xcb_generic_error_t **e);
+uint8_t xcb_icccm_get_wm_protocols_reply(xcb_connection_t *c,
+                                         xcb_get_property_cookie_t cookie,
+                                         xcb_icccm_get_wm_protocols_reply_t *protocols,
+                                         xcb_generic_error_t **e);
 
 /**
  * @brief Wipe protocols structure members previously allocated by
- *        xcb_get_wm_protocols_reply().
+ *        xcb_icccm_get_wm_protocols_reply().
  * @param protocols protocols structure whose members is going to be freed.
  */
-void xcb_get_wm_protocols_reply_wipe(xcb_get_wm_protocols_reply_t *protocols);
+void xcb_icccm_get_wm_protocols_reply_wipe(xcb_icccm_get_wm_protocols_reply_t *protocols);
 
 #ifdef __cplusplus
 }
-- 
1.7.2.3


--=-=-=
Content-Type: text/x-diff
Content-Disposition: attachment; filename=0003-Bump-version-to-0.3.8.patch



More information about the Xcb mailing list