diff options
author | oga | 2009-12-10 23:21:26 +0000 |
---|---|---|
committer | oga | 2009-12-10 23:21:26 +0000 |
commit | 640b7c9876ce301eafc3651136e16c191f26dd4b (patch) | |
tree | d0dc3f1467edb2978aa556249885c484f9129e09 | |
parent | 067d8c9f41a0c6d9cd87c31432b56057e0da2c5d (diff) | |
download | cwm-640b7c9876ce301eafc3651136e16c191f26dd4b.tar.gz |
Implement _NET_VIRTUAL_ROOTS (just clear it, we don't use that technique)
and _NET_SHOWING_DESKTOP (we're never doing so right now).
only three informational root-window hints to go.
ok okan@
-rw-r--r-- | calmwm.h | 6 | ||||
-rw-r--r-- | group.c | 17 | ||||
-rw-r--r-- | xutil.c | 4 |
3 files changed, 22 insertions, 5 deletions
@@ -15,7 +15,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: calmwm.h,v 1.105 2009/12/10 23:14:58 oga Exp $ + * $Id: calmwm.h,v 1.106 2009/12/10 23:21:26 oga Exp $ */ #ifndef _CALMWM_H_ @@ -536,7 +536,9 @@ extern struct conf Conf; #define _NET_CURRENT_DESKTOP cwm_atoms[13] #define _NET_DESKTOP_VIEWPORT cwm_atoms[14] #define _NET_DESKTOP_GEOMETRY cwm_atoms[15] -#define CWM_NO_ATOMS 16 +#define _NET_VIRTUAL_ROOTS cwm_atoms[16] +#define _NET_SHOWING_DESKTOP cwm_atoms[17] +#define CWM_NO_ATOMS 18 #define CWM_NETWM_START 7 extern Atom cwm_atoms[CWM_NO_ATOMS]; @@ -16,7 +16,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: group.c,v 1.35 2009/12/10 23:14:58 oga Exp $ + * $Id: group.c,v 1.36 2009/12/10 23:21:26 oga Exp $ */ #include "headers.h" @@ -126,7 +126,8 @@ void group_init(struct screen_ctx *sc) { int i; - u_int32_t viewports[2] = {0, 0}, ndesks = CALMWM_NGROUPS; + u_int32_t viewports[2] = {0, 0}; + u_int32_t ndesks = CALMWM_NGROUPS, zero = 0; TAILQ_INIT(&sc->groupq); sc->group_hideall = 0; @@ -144,6 +145,18 @@ group_init(struct screen_ctx *sc) XA_CARDINAL, 32, PropModeReplace, (unsigned char *)viewports, 2); XChangeProperty(X_Dpy, sc->rootwin, _NET_NUMBER_OF_DESKTOPS, XA_CARDINAL, 32, PropModeReplace, (unsigned char *)&ndesks, 1); + /* + * we don't use virtual roots, so make sure it's not there from a + * previous wm. + */ + XDeleteProperty(X_Dpy, sc->rootwin, _NET_VIRTUAL_ROOTS); + /* + * We don't really have a ``showing desktop'' mode, so this is zero + * always. XXX Note that when we hide all groups, or when all groups + * are hidden we could technically set this later on. + */ + XChangeProperty(X_Dpy, sc->rootwin, _NET_SHOWING_DESKTOP, + XA_CARDINAL, 32, PropModeReplace, (unsigned char *)&zero, 1); group_setactive(sc, 0); } @@ -15,7 +15,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: xutil.c,v 1.22 2009/12/10 23:14:58 oga Exp $ + * $Id: xutil.c,v 1.23 2009/12/10 23:21:26 oga Exp $ */ #include "headers.h" @@ -187,6 +187,8 @@ char *atoms[CWM_NO_ATOMS] = { "_NET_CURRENT_DESKTOP", "_NET_DESKTOP_VIEWPORT", "_NET_DESKTOP_GEOMETRY", + "_NET_VIRTUAL_ROOTS", + "_NET_SHOWING_DESKTOP", }; void |