use round(3) and ceilf(3) from the math library
ΔSLOC: -1
This commit is contained in:
		
							
								
								
									
										2
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								Makefile
									
									
									
									
									
								
							| @@ -14,7 +14,7 @@ DWLDEVCFLAGS = -g -pedantic -Wall -Wextra -Wdeclaration-after-statement \ | ||||
| # CFLAGS / LDFLAGS | ||||
| PKGS      = wlroots wayland-server xkbcommon libinput $(XLIBS) | ||||
| DWLCFLAGS = `$(PKG_CONFIG) --cflags $(PKGS)` $(DWLCPPFLAGS) $(DWLDEVCFLAGS) $(CFLAGS) | ||||
| LDLIBS    = `$(PKG_CONFIG) --libs $(PKGS)` $(LIBS) | ||||
| LDLIBS    = `$(PKG_CONFIG) --libs $(PKGS)` -lm $(LIBS) | ||||
|  | ||||
| all: dwl | ||||
| dwl: dwl.o util.o | ||||
|   | ||||
							
								
								
									
										19
									
								
								dwl.c
									
									
									
									
									
								
							
							
						
						
									
										19
									
								
								dwl.c
									
									
									
									
									
								
							| @@ -4,6 +4,7 @@ | ||||
| #include <getopt.h> | ||||
| #include <libinput.h> | ||||
| #include <linux/input-event-codes.h> | ||||
| #include <math.h> | ||||
| #include <signal.h> | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| @@ -70,8 +71,6 @@ | ||||
| /* macros */ | ||||
| #define MAX(A, B)               ((A) > (B) ? (A) : (B)) | ||||
| #define MIN(A, B)               ((A) < (B) ? (A) : (B)) | ||||
| #define ROUND(X)                ((int)((X < 0) ? (X - 0.5) : (X + 0.5))) | ||||
| #define CEIL(X)                 ((int)((X < 0) ? (X) : ((int)X == X) ? (X) : ((int)X + 1))) | ||||
| #define CLEANMASK(mask)         (mask & ~WLR_MODIFIER_CAPS) | ||||
| #define VISIBLEON(C, M)         ((M) && (C)->mon == (M) && ((C)->tags & (M)->tagset[(M)->seltags])) | ||||
| #define LENGTH(X)               (sizeof X / sizeof X[0]) | ||||
| @@ -781,7 +780,7 @@ commitnotify(struct wl_listener *listener, void *data) | ||||
| 		 * a wrong monitor. | ||||
| 		 */ | ||||
| 		applyrules(c); | ||||
| 		wlr_surface_set_preferred_buffer_scale(client_surface(c), CEIL(c->mon->wlr_output->scale)); | ||||
| 		wlr_surface_set_preferred_buffer_scale(client_surface(c), (int)ceilf(c->mon->wlr_output->scale)); | ||||
| 		wlr_fractional_scale_v1_notify_scale(client_surface(c), c->mon->wlr_output->scale); | ||||
| 		setmon(c, NULL, 0); /* Make sure to reapply rules in mapnotify() */ | ||||
| 	} | ||||
| @@ -896,7 +895,7 @@ createlayersurface(struct wl_listener *listener, void *data) | ||||
| 	wl_list_insert(&l->mon->layers[layer_surface->pending.layer],&l->link); | ||||
| 	wlr_surface_send_enter(surface, layer_surface->output); | ||||
| 	wlr_fractional_scale_v1_notify_scale(surface, l->mon->wlr_output->scale); | ||||
| 	wlr_surface_set_preferred_buffer_scale(surface, CEIL(l->mon->wlr_output->scale)); | ||||
| 	wlr_surface_set_preferred_buffer_scale(surface, (int32_t)ceilf(l->mon->wlr_output->scale)); | ||||
|  | ||||
| 	/* Temporarily set the layer's current state to pending | ||||
| 	 * so that we can easily arrange it | ||||
| @@ -1812,17 +1811,17 @@ motionnotify(uint32_t time, struct wlr_input_device *device, double dx, double d | ||||
| 	} | ||||
|  | ||||
| 	/* Update drag icon's position */ | ||||
| 	wlr_scene_node_set_position(&drag_icon->node, ROUND(cursor->x), ROUND(cursor->y)); | ||||
| 	wlr_scene_node_set_position(&drag_icon->node, (int)round(cursor->x), (int)round(cursor->y)); | ||||
|  | ||||
| 	/* If we are currently grabbing the mouse, handle and return */ | ||||
| 	if (cursor_mode == CurMove) { | ||||
| 		/* Move the grabbed client to the new position. */ | ||||
| 		resize(grabc, (struct wlr_box){.x = ROUND(cursor->x) - grabcx, .y = ROUND(cursor->y) - grabcy, | ||||
| 		resize(grabc, (struct wlr_box){.x = (int)round(cursor->x) - grabcx, .y = (int)round(cursor->y) - grabcy, | ||||
| 			.width = grabc->geom.width, .height = grabc->geom.height}, 1); | ||||
| 		return; | ||||
| 	} else if (cursor_mode == CurResize) { | ||||
| 		resize(grabc, (struct wlr_box){.x = grabc->geom.x, .y = grabc->geom.y, | ||||
| 			.width = ROUND(cursor->x) - grabc->geom.x, .height = ROUND(cursor->y) - grabc->geom.y}, 1); | ||||
| 			.width = (int)round(cursor->x) - grabc->geom.x, .height = (int)round(cursor->y) - grabc->geom.y}, 1); | ||||
| 		return; | ||||
| 	} | ||||
|  | ||||
| @@ -1863,8 +1862,8 @@ moveresize(const Arg *arg) | ||||
| 	setfloating(grabc, 1); | ||||
| 	switch (cursor_mode = arg->ui) { | ||||
| 	case CurMove: | ||||
| 		grabcx = ROUND(cursor->x) - grabc->geom.x; | ||||
| 		grabcy = ROUND(cursor->y) - grabc->geom.y; | ||||
| 		grabcx = (int)round(cursor->x) - grabc->geom.x; | ||||
| 		grabcy = (int)round(cursor->y) - grabc->geom.y; | ||||
| 		wlr_cursor_set_xcursor(cursor, cursor_mgr, "fleur"); | ||||
| 		break; | ||||
| 	case CurResize: | ||||
| @@ -2649,7 +2648,7 @@ tile(Monitor *m) | ||||
| 		return; | ||||
|  | ||||
| 	if (n > m->nmaster) | ||||
| 		mw = m->nmaster ? ROUND(m->w.width * m->mfact) : 0; | ||||
| 		mw = m->nmaster ? (int)roundf(m->w.width * m->mfact) : 0; | ||||
| 	else | ||||
| 		mw = m->w.width; | ||||
| 	i = my = ty = 0; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user