dwl

My patch set and modifications to dwl
git clone git://git.ethandl.dev/dwl
Log | Files | Refs | README | LICENSE

commit 128c2926e1d9bd3d0e530f0aa215d24b33b47552
parent c5087d413fb3e6feccf1116a2e9cad8e21b06975
Author: Devin J. Pohly <djpohly@gmail.com>
Date:   Thu, 24 Dec 2020 21:36:38 -0500

Merge pull request #54 from Bonicgamer/swayscalebox

Sway scale_box (rounding)
Diffstat:
Mdwl.c | 9+++++----
1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/dwl.c b/dwl.c @@ -53,6 +53,7 @@ #define LENGTH(X) (sizeof X / sizeof X[0]) #define END(A) ((A) + LENGTH(A)) #define TAGMASK ((1 << LENGTH(tags)) - 1) +#define ROUND(X) ((X)>=0?(long)((X)+0.5):(long)((X)-0.5)) #ifdef XWAYLAND #define WLR_SURFACE(C) ((C)->type != XDGShell ? (C)->surface.xwayland->surface : (C)->surface.xdg->surface) #else @@ -1804,10 +1805,10 @@ run(char *startup_cmd) void scalebox(struct wlr_box *box, float scale) { - box->x *= scale; - box->y *= scale; - box->width *= scale; - box->height *= scale; + box->width = ROUND((box->x + box->width) * scale) - ROUND(box->x * scale); + box->height = ROUND((box->y + box->height) * scale) - ROUND(box->y * scale); + box->x = ROUND(box->x * scale); + box->y = ROUND(box->y * scale); } Client *