cycling fix: when no client is active, warp pointer to last active;

from Walter Alejandro Iglesias.
This commit is contained in:
okan 2022-02-27 14:59:55 +00:00
parent 496bcc879d
commit 4e73ce533c
1 changed files with 10 additions and 1 deletions

View File

@ -450,7 +450,16 @@ kbfunc_client_cycle(void *ctx, struct cargs *cargs)
newcc->ptr.x = newcc->geom.w / 2;
newcc->ptr.y = newcc->geom.h / 2;
}
client_ptr_warp(newcc);
/* When no client is active, warp pointer to last active. */
if (oldcc->flags & (CLIENT_ACTIVE))
client_ptr_warp(newcc);
else if (oldcc->flags & (CLIENT_SKIP_CYCLE))
client_ptr_warp(newcc);
else {
client_raise(oldcc);
client_ptr_warp(oldcc);
}
}
void