From 84c3b1b7debcdc41e909b6a2bab5f46f8114c80b Mon Sep 17 00:00:00 2001 From: Mike Lowis Date: Tue, 25 Apr 2023 12:26:00 -0400 Subject: [PATCH] checkpoint commit --- bin/winmgr/anvil.h | 1 + bin/winmgr/mouse.c | 8 ++++---- bin/winmgr/winmgr.c | 5 +++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/bin/winmgr/anvil.h b/bin/winmgr/anvil.h index e8726bc..0b0cdb4 100644 --- a/bin/winmgr/anvil.h +++ b/bin/winmgr/anvil.h @@ -78,6 +78,7 @@ enum { F_DIALOG = (1 << 1), F_FLOATING = (1 << 2), F_SHADED = (1 << 3), + F_WITHDRAWN = (1 << 4), }; typedef struct Node { diff --git a/bin/winmgr/mouse.c b/bin/winmgr/mouse.c index 270bc73..c02cc85 100644 --- a/bin/winmgr/mouse.c +++ b/bin/winmgr/mouse.c @@ -106,12 +106,12 @@ void Mouse_Down(XButtonEvent* ev, Client* client) { // if (!loc->column) // { -// process(ev, loc, Floating, sizeof(Floating)/sizeof(Floating[0])); + process(ev, client, Floating, sizeof(Floating)/sizeof(Floating[0])); // } // else - { - process(ev, client, Stacked, sizeof(Stacked)/sizeof(Stacked[0])); - } +// { +// process(ev, client, Stacked, sizeof(Stacked)/sizeof(Stacked[0])); +// } } void Mouse_Up(XButtonEvent* ev, Client* client) diff --git a/bin/winmgr/winmgr.c b/bin/winmgr/winmgr.c index 2b7d461..878bc39 100644 --- a/bin/winmgr/winmgr.c +++ b/bin/winmgr/winmgr.c @@ -49,6 +49,7 @@ static void xunmapnotify(XEvent* e) } else if ( !(client->flags & F_SHADED) ) { + client->flags |= F_WITHDRAWN; XUnmapWindow(X.disp, client->frame); } } @@ -197,7 +198,7 @@ static void xbtnpress(XEvent* e) static void xbtnrelease(XEvent* e) { XButtonEvent* ev = &(e->xbutton); - printf("BTN_UP(w: 0x%lx x: %d y: %d rx: %d ry: %d)\n", ev->window, ev->x, ev->y, ev->x_root, ev->y_root); +// printf("BTN_UP(w: 0x%lx x: %d y: %d rx: %d ry: %d)\n", ev->window, ev->x, ev->y, ev->x_root, ev->y_root); Client* client = Client_Find(ev->window); if (client && (client->frame == ev->window)) @@ -212,7 +213,7 @@ static void xbtnmotion(XEvent* e) { /* make sure we get just the latest event */ XMotionEvent *ev = &e->xmotion; - printf("BTN_MV(w: 0x%lx x: %d y: %d rx: %d ry: %d)\n", ev->window, ev->x, ev->y, ev->x_root, ev->y_root); +// printf("BTN_MV(w: 0x%lx x: %d y: %d rx: %d ry: %d)\n", ev->window, ev->x, ev->y, ev->x_root, ev->y_root); while (XCheckTypedWindowEvent(X.disp, ev->window, ev->type, e)); Client* client = Client_Find(ev->window); -- 2.52.0