# HG changeset patch # User Anselm R. Garbe # Date 1170772105 -3600 # Node ID a642068c4834acc8a2167bf33d38b57335e34b2b # Parent 29c9b557ed954ff31af1d6e0be439a46737a6394 simplification diff -r 29c9b557ed95 -r a642068c4834 client.c --- a/client.c Tue Feb 06 15:22:13 2007 +0100 +++ b/client.c Tue Feb 06 15:28:25 2007 +0100 @@ -10,13 +10,6 @@ /* static */ static void -closestpt(float *rx, float *ry, float x, float y, float grad) { - float u = (x * grad + y) / (grad * grad + 1); - *rx = u * grad; - *ry = u; -} - -static void detachstack(Client *c) { Client **tc; for(tc=&stack; *tc && *tc != c; tc=&(*tc)->snext); @@ -191,7 +184,7 @@ void resize(Client *c, Bool sizehints) { - float dx, dy, min, max, actual; + float actual, dx, dy, max, min, u; XWindowChanges wc; if(c->w <= 0 || c->h <= 0) @@ -214,12 +207,14 @@ actual = dx / dy; if(max > 0 && min > 0 && actual > 0) { if(actual < min) { - closestpt(&dx, &dy, dx, dy, min); + dy = (dx * min + dy) / (min * min + 1); + dx = dy * min; c->w = (int)dx + c->basew; c->h = (int)dy + c->baseh; } else if(actual > max) { - closestpt(&dx, &dy, dx, dy, max); + dy = (dx * min + dy) / (max * max + 1); + dx = dy * min; c->w = (int)dx + c->basew; c->h = (int)dy + c->baseh; }