mirror of
https://github.com/leahneukirchen/cwm.git
synced 2023-08-10 21:13:12 +03:00
Pull highstack from group_ctx (and useless calculations of); in the one
place that we use highstack, replace that usage with a local variable (for now until stacking is done properly).
This commit is contained in:
parent
1192007171
commit
01cca3c114
1
calmwm.h
1
calmwm.h
@ -205,7 +205,6 @@ struct group_ctx {
|
|||||||
struct client_ctx_q clients;
|
struct client_ctx_q clients;
|
||||||
int shortcut;
|
int shortcut;
|
||||||
int hidden;
|
int hidden;
|
||||||
int highstack;
|
|
||||||
};
|
};
|
||||||
TAILQ_HEAD(group_ctx_q, group_ctx);
|
TAILQ_HEAD(group_ctx_q, group_ctx);
|
||||||
|
|
||||||
|
25
group.c
25
group.c
@ -68,12 +68,9 @@ group_hide(struct screen_ctx *sc, struct group_ctx *gc)
|
|||||||
|
|
||||||
screen_updatestackingorder(sc);
|
screen_updatestackingorder(sc);
|
||||||
|
|
||||||
gc->highstack = 0;
|
TAILQ_FOREACH(cc, &gc->clients, group_entry)
|
||||||
TAILQ_FOREACH(cc, &gc->clients, group_entry) {
|
|
||||||
client_hide(cc);
|
client_hide(cc);
|
||||||
if (cc->stackingorder > gc->highstack)
|
|
||||||
gc->highstack = cc->stackingorder;
|
|
||||||
}
|
|
||||||
gc->hidden = 1;
|
gc->hidden = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -83,27 +80,23 @@ group_show(struct screen_ctx *sc, struct group_ctx *gc)
|
|||||||
struct client_ctx *cc;
|
struct client_ctx *cc;
|
||||||
Window *winlist;
|
Window *winlist;
|
||||||
int i, lastempty = -1;
|
int i, lastempty = -1;
|
||||||
int nwins = 0;
|
int nwins = 0, highstack = 0;
|
||||||
|
|
||||||
gc->highstack = 0;
|
|
||||||
TAILQ_FOREACH(cc, &gc->clients, group_entry) {
|
TAILQ_FOREACH(cc, &gc->clients, group_entry) {
|
||||||
if (cc->stackingorder > gc->highstack)
|
if (cc->stackingorder > highstack)
|
||||||
gc->highstack = cc->stackingorder;
|
highstack = cc->stackingorder;
|
||||||
}
|
}
|
||||||
winlist = xcalloc((gc->highstack + 1), sizeof(*winlist));
|
winlist = xcalloc((highstack + 1), sizeof(*winlist));
|
||||||
|
|
||||||
/*
|
/* Invert the stacking order for XRestackWindows(). */
|
||||||
* Invert the stacking order as XRestackWindows() expects them
|
|
||||||
* top-to-bottom.
|
|
||||||
*/
|
|
||||||
TAILQ_FOREACH(cc, &gc->clients, group_entry) {
|
TAILQ_FOREACH(cc, &gc->clients, group_entry) {
|
||||||
winlist[gc->highstack - cc->stackingorder] = cc->win;
|
winlist[highstack - cc->stackingorder] = cc->win;
|
||||||
client_unhide(cc);
|
client_unhide(cc);
|
||||||
nwins++;
|
nwins++;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Un-sparseify */
|
/* Un-sparseify */
|
||||||
for (i = 0; i <= gc->highstack; i++) {
|
for (i = 0; i <= highstack; i++) {
|
||||||
if (!winlist[i] && lastempty == -1)
|
if (!winlist[i] && lastempty == -1)
|
||||||
lastempty = i;
|
lastempty = i;
|
||||||
else if (winlist[i] && lastempty != -1) {
|
else if (winlist[i] && lastempty != -1) {
|
||||||
|
Loading…
Reference in New Issue
Block a user