Improve layout symbol functions
This commit is contained in:
parent
ee0c5ec71e
commit
61542641d9
29
dwm.c
29
dwm.c
|
@ -450,12 +450,8 @@ arrangemon(Monitor *m)
|
|||
if (ISVISIBLE(client)) ++visible_clients;
|
||||
}
|
||||
|
||||
const LayoutsSymbolFunc symbol_func =
|
||||
m->lt[m->sellt]->symbol_func == NULL
|
||||
? layouts_symbol_unknown
|
||||
: m->lt[m->sellt]->symbol_func;
|
||||
|
||||
symbol_func(
|
||||
layouts_symbol_func(
|
||||
m->lt[m->sellt]->symbol_func,
|
||||
m->ltsymbol,
|
||||
sizeof(m->ltsymbol),
|
||||
m->nmaster,
|
||||
|
@ -829,12 +825,13 @@ createmon(void)
|
|||
m->lt[0] = &layouts[0];
|
||||
m->lt[1] = &layouts[1 % LENGTH(layouts)];
|
||||
|
||||
const LayoutsSymbolFunc symbol_func =
|
||||
layouts[0].symbol_func == NULL
|
||||
? layouts_symbol_unknown
|
||||
: layouts[0].symbol_func;
|
||||
|
||||
symbol_func(m->ltsymbol, sizeof(m->ltsymbol), 0, 0);
|
||||
layouts_symbol_func(
|
||||
layouts[0].symbol_func,
|
||||
m->ltsymbol,
|
||||
sizeof(m->ltsymbol),
|
||||
0,
|
||||
0
|
||||
);
|
||||
|
||||
m->pertag = ecalloc(1, sizeof(Pertag));
|
||||
m->pertag->curtag = m->pertag->prevtag = 1;
|
||||
|
@ -1956,12 +1953,8 @@ setlayout(const Arg *arg)
|
|||
if (ISVISIBLE(client)) ++visible_clients;
|
||||
}
|
||||
|
||||
const LayoutsSymbolFunc symbol_func =
|
||||
selmon->lt[selmon->sellt]->symbol_func == NULL
|
||||
? layouts_symbol_unknown
|
||||
: selmon->lt[selmon->sellt]->symbol_func;
|
||||
|
||||
symbol_func(
|
||||
layouts_symbol_func(
|
||||
selmon->lt[selmon->sellt]->symbol_func,
|
||||
selmon->ltsymbol,
|
||||
sizeof(selmon->ltsymbol),
|
||||
selmon->nmaster,
|
||||
|
|
19
layouts.c
19
layouts.c
|
@ -5,6 +5,25 @@
|
|||
|
||||
#define TMP_BUFFER_SIZE 128
|
||||
|
||||
void layouts_symbol_func(
|
||||
LayoutsSymbolFunc func,
|
||||
char *const buffer,
|
||||
const size_t buffer_size,
|
||||
const unsigned int clients_in_master,
|
||||
const unsigned int visible_clients
|
||||
) {
|
||||
if (func == NULL) {
|
||||
func = layouts_symbol_unknown;
|
||||
}
|
||||
|
||||
func(
|
||||
buffer,
|
||||
buffer_size,
|
||||
clients_in_master,
|
||||
visible_clients
|
||||
);
|
||||
}
|
||||
|
||||
void layouts_symbol_unknown(
|
||||
char *const buffer,
|
||||
const size_t buffer_size,
|
||||
|
|
|
@ -10,6 +10,14 @@ typedef void (*LayoutsSymbolFunc)(
|
|||
unsigned int visible_clients
|
||||
);
|
||||
|
||||
void layouts_symbol_func(
|
||||
LayoutsSymbolFunc func,
|
||||
char *buffer,
|
||||
size_t buffer_size,
|
||||
unsigned int clients_in_master,
|
||||
unsigned int visible_clients
|
||||
);
|
||||
|
||||
void layouts_symbol_unknown(
|
||||
char *buffer,
|
||||
size_t buffer_size,
|
||||
|
|
Loading…
Reference in New Issue