X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fprop.c;h=dca0434437badd95459cca7784d79a136fd1bd71;hb=c1b2fc5324522f74a14a5cfa210c95e1509a6e7f;hp=2c67c20121cdad55afe3dc700b048eb31658c526;hpb=f544273eaf8c14585fa311858725f9c85575ef0f;p=chaz%2Fopenbox diff --git a/openbox/prop.c b/openbox/prop.c index 2c67c201..dca04344 100644 --- a/openbox/prop.c +++ b/openbox/prop.c @@ -16,6 +16,8 @@ void prop_startup() CREATE(atom, "ATOM"); CREATE(string, "STRING"); CREATE(utf8, "UTF8_STRING"); + + CREATE(manager, "MANAGER"); CREATE(wm_colormap_windows, "WM_COLORMAP_WINDOWS"); CREATE(wm_protocols, "WM_PROTOCOLS"); @@ -29,6 +31,8 @@ void prop_startup() CREATE(wm_window_role, "WM_WINDOW_ROLE"); CREATE(motif_wm_hints, "_MOTIF_WM_HINTS"); + CREATE(sm_client_id, "SM_CLIENT_ID"); + CREATE(net_supported, "_NET_SUPPORTED"); CREATE(net_client_list, "_NET_CLIENT_LIST"); CREATE(net_client_list_stacking, "_NET_CLIENT_LIST_STACKING"); @@ -47,6 +51,8 @@ void prop_startup() CREATE(net_wm_moveresize, "_NET_WM_MOVERESIZE"); CREATE(net_moveresize_window, "_NET_MOVERESIZE_WINDOW"); + CREATE(net_startup_id, "_NET_STARTUP_ID"); + CREATE(net_wm_name, "_NET_WM_NAME"); CREATE(net_wm_visible_name, "_NET_WM_VISIBLE_NAME"); CREATE(net_wm_icon_name, "_NET_WM_ICON_NAME"); @@ -55,6 +61,7 @@ void prop_startup() CREATE(net_wm_window_type, "_NET_WM_WINDOW_TYPE"); CREATE(net_wm_state, "_NET_WM_STATE"); CREATE(net_wm_strut, "_NET_WM_STRUT"); + CREATE(net_wm_strut_partial, "_NET_WM_STRUT_PARTIAL"); CREATE(net_wm_icon, "_NET_WM_ICON"); /* CREATE(net_wm_pid, "_NET_WM_PID"); */ CREATE(net_wm_allowed_actions, "_NET_WM_ALLOWED_ACTIONS"); @@ -387,6 +394,7 @@ void prop_set_strings_utf8(Window win, Atom prop, char **strs) } XChangeProperty(ob_display, win, prop, prop_atoms.utf8, 8, PropModeReplace, (guchar*)str->str, str->len); + g_string_free(str, TRUE); } void prop_erase(Window win, Atom prop) @@ -395,7 +403,7 @@ void prop_erase(Window win, Atom prop) } void prop_message(Window about, Atom messagetype, long data0, long data1, - long data2, long data3) + long data2, long data3, long mask) { XEvent ce; ce.xclient.type = ClientMessage; @@ -407,6 +415,6 @@ void prop_message(Window about, Atom messagetype, long data0, long data1, ce.xclient.data.l[1] = data1; ce.xclient.data.l[2] = data2; ce.xclient.data.l[3] = data3; - XSendEvent(ob_display, ob_root, FALSE, - SubstructureNotifyMask | SubstructureRedirectMask, &ce); + XSendEvent(ob_display, RootWindow(ob_display, ob_screen), FALSE, + mask, &ce); }