aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--rootston/cursor.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/rootston/cursor.c b/rootston/cursor.c
index c26ca43a..aad6751e 100644
--- a/rootston/cursor.c
+++ b/rootston/cursor.c
@@ -1,3 +1,4 @@
+#define _XOPEN_SOURCE 500
#include <stdbool.h>
#include <stdint.h>
#include <string.h>
@@ -114,6 +115,8 @@ void cursor_update_position(struct roots_input *input, uint32_t time) {
int vx = input->cursor->x - ox,
vy = input->cursor->y - oy;
float angle = atan2(vx*uy - vy*ux, vx*ux + vy*uy);
+ int steps = 12;
+ angle = round(angle/M_PI*steps) / (steps/M_PI);
view->rotation = input->view_rotation + angle;
}
break;