summaryrefslogtreecommitdiff
path: root/xmouseless.c
diff options
context:
space:
mode:
authorJohannes Bensmann <johannesbensmann@gmx.de>2019-06-09 14:52:00 +0200
committerJohannes Bensmann <johannesbensmann@gmx.de>2019-06-09 15:00:02 +0200
commit130540cbbf154f349cd1afaa837c07e3a69d3e28 (patch)
tree3d716d8589bf418a6e31ff630f751a0398742804 /xmouseless.c
parent6ea9fa0d3cceb38fa67c021e95449e2c87a431c6 (diff)
restructured some code
Diffstat (limited to 'xmouseless.c')
-rw-r--r--xmouseless.c31
1 files changed, 25 insertions, 6 deletions
diff --git a/xmouseless.c b/xmouseless.c
index 0eb54f0..90dd4b1 100644
--- a/xmouseless.c
+++ b/xmouseless.c
@@ -11,16 +11,35 @@
#include <X11/XKBlib.h>
#include <X11/extensions/XTest.h>
+#define LENGTH(X) (sizeof X / sizeof X[0])
+
+
+typedef struct {
+ KeySym keysym;
+ int x;
+ int y;
+} MoveBinding;
+
+typedef struct {
+ KeySym keysym;
+ int button;
+} ClickBinding;
+
+typedef struct {
+ KeySym keysym;
+ int speed;
+} SpeedBindings;
+
+/* load configuration */
#include "config.h"
-#define LENGTH(X) (sizeof X / sizeof X[0])
Display *dpy;
int screen;
Window root;
pthread_t movethread;
-unsigned int speed = DEFAULT_SPEED;
+static unsigned int speed = default_speed;
struct {
int x;
@@ -84,7 +103,7 @@ void *moveforever(void *val) {
if (mouseinfo.move_x != 0 || mouseinfo.move_y != 0) {
moverelative(speed * mouseinfo.move_x, speed * mouseinfo.move_y);
}
- usleep(1000000 / MOVE_RATE);
+ usleep(1000000 / move_rate);
}
}
@@ -115,8 +134,8 @@ void handle_keypress(XKeyEvent event) {
/* speed bindings */
for (i = 0; i < LENGTH(speed_bindings); i++) {
if (speed_bindings[i].keysym == keysym) {
- printf("speed: %i\n", speed_bindings[i].speed);
speed = speed_bindings[i].speed;
+ printf("speed: %i\n", speed);
}
}
}
@@ -147,8 +166,8 @@ void handle_keyrelease(XKeyEvent event) {
/* speed bindings */
for (i = 0; i < LENGTH(speed_bindings); i++) {
if (speed_bindings[i].keysym == keysym) {
- printf("speed: %i\n", DEFAULT_SPEED);
- speed = DEFAULT_SPEED;
+ speed = default_speed;
+ printf("speed: %i\n", speed);
}
}