diff options
author | oga <oga> | 2008-05-20 14:50:51 +0000 |
---|---|---|
committer | oga <oga> | 2008-05-20 14:50:51 +0000 |
commit | 1e46ba72f706d7ab2b0f7a6a14054b908348d10e (patch) | |
tree | 0efe57cdad018b6a29f0c0b65113ef08589f953d /client.c | |
parent | 3bb0b451f78d13b4624e52b726f51e4847a84a2f (diff) | |
download | cwm-1e46ba72f706d7ab2b0f7a6a14054b908348d10e.tar.gz cwm-1e46ba72f706d7ab2b0f7a6a14054b908348d10e.tar.xz cwm-1e46ba72f706d7ab2b0f7a6a14054b908348d10e.zip |
Pull out the behaviour in grab_label and search_start into one utility
function menu_filter(). The plan is to eventually merge in grab_menu too. Shrinks the code a fair bit. Also, change XMaskEvent for XWindowEvent to prevent getting exposes for other windows. This is particuarly noticable on slow machines with a LOT of xterms (todd, you're an odd man). ok okan@, todd@.
Diffstat (limited to 'client.c')
-rw-r--r-- | client.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/client.c b/client.c index 087d212..5026ac6 100644 --- a/client.c +++ b/client.c @@ -657,7 +657,7 @@ client_placecalc(struct client_ctx *cc) { struct screen_ctx *sc = CCTOSC(cc); int yslack, xslack; - int x, y, height, width, ymax, xmax, mousex, mousey; + int x, y, height, width, mousex, mousey; y = cc->geom.y; x = cc->geom.x; @@ -665,11 +665,9 @@ client_placecalc(struct client_ctx *cc) height = cc->geom.height; width = cc->geom.width; - ymax = DisplayHeight(X_Dpy, sc->which) - cc->bwidth; - xmax = DisplayWidth(X_Dpy, sc->which) - cc->bwidth; - yslack = ymax - cc->geom.height; - xslack = xmax - cc->geom.width; + yslack = sc->ymax - cc->geom.height; + xslack = sc->xmax - cc->geom.width; xu_ptr_getpos(sc->rootwin, &mousex, &mousey); @@ -695,7 +693,7 @@ client_placecalc(struct client_ctx *cc) } else { if (yslack < 0) { y = cc->bwidth; - height = ymax; + height = sc->ymax; } else { if (y == 0 || y > yslack) y = MIN(mousey, yslack); @@ -704,7 +702,7 @@ client_placecalc(struct client_ctx *cc) if (xslack < 0) { x = cc->bwidth; - width = xmax; + width = sc->xmax; } else { if (x == 0 || x > xslack) x = MIN(mousex, xslack); |