From: Michael D. Lowis Date: Mon, 30 Mar 2020 01:40:16 +0000 (-0400) Subject: refactored move and resize code X-Git-Url: https://git.mdlowis.com/?a=commitdiff_plain;h=5c79672dae8e9bf72f5d1f5d8408533bc3e7c23a;p=proto%2Fanvil.git refactored move and resize code --- diff --git a/client.c b/client.c index b5fe0ca..7a4c0b1 100644 --- a/client.c +++ b/client.c @@ -90,43 +90,31 @@ Client* client_get(Window w, Location* loc) void client_adjust(Client* c) { - client_move(c, 0, 0); - client_resize(c, 0, 0); + if (c->w < MIN_HEIGHT) c->w = MIN_HEIGHT; + if (c->h < MIN_HEIGHT) c->h = MIN_HEIGHT; + XMoveResizeWindow(X.disp, c->frame, c->x, c->y, c->w, c->h); + printf("CONFIG(c: %lx x: %d y: %d w: %d h: %d)\n", c->frame, c->x, c->y, c->w, c->h); + if ( !(c->flags & F_SHADED) ) + { + XResizeWindow(X.disp, c->win, + c->w - 2*BORDER_WIDTH - 2, + c->h - 2*BORDER_WIDTH - TITLE_HEIGHT - 2); + } + mons_place(c); } void client_move(Client* c, int xdiff, int ydiff) { c->x += xdiff; c->y += ydiff; - printf("MOVE(c: %lx x: %d y: %d)\n", c->frame, c->x, c->y); - XMoveWindow(X.disp, c->frame, c->x, c->y); - mons_place(c); + client_adjust(c); } void client_resize(Client* c, int xdiff, int ydiff) { c->w += xdiff; c->h += ydiff; - if (c->w < MIN_HEIGHT) c->w = MIN_HEIGHT; - if (c->h < MIN_HEIGHT) c->h = MIN_HEIGHT; - if (c->flags & F_SHADED) - { - XResizeWindow(X.disp, c->frame, c->w, MIN_HEIGHT); - } - else - { - XResizeWindow(X.disp, c->frame, c->w, c->h); - printf("RESIZE(c: %lx w: %d h: %d)\n", - c->win, - c->w - 2*BORDER_WIDTH - 2, - c->h - 2*BORDER_WIDTH - TITLE_HEIGHT - 2 - ); - XResizeWindow(X.disp, c->win, - c->w - 2*BORDER_WIDTH - 2, - c->h - 2*BORDER_WIDTH - TITLE_HEIGHT - 2 - ); - } - mons_place(c); + client_adjust(c); } void client_close(Client* c) @@ -198,14 +186,7 @@ void client_readprops(Client* c) void client_shade(Client* c) { - if (c->flags & F_SHADED) - { - client_setshade(c, 0); - } - else - { - client_setshade(c, 1); - } + client_setshade(c, ((c->flags & F_SHADED) ? 0 : 1)); client_adjust(c); }