- } while (0)
-
- GET_ATOM(_NET_SUPPORTED);
- GET_ATOM(_NET_WM_STATE_FULLSCREEN);
- GET_ATOM(_NET_SUPPORTING_WM_CHECK);
- GET_ATOM(_NET_WM_NAME);
- GET_ATOM(_NET_WM_STATE);
- GET_ATOM(_NET_WM_WINDOW_TYPE);
- GET_ATOM(_NET_WM_DESKTOP);
- GET_ATOM(_NET_WM_WINDOW_TYPE_DOCK);
- GET_ATOM(_NET_WM_WINDOW_TYPE_DIALOG);
- GET_ATOM(_NET_WM_WINDOW_TYPE_UTILITY);
- GET_ATOM(_NET_WM_WINDOW_TYPE_TOOLBAR);
- GET_ATOM(_NET_WM_WINDOW_TYPE_SPLASH);
- GET_ATOM(_NET_WM_STRUT_PARTIAL);
- GET_ATOM(WM_PROTOCOLS);
- GET_ATOM(WM_DELETE_WINDOW);
- GET_ATOM(UTF8_STRING);
- GET_ATOM(WM_STATE);
- GET_ATOM(WM_CLIENT_LEADER);
- GET_ATOM(_NET_CURRENT_DESKTOP);
- GET_ATOM(_NET_ACTIVE_WINDOW);
- GET_ATOM(_NET_WORKAREA);
-
- /* Watch _NET_WM_NAME (title of the window encoded in UTF-8) */
- xcb_property_set_handler(&prophs, atoms[_NET_WM_NAME], 128, handle_windowname_change, NULL);
-
- /* Watch WM_HINTS (contains the urgent property) */
- xcb_property_set_handler(&prophs, WM_HINTS, UINT_MAX, handle_hints, NULL);
-
- /* Watch WM_NAME (title of the window encoded in COMPOUND_TEXT) */
- xcb_watch_wm_name(&prophs, 128, handle_windowname_change_legacy, NULL);
-
- /* Watch WM_NORMAL_HINTS (aspect ratio, size increments, …) */
- xcb_property_set_handler(&prophs, WM_NORMAL_HINTS, UINT_MAX, handle_normal_hints, NULL);
-
- /* Watch WM_CLIENT_LEADER (= logical parent window for toolbars etc.) */
- xcb_property_set_handler(&prophs, atoms[WM_CLIENT_LEADER], UINT_MAX, handle_clientleader_change, NULL);
-
- /* Watch WM_TRANSIENT_FOR property (to which client this popup window belongs) */
- xcb_property_set_handler(&prophs, WM_TRANSIENT_FOR, UINT_MAX, handle_transient_for, NULL);