Added alttagsdecoration patch.

Unified tag icon handling while adding support for different icons per monitor.

In general LENGTH(tags) has been replaced with a NUMTAGS macro (defaulting to 9)
and the tags[] array has been replaced with a tagicons[][] array, access to which
is done through a single function tagicon.

This allows one central place where alternative tags, alttagsdecoration, or other
future tags logic is handled. This also gives a consistent display of tags
regardless of the module that presents tags.

Additionally the monitor index has been integrated into dwm for easier access.
This commit is contained in:
bakkeby
2020-08-25 16:27:14 +02:00
parent df57bdeb64
commit f45acf8795
22 changed files with 199 additions and 146 deletions

View File

@@ -5,8 +5,8 @@ focusurgent(const Arg *arg)
int i;
for (c=selmon->clients; c && !c->isurgent; c=c->next);
if (c) {
for (i=0; i < LENGTH(tags) && !((1 << i) & c->tags); i++);
if (i < LENGTH(tags)) {
for (i=0; i < NUMTAGS && !((1 << i) & c->tags); i++);
if (i < NUMTAGS) {
const Arg a = {.ui = 1 << i};
view(&a);
focus(c);