commit c33dfe0

0uppy  ·  2026-03-15 14:52:54 +0000 UTC
parent 10a9cf4
slgro 1.1 - the cleanup update

Removed unused code that wasn't used for slgro
1 files changed,  +238, -252
+238, -252
  1@@ -1,4 +1,3 @@
  2-#include <asm-generic/errno.h>
  3 #include <signal.h>
  4 #include <stdio.h>
  5 #include <stdlib.h>
  6@@ -26,450 +25,437 @@ static void setup_binds(void);
  7 static void sync_window_visibility(void);
  8 
  9 #define WHEN_PRESSED(state) \
 10-	do { if ((state) != WL_KEYBOARD_KEY_STATE_PRESSED) return; } while (0)
 11+do { if ((state) != WL_KEYBOARD_KEY_STATE_PRESSED) return; } while (0)
 12 
 13 #define BIND_EVENT(time, value, state) \
 14-	(void)(time); (void)(value); \
 15-	WHEN_PRESSED(state);
 16+(void)(time); (void)(value); \
 17+WHEN_PRESSED(state);
 18 
 19 #define BIND_ACTION(data, time, value, state) \
 20-	BIND_EVENT(time, value, state); \
 21-	if (!wm.sel_client) return; \
 22-	union arg* a = (data)
 23+BIND_EVENT(time, value, state); \
 24+if (!wm.sel_client) return; \
 25+union arg* a = (data)
 26 
 27 /* read geometry from client window; returns true if successful */
 28 static bool get_geometry(struct client *c, struct swc_rectangle *geom)
 29 {
 30-	if (!c || !c->win)
 31-		return false;
 32+if (!c || !c->win)
 33+return false;
 34 
 35-	return swc_window_get_geometry(c->win, geom);
 36+return swc_window_get_geometry(c->win, geom);
 37 }
 38 
 39 /* adjust geometry fields and write back */
 40 static void adjust_geom(struct client *c, int dx, int dy, int dw, int dh)
 41 {
 42-	struct swc_rectangle geom;
 43-	if (!get_geometry(c, &geom)) return;
 44+struct swc_rectangle geom;
 45+if (!get_geometry(c, &geom)) return;
 46 
 47-	geom.x += dx;
 48-	geom.y += dy;
 49+geom.x += dx;
 50+geom.y += dy;
 51 
 52-	int new_w = (int)geom.width + dw;
 53-	int new_h = (int)geom.height + dh;
 54-	geom.width = (new_w < 1) ? 1 : (uint32_t)new_w;
 55-	geom.height = (new_h < 1) ? 1 : (uint32_t)new_h;
 56+int new_w = (int)geom.width + dw;
 57+int new_h = (int)geom.height + dh;
 58+geom.width = (new_w < 1) ? 1 : (uint32_t)new_w;
 59+geom.height = (new_h < 1) ? 1 : (uint32_t)new_h;
 60 
 61-	swc_window_set_geometry(c->win, &geom);
 62+swc_window_set_geometry(c->win, &geom);
 63 }
 64 
 65 struct wm wm;
 66 const struct swc_manager manager = {
 67-	.new_screen = new_screen, .new_window = new_window, .new_device = new_device,
 68+.new_screen = new_screen, .new_window = new_window, .new_device = new_devic
 69+e,
 70 };
 71 struct swc_window_handler window_handler = {
 72-	.destroy = on_win_destroy, .entered = on_win_entered,
 73+.destroy = on_win_destroy, .entered = on_win_entered,
 74 };
 75 struct swc_screen_handler screen_handler = {
 76-	.destroy = on_screen_destroy,
 77+.destroy = on_screen_destroy,
 78 };
 79 
 80 static struct client* get_focus_candidate(struct screen* s) {
 81-	struct client* c = first_client(s);
 82-	if (!c && s) c = first_client(NULL);
 83-	return c;
 84+struct client* c = first_client(s);
 85+if (!c && s) c = first_client(NULL);
 86+return c;
 87 }
 88 
 89 static void focus(struct client* c)
 90 {
 91-	if (wm.sel_client && wm.sel_client != c) {
 92-		swc_window_set_border(wm.sel_client->win, cfg.border_col_normal, cfg.border_width, 0, 0);
 93-	}
 94-	if (c) {
 95-		swc_window_set_border(c->win, cfg.border_col_active, cfg.border_width, 0, 0);
 96-	}
 97+if (wm.sel_client && wm.sel_client != c) {
 98+swc_window_set_border(wm.sel_client->win, cfg.border_col_normal, cf
 99+g.border_width, 0, 0);
100+}
101+if (c) {
102+swc_window_set_border(c->win, cfg.border_col_active, cfg.border_wid
103+th, 0, 0);
104+}
105 
106-	swc_window_focus(c ? c->win : NULL);
107-	wm.sel_client = c;
108+swc_window_focus(c ? c->win : NULL);
109+wm.sel_client = c;
110 }
111 
112 static struct client* first_client(struct screen* s)
113 {
114-	struct client* c;
115+struct client* c;
116 
117-	wl_list_for_each(c, &wm.clients, link) {
118-		if (is_ws_client(c, s))
119-			return c;
120-	}
121+wl_list_for_each(c, &wm.clients, link) {
122+if (is_ws_client(c, s))
123+return c;
124+}
125 
126-	return NULL;
127+return NULL;
128 }
129 
130 static bool is_ws_client(const struct client* c, const struct screen* s)
131 {
132-	return c && c->ws == wm.ws && (!s || c->scr == s);
133+return c && c->ws == wm.ws && (!s || c->scr == s);
134 }
135 
136 static void on_screen_destroy(void* data)
137 {
138-	struct screen* s = data;
139+struct screen* s = data;
140 
141-	if (!s)
142-		return;
143+if (!s)
144+return;
145 
146-	wl_list_remove(&s->link);
147+wl_list_remove(&s->link);
148 
149-	if (wm.sel_screen == s) {
150-		wm.sel_screen = wl_list_empty(&wm.screens)
151-			? NULL
152-			: wl_container_of(wm.screens.next, wm.sel_screen, link);
153-	}
154+if (wm.sel_screen == s) {
155+wm.sel_screen = wl_list_empty(&wm.screens)
156+? NULL
157+: wl_container_of(wm.screens.next, wm.sel_screen, link);
158+}
159 
160-	free(s);
161+free(s);
162 }
163 
164 static void on_win_destroy(void* data)
165 {
166-	struct client* c = data;
167-	if (!c) return;
168-
169-	if (wm.grab.active && wm.grab.c == c)
170-		wm.grab.active = false;
171+struct client* c = data;
172+if (!c) return;
173 
174-	if (wm.sel_client == c)
175-		wm.sel_client = NULL;
176+if (wm.sel_client == c)
177+wm.sel_client = NULL;
178 
179-	wl_list_remove(&c->link);
180-	free(c);
181+wl_list_remove(&c->link);
182+free(c);
183 
184-	focus(get_focus_candidate(wm.sel_screen));
185+focus(get_focus_candidate(wm.sel_screen));
186 }
187 
188 static void on_win_entered(void* data)
189 {
190-	if (wm.grab.active)
191-		return;
192 
193-	struct client* c = data;
194-	if (!is_ws_client(c, NULL))
195-		return;
196+struct client* c = data;
197+if (!is_ws_client(c, NULL))
198+return;
199 
200-	focus(c);
201+focus(c);
202 }
203 
204 static void setup(void)
205 {
206-	/* display */
207-	wm.dpy = wl_display_create();
208-	if (!wm.dpy)
209-		die(EXIT_FAILURE, "wl_display_create failed");
210+/* display */
211+wm.dpy = wl_display_create();
212+if (!wm.dpy)
213+die(EXIT_FAILURE, "wl_display_create failed");
214 
215-	/* variables */
216-	wl_list_init(&wm.screens);
217-	wl_list_init(&wm.clients);
218+/* variables */
219+wl_list_init(&wm.screens);
220+wl_list_init(&wm.clients);
221 
222-	wm.sel_client = NULL;
223-	wm.sel_screen = NULL;
224-	wm.grab.active = false;
225-	wm.grab.resize = false;
226-	wm.grab.c = NULL;
227-	wm.ws = 1;
228+wm.sel_client = NULL;
229+wm.sel_screen = NULL;
230+wm.ws = 1;
231 
232-	/* event loop */
233-	wm.ev_loop = wl_display_get_event_loop(wm.dpy);
234-	if (!swc_initialize(wm.dpy, wm.ev_loop, &manager))
235-		die(EXIT_FAILURE, "swc_initialize failed\n");
236+/* event loop */
237+wm.ev_loop = wl_display_get_event_loop(wm.dpy);
238+if (!swc_initialize(wm.dpy, wm.ev_loop, &manager))
239+die(EXIT_FAILURE, "swc_initialize failed\n");
240 
241-	setup_binds();
242+setup_binds();
243 
244-	/* display socket */
245-	const char* sock;
246-	sock = wl_display_add_socket_auto(wm.dpy);
247-	if (!sock)
248-		die(EXIT_FAILURE, "wl_display_add_socket_auto failed\n");
249+/* display socket */
250+const char* sock;
251+sock = wl_display_add_socket_auto(wm.dpy);
252+if (!sock)
253+die(EXIT_FAILURE, "wl_display_add_socket_auto failed\n");
254 
255-	setenv("WAYLAND_DISPLAY", sock, 1);
256-	_log(stderr, "WAYLAND_DISPLAY=%s\n", sock);
257+setenv("WAYLAND_DISPLAY", sock, 1);
258+_log(stderr, "WAYLAND_DISPLAY=%s\n", sock);
259 
260-	/* signals */
261-	signal(SIGINT,  sig_handler);
262-	signal(SIGTERM, sig_handler);
263-	signal(SIGQUIT, sig_handler);
264+/* signals */
265+signal(SIGINT,  sig_handler);
266+signal(SIGTERM, sig_handler);
267+signal(SIGQUIT, sig_handler);
268 }
269 
270 static void setup_binds(void)
271 {
272-	for (size_t i = 0; i < LENGTH(binds); i++) {
273-		const struct bind* b = &binds[i];
274-		swc_add_binding(b->type, b->mods, b->ksym, b->fn, (void*)&b->arg);
275-	}
276+for (size_t i = 0; i < LENGTH(binds); i++) {
277+const struct bind* b = &binds[i];
278+swc_add_binding(b->type, b->mods, b->ksym, b->fn, (void*)&b->arg);
279+}
280 }
281 
282 static void sync_window_visibility(void)
283 {
284-	struct client* c;
285+struct client* c;
286 
287-	wl_list_for_each(c, &wm.clients, link) {
288-		if (c->ws == wm.ws)
289-			swc_window_show(c->win);
290-		else
291-			swc_window_hide(c->win);
292-	}
293+wl_list_for_each(c, &wm.clients, link) {
294+if (c->ws == wm.ws)
295+swc_window_show(c->win);
296+else
297+swc_window_hide(c->win);
298+}
299 }
300-
301 
302 /* focus next/prev helpers */
303 static void focus_walk_direction(bool forward)
304 {
305-	if (wl_list_empty(&wm.clients)) return;
306+if (wl_list_empty(&wm.clients)) return;
307 
308-	if (!is_ws_client(wm.sel_client, wm.sel_screen)) {
309-		focus(get_focus_candidate(wm.sel_screen));
310-		return;
311-	}
312+if (!is_ws_client(wm.sel_client, wm.sel_screen)) {
313+focus(get_focus_candidate(wm.sel_screen));
314+return;
315+}
316 
317-	struct wl_list *start =
318-		forward ? wm.sel_client->link.next
319-				: wm.sel_client->link.prev;
320+struct wl_list *start =
321+forward ? wm.sel_client->link.next
322+: wm.sel_client->link.prev;
323 
324-	struct wl_list *it = start;
325-	struct client *c = NULL;
326+struct wl_list *it = start;
327+struct client *c = NULL;
328 
329-	do {
330-		if (it == &wm.clients)
331-			it = forward ? wm.clients.next : wm.clients.prev;
332+do {
333+if (it == &wm.clients)
334+it = forward ? wm.clients.next : wm.clients.prev;
335 
336-		if (it == &wm.clients) break;
337+if (it == &wm.clients) break;
338 
339-		c = wl_container_of(it, c, link);
340-		if (is_ws_client(c, wm.sel_screen)) {
341-			focus(c);
342-			return;
343-		}
344+c = wl_container_of(it, c, link);
345+if (is_ws_client(c, wm.sel_screen)) {
346+focus(c);
347+return;
348+}
349 
350-		it = forward ? it->next : it->prev;
351-	} while (it != start);
352+it = forward ? it->next : it->prev;
353+} while (it != start);
354 
355-	focus(get_focus_candidate(wm.sel_screen));
356+focus(get_focus_candidate(wm.sel_screen));
357 }
358 
359 void focus_next(void* data, uint32_t time, uint32_t value, uint32_t state)
360 {
361-	(void)data; BIND_EVENT(time, value, state);
362-	focus_walk_direction(true);
363-}
364-
365-void focus_prev(void* data, uint32_t time, uint32_t value, uint32_t state)
366-{
367-	(void)data; BIND_EVENT(time, value, state);
368-	focus_walk_direction(false);
369+(void)data; BIND_EVENT(time, value, state);
370+focus_walk_direction(true);
371 }
372 
373 void kill_sel(void* data, uint32_t time, uint32_t value, uint32_t state)
374 {
375-	(void)data; BIND_EVENT(time, value, state);
376+(void)data; BIND_EVENT(time, value, state);
377 
378-	if (wm.sel_client)
379-		swc_window_close(wm.sel_client->win);
380+if (wm.sel_client)
381+swc_window_close(wm.sel_client->win);
382 }
383 
384 void fullscreen(void* data, uint32_t time, uint32_t value, uint32_t state)
385 {
386-	(void)data; BIND_EVENT(time, value, state);
387-	if (!wm.sel_client) return;
388+(void)data; BIND_EVENT(time, value, state);
389+if (!wm.sel_client) return;
390 
391-	struct client *c = wm.sel_client;
392-	struct swc_rectangle geom;
393+struct client *c = wm.sel_client;
394+struct swc_rectangle geom;
395 
396-	if (c->fullscreen) {
397-		c->fullscreen = false;
398-		swc_window_set_stacked(c->win);
399+if (c->fullscreen) {
400+c->fullscreen = false;
401+swc_window_set_stacked(c->win);
402 
403-		if (c->w > 0 && c->h > 0) {
404-			geom = (struct swc_rectangle){ c->x, c->y, c->w, c->h };
405-			swc_window_set_geometry(c->win, &geom);
406-		}
407-		return;
408-	}
409+if (c->w > 0 && c->h > 0) {
410+geom = (struct swc_rectangle){ c->x, c->y, c->w, c->h };
411+swc_window_set_geometry(c->win, &geom);
412+}
413+return;
414+}
415 
416-	if (!c->scr || !c->scr->scr) return;
417+if (!c->scr || !c->scr->scr) return;
418 
419-	if (get_geometry(c, &geom)) {
420-		c->x = geom.x;
421-		c->y = geom.y;
422-		c->w = geom.width;
423-		c->h = geom.height;
424-	}
425+if (get_geometry(c, &geom)) {
426+c->x = geom.x;
427+c->y = geom.y;
428+c->w = geom.width;
429+c->h = geom.height;
430+}
431 
432-	c->fullscreen = true;
433-	swc_window_set_fullscreen(c->win, c->scr->scr);
434+c->fullscreen = true;
435+swc_window_set_fullscreen(c->win, c->scr->scr);
436 }
437 
438 void kb_move_x(void* data, uint32_t time, uint32_t value, uint32_t state) {
439-	BIND_ACTION(data, time, value, state);
440-	adjust_geom(wm.sel_client, a->i, 0, 0, 0);
441+BIND_ACTION(data, time, value, state);
442+adjust_geom(wm.sel_client, a->i, 0, 0, 0);
443 }
444 
445 void kb_move_y(void* data, uint32_t time, uint32_t value, uint32_t state) {
446-	BIND_ACTION(data, time, value, state);
447-	adjust_geom(wm.sel_client, 0, a->i, 0, 0);
448+BIND_ACTION(data, time, value, state);
449+adjust_geom(wm.sel_client, 0, a->i, 0, 0);
450 }
451 
452 void kb_resize_width(void* data, uint32_t time, uint32_t value, uint32_t state) {
453-	BIND_ACTION(data, time, value, state);
454-	adjust_geom(wm.sel_client, 0, 0, a->i, 0);
455+BIND_ACTION(data, time, value, state);
456+adjust_geom(wm.sel_client, 0, 0, a->i, 0);
457 }
458 
459 void kb_resize_height(void* data, uint32_t time, uint32_t value, uint32_t state) {
460-	BIND_ACTION(data, time, value, state);
461-	adjust_geom(wm.sel_client, 0, 0, 0, a->i);
462+BIND_ACTION(data, time, value, state);
463+adjust_geom(wm.sel_client, 0, 0, 0, a->i);
464 }
465 
466 static void apply_grid_geometry(struct client *c, float x_frac, float w_frac) {
467-	if (!c || !c->scr || !c->scr->scr) return;
468+if (!c || !c->scr || !c->scr->scr) return;
469 
470-	struct swc_rectangle geom;
471-	struct swc_rectangle *ug = &c->scr->scr->usable_geometry;
472+struct swc_rectangle geom;
473+struct swc_rectangle *ug = &c->scr->scr->usable_geometry;
474 
475-	geom.x = ug->x + (ug->width * x_frac);
476-	geom.y = ug->y;
477-	geom.width = ug->width * w_frac;
478-	geom.height = ug->height;
479+geom.x = ug->x + (ug->width * x_frac);
480+geom.y = ug->y;
481+geom.width = ug->width * w_frac;
482+geom.height = ug->height;
483 
484-	swc_window_set_geometry(c->win, &geom);
485+swc_window_set_geometry(c->win, &geom);
486 }
487 
488 void center_window(void* data, uint32_t time, uint32_t value, uint32_t state) {
489-	BIND_ACTION(data, time, value, state);
490-	if (!wm.sel_client->scr || !wm.sel_client->scr->scr) return;
491+(void)data; BIND_EVENT(time, value, state);
492+if (!wm.sel_client->scr || !wm.sel_client->scr->scr) return;
493 
494-	struct swc_rectangle geom;
495-	if (!get_geometry(wm.sel_client, &geom)) return;
496+struct swc_rectangle geom;
497+if (!get_geometry(wm.sel_client, &geom)) return;
498 
499-	struct swc_rectangle *ug = &wm.sel_client->scr->scr->usable_geometry;
500-	geom.x = ug->x + (ug->width - geom.width) / 2;
501-	geom.y = ug->y + (ug->height - geom.height) / 2;
502+struct swc_rectangle *ug = &wm.sel_client->scr->scr->usable_geometry;
503+geom.x = ug->x + (ug->width - geom.width) / 2;
504+geom.y = ug->y + (ug->height - geom.height) / 2;
505 
506-	swc_window_set_geometry(wm.sel_client->win, &geom);
507+swc_window_set_geometry(wm.sel_client->win, &geom);
508 }
509 
510 void snap_left_half(void* data, uint32_t time, uint32_t value, uint32_t state) {
511-	BIND_ACTION(data, time, value, state);
512-	apply_grid_geometry(wm.sel_client, 0.0f, 0.5f);
513+(void)data; BIND_EVENT(time, value, state);
514+apply_grid_geometry(wm.sel_client, 0.0f, 0.5f);
515 }
516 
517 void snap_right_half(void* data, uint32_t time, uint32_t value, uint32_t state) {
518-	BIND_ACTION(data, time, value, state);
519-	apply_grid_geometry(wm.sel_client, 0.5f, 0.5f);
520+(void)data; BIND_EVENT(time, value, state);
521+apply_grid_geometry(wm.sel_client, 0.5f, 0.5f);
522 }
523 
524 void new_screen(struct swc_screen* scr)
525 {
526-	struct screen* s = calloc(1, sizeof(*s));
527-	if (!s) die(EXIT_FAILURE, "new screen calloc failed");
528+struct screen* s = calloc(1, sizeof(*s));
529+if (!s) die(EXIT_FAILURE, "new screen calloc failed");
530 
531-	s->scr = scr;
532-	wl_list_insert(&wm.screens, &s->link);
533+s->scr = scr;
534+wl_list_insert(&wm.screens, &s->link);
535 
536-	if (!wm.sel_screen) wm.sel_screen = s;
537+if (!wm.sel_screen) wm.sel_screen = s;
538 
539-	swc_screen_set_handler(scr, &screen_handler, s);
540-	_log(stderr, "new_screen=%p\n", (void*)scr);
541+swc_screen_set_handler(scr, &screen_handler, s);
542+_log(stderr, "new_screen=%p\n", (void*)scr);
543 }
544 
545 void new_window(struct swc_window* win)
546 {
547-	struct client* c = calloc(1, sizeof(*c));
548-	if (!c) die(EXIT_FAILURE, "calloc client failed");
549+struct client* c = calloc(1, sizeof(*c));
550+if (!c) die(EXIT_FAILURE, "calloc client failed");
551 
552-	win->motion_throttle_ms = 1000 / cfg.motion_throttle_hz;
553-	win->min_width = 1;
554-	win->min_height = 1;
555+win->motion_throttle_ms = 1000 / cfg.motion_throttle_hz;
556+win->min_width = 1;
557+win->min_height = 1;
558 
559-	c->win = win;
560-	c->scr = wm.sel_screen;
561-	c->floating = true;
562-	c->ws = wm.ws;
563+c->win = win;
564+c->scr = wm.sel_screen;
565+c->ws = wm.ws;
566 
567-	wl_list_insert(&wm.clients, &c->link);
568-	swc_window_set_handler(win, &window_handler, c);
569-	swc_window_set_stacked(win);
570+wl_list_insert(&wm.clients, &c->link);
571+swc_window_set_handler(win, &window_handler, c);
572+swc_window_set_stacked(win);
573 
574-	int32_t cx = 0, cy = 0;
575-	if (swc_cursor_position(&cx, &cy))
576-		swc_window_set_position(win, cx / 256, cy / 256);
577+int32_t cx = 0, cy = 0;
578+if (swc_cursor_position(&cx, &cy))
579+swc_window_set_position(win, cx / 256, cy / 256);
580 
581-	swc_window_show(win);
582-	focus(c);
583+swc_window_show(win);
584+focus(c);
585 
586-	_log(stderr, "new_window=%p\n", (void*)win);
587+_log(stderr, "new_window=%p\n", (void*)win);
588 }
589 
590 void new_device(struct libinput_device* dev)
591 {
592-	(void)dev;
593+(void)dev;
594 }
595 
596 void quit(void* data, uint32_t time, uint32_t value, uint32_t state)
597 {
598-	(void)data; BIND_EVENT(time, value, state);
599-	wl_display_terminate(wm.dpy);
600+(void)data; BIND_EVENT(time, value, state);
601+wl_display_terminate(wm.dpy);
602 }
603 
604 void spawn(void* data, uint32_t time, uint32_t value, uint32_t state)
605 {
606-	BIND_EVENT(time, value, state);
607+BIND_EVENT(time, value, state);
608 
609-	pid_t pid = fork();
610-	if (pid == 0) {
611-		setsid();
612-		if (fork() == 0) {
613-			union arg* a = data;
614-			char* const* cmd = (char* const*)a->v;
615+pid_t pid = fork();
616+if (pid == 0) {
617+setsid();
618+if (fork() == 0) {
619+union arg* a = data;
620+char* const* cmd = (char* const*)a->v;
621 
622-			execvp(cmd[0], cmd);
623-			_exit(127);
624-		}
625-		_exit(0);
626-	} else if (pid > 0) {
627-		waitpid(pid, NULL, 0);
628-	}
629+execvp(cmd[0], cmd);
630+_exit(127);
631+}
632+_exit(0);
633+} else if (pid > 0) {
634+waitpid(pid, NULL, 0);
635+}
636 }
637 
638 void workspace_goto(void* data, uint32_t time, uint32_t value, uint32_t state)
639 {
640-	union arg* a = data;
641-	BIND_EVENT(time, value, state);
642+union arg* a = data;
643+BIND_EVENT(time, value, state);
644 
645-	if (a->ui < 1 || a->ui > 9 || a->ui == wm.ws) return;
646+if (a->ui < 1 || a->ui > 9 || a->ui == wm.ws) return;
647 
648-	wm.ws = a->ui;
649-	sync_window_visibility();
650+wm.ws = a->ui;
651+sync_window_visibility();
652 
653-	focus(get_focus_candidate(wm.sel_screen));
654+focus(get_focus_candidate(wm.sel_screen));
655 }
656 
657 void workspace_moveto(void* data, uint32_t time, uint32_t value, uint32_t state)
658 {
659-	BIND_ACTION(data, time, value, state);
660-	if (a->ui < 1 || a->ui > 9 || wm.sel_client->ws == a->ui) return;
661+BIND_ACTION(data, time, value, state);
662+if (a->ui < 1 || a->ui > 9 || wm.sel_client->ws == a->ui) return;
663 
664-	struct client* c = wm.sel_client;
665-	c->ws = a->ui;
666+struct client* c = wm.sel_client;
667+c->ws = a->ui;
668 
669-	if (c->ws == wm.ws)
670-		swc_window_show(c->win);
671-	else
672-		swc_window_hide(c->win);
673+if (c->ws == wm.ws)
674+swc_window_show(c->win);
675+else
676+swc_window_hide(c->win);
677 
678-	focus(get_focus_candidate(wm.sel_screen));
679+focus(get_focus_candidate(wm.sel_screen));
680 }
681 
682 int main(void)
683 {
684-	setup();
685-	wl_display_run(wm.dpy);
686-	swc_finalize();
687-	wl_display_destroy(wm.dpy);
688-	return EXIT_SUCCESS;
689+setup();
690+wl_display_run(wm.dpy);
691+swc_finalize();
692+wl_display_destroy(wm.dpy);
693+return EXIT_SUCCESS;
694 }