aboutsummaryrefslogtreecommitdiff
path: root/dminiwm.c
diff options
context:
space:
mode:
Diffstat (limited to 'dminiwm.c')
-rw-r--r--dminiwm.c25
1 files changed, 4 insertions, 21 deletions
diff --git a/dminiwm.c b/dminiwm.c
index f952a7d..05de381 100644
--- a/dminiwm.c
+++ b/dminiwm.c
@@ -112,9 +112,8 @@ static void kill_client();
static void maprequest(XEvent *e);
static void move_down();
static void move_up();
-static void next_desktop();
+static void next_desktop(const Arg arg);
static void next_win();
-static void prev_desktop();
static void prev_win();
static void quit();
static void remove_window(Window w);
@@ -385,25 +384,9 @@ void toggle_desktop() {
change_desktop(a);
}
-void next_desktop() {
- int tmp = current_desktop;
- if(tmp == TABLENGTH(desktops)-1)
- tmp = 0;
- else
- tmp++;
-
- Arg a = {.i = tmp};
- change_desktop(a);
-}
-
-void prev_desktop() {
- int tmp = current_desktop;
- if(tmp == 0)
- tmp = TABLENGTH(desktops)-1;
- else
- tmp--;
-
- Arg a = {.i = tmp};
+void next_desktop(const Arg arg) {
+ int ndesktops = TABLENGTH(desktops);
+ Arg a = {.i = (current_desktop + ndesktops + arg.i) % ndesktops};
change_desktop(a);
}