Implement _NET_DESKTOP_NAMES, this one was a bit tricky since thespec

says that a pager can change the property at any time (most need a
clientmessage). So deal with property updates.

Needed to shuffle some of the other code around since we can't just use
shortcut_to_name[] everywhere now.

ok okan@
This commit is contained in:
oga
2009-12-11 17:51:42 +00:00
parent 9b04930f24
commit b35cbf81d8
6 changed files with 139 additions and 34 deletions

18
parse.y
View File

@@ -123,29 +123,13 @@ main : FONTNAME STRING {
free($3);
}
| AUTOGROUP NUMBER STRING {
struct autogroupwin *aw;
char *p;
if ($2 < 0 || $2 > 9) {
free($3);
yyerror("autogroup number out of range: %d", $2);
YYERROR;
}
aw = xcalloc(1, sizeof(*aw));
if ((p = strchr($3, ',')) == NULL) {
aw->name = NULL;
aw->class = xstrdup($3);
} else {
*(p++) = '\0';
aw->name = xstrdup($3);
aw->class = xstrdup(p);
}
aw->group = xstrdup(shortcut_to_name[$2]);
TAILQ_INSERT_TAIL(&conf->autogroupq, aw, entry);
group_make_autogroup(conf, $3, $2);
free($3);
}
| IGNORE STRING {