mirror of
https://github.com/leahneukirchen/cwm.git
synced 2023-08-10 21:13:12 +03:00
Raise the previously focused window, instead of the previous window in the
cycle list; seems to match behaviour of other wm's; from Walter Alejandro Iglesias.
This commit is contained in:
parent
50dd70afc5
commit
9b56325908
4
client.c
4
client.c
@ -645,7 +645,7 @@ match:
|
|||||||
void
|
void
|
||||||
client_cycle(struct screen_ctx *sc, int flags)
|
client_cycle(struct screen_ctx *sc, int flags)
|
||||||
{
|
{
|
||||||
struct client_ctx *newcc, *oldcc;
|
struct client_ctx *newcc, *oldcc, *prevcc;
|
||||||
int again = 1;
|
int again = 1;
|
||||||
|
|
||||||
/* For X apps that ignore events. */
|
/* For X apps that ignore events. */
|
||||||
@ -655,6 +655,7 @@ client_cycle(struct screen_ctx *sc, int flags)
|
|||||||
if (TAILQ_EMPTY(&sc->clientq))
|
if (TAILQ_EMPTY(&sc->clientq))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
prevcc = TAILQ_FIRST(&sc->clientq);
|
||||||
oldcc = client_current();
|
oldcc = client_current();
|
||||||
if (oldcc == NULL)
|
if (oldcc == NULL)
|
||||||
oldcc = (flags & CWM_CYCLE_REVERSE) ?
|
oldcc = (flags & CWM_CYCLE_REVERSE) ?
|
||||||
@ -686,6 +687,7 @@ client_cycle(struct screen_ctx *sc, int flags)
|
|||||||
/* reset when cycling mod is released. XXX I hate this hack */
|
/* reset when cycling mod is released. XXX I hate this hack */
|
||||||
sc->cycling = 1;
|
sc->cycling = 1;
|
||||||
client_ptrsave(oldcc);
|
client_ptrsave(oldcc);
|
||||||
|
client_raise(prevcc);
|
||||||
client_raise(newcc);
|
client_raise(newcc);
|
||||||
if (!client_inbound(newcc, newcc->ptr.x, newcc->ptr.y)) {
|
if (!client_inbound(newcc, newcc->ptr.x, newcc->ptr.y)) {
|
||||||
newcc->ptr.x = newcc->geom.w / 2;
|
newcc->ptr.x = newcc->geom.w / 2;
|
||||||
|
Loading…
Reference in New Issue
Block a user