aboutsummaryrefslogtreecommitdiffstats
path: root/src/tilite.c
diff options
context:
space:
mode:
authorGravatar BanceDev 2026-02-21 12:41:30 -0500
committerGravatar BanceDev 2026-02-21 12:41:30 -0500
commitd7bbdc407c6fbb256975d8beb1f1b8e50d7b74d0 (patch)
tree5ffad82941982c9080e0bc4d2e71262b38d103e7 /src/tilite.c
parentadded directional selection and movement (diff)
reduced duplicity in the focus move
Diffstat (limited to '')
-rw-r--r--src/tilite.c37
1 files changed, 6 insertions, 31 deletions
diff --git a/src/tilite.c b/src/tilite.c
index 5aa9937..625bfc1 100644
--- a/src/tilite.c
+++ b/src/tilite.c
@@ -499,45 +499,20 @@ static client_t *bsp_find_neighbor(client_t *src, int dir) {
return best;
}
-void focus_left(void) {
+static void focus_dir(int dir) {
if (!focused)
return;
- client_t *nb = bsp_find_neighbor(focused, 0);
- if (!nb)
- return;
- focused = nb;
- set_input_focus(focused, True, True);
-}
-
-void focus_right(void) {
- if (!focused)
- return;
- client_t *nb = bsp_find_neighbor(focused, 1);
- if (!nb)
- return;
- focused = nb;
- set_input_focus(focused, True, True);
-}
-
-void focus_up(void) {
- if (!focused)
- return;
- client_t *nb = bsp_find_neighbor(focused, 2);
+ client_t *nb = bsp_find_neighbor(focused, dir);
if (!nb)
return;
focused = nb;
set_input_focus(focused, True, True);
}
-void focus_down(void) {
- if (!focused)
- return;
- client_t *nb = bsp_find_neighbor(focused, 3);
- if (!nb)
- return;
- focused = nb;
- set_input_focus(focused, True, True);
-}
+void focus_left(void) { focus_dir(0); }
+void focus_right(void) { focus_dir(1); }
+void focus_up(void) { focus_dir(2); }
+void focus_down(void) { focus_dir(3); }
int get_workspace_for_window(Window w) {
XClassHint ch = {0};