diff options
author | Zandr Martin <zandrmartin@gmail.com> | 2016-09-01 21:39:08 -0500 |
---|---|---|
committer | Zandr Martin <zandrmartin@gmail.com> | 2016-09-01 21:39:08 -0500 |
commit | b374c35758777f98e5ddbe4b0dc43bd7c80f36d7 (patch) | |
tree | 04bb4cfc3da7d2e0de7fbc38db42f65c66d2df4c /sway/commands/input | |
parent | Merge pull request #874 from yohanesu75/ipc-client-fix (diff) | |
download | sway-b374c35758777f98e5ddbe4b0dc43bd7c80f36d7.tar.gz sway-b374c35758777f98e5ddbe4b0dc43bd7c80f36d7.tar.zst sway-b374c35758777f98e5ddbe4b0dc43bd7c80f36d7.zip |
refactor commands.c
Diffstat (limited to 'sway/commands/input')
-rw-r--r-- | sway/commands/input/accel_profile.c | 26 | ||||
-rw-r--r-- | sway/commands/input/click_method.c | 29 | ||||
-rw-r--r-- | sway/commands/input/drag_lock.c | 25 | ||||
-rw-r--r-- | sway/commands/input/dwt.c | 25 | ||||
-rw-r--r-- | sway/commands/input/events.c | 29 | ||||
-rw-r--r-- | sway/commands/input/middle_emulation.c | 25 | ||||
-rw-r--r-- | sway/commands/input/natural_scroll.c | 25 | ||||
-rw-r--r-- | sway/commands/input/pointer_accel.c | 24 | ||||
-rw-r--r-- | sway/commands/input/scroll_method.c | 29 | ||||
-rw-r--r-- | sway/commands/input/tap.c | 28 |
10 files changed, 265 insertions, 0 deletions
diff --git a/sway/commands/input/accel_profile.c b/sway/commands/input/accel_profile.c new file mode 100644 index 00000000..bfc3c76d --- /dev/null +++ b/sway/commands/input/accel_profile.c | |||
@@ -0,0 +1,26 @@ | |||
1 | #include <string.h> | ||
2 | #include "commands.h" | ||
3 | #include "input.h" | ||
4 | |||
5 | struct cmd_results *input_cmd_accel_profile(int argc, char **argv) { | ||
6 | struct cmd_results *error = NULL; | ||
7 | if ((error = checkarg(argc, "accel_profile", EXPECTED_AT_LEAST, 1))) { | ||
8 | return error; | ||
9 | } | ||
10 | if (!current_input_config) { | ||
11 | return cmd_results_new(CMD_FAILURE, "accel_profile", "No input device defined."); | ||
12 | } | ||
13 | struct input_config *new_config = new_input_config(current_input_config->identifier); | ||
14 | |||
15 | if (strcasecmp(argv[0], "adaptive") == 0) { | ||
16 | new_config->accel_profile = LIBINPUT_CONFIG_ACCEL_PROFILE_ADAPTIVE; | ||
17 | } else if (strcasecmp(argv[0], "flat") == 0) { | ||
18 | new_config->accel_profile = LIBINPUT_CONFIG_ACCEL_PROFILE_FLAT; | ||
19 | } else { | ||
20 | return cmd_results_new(CMD_INVALID, "accel_profile", | ||
21 | "Expected 'accel_profile <adaptive|flat>'"); | ||
22 | } | ||
23 | |||
24 | input_cmd_apply(new_config); | ||
25 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); | ||
26 | } | ||
diff --git a/sway/commands/input/click_method.c b/sway/commands/input/click_method.c new file mode 100644 index 00000000..2001acf2 --- /dev/null +++ b/sway/commands/input/click_method.c | |||
@@ -0,0 +1,29 @@ | |||
1 | #include <string.h> | ||
2 | #include "commands.h" | ||
3 | #include "input.h" | ||
4 | #include "log.h" | ||
5 | |||
6 | struct cmd_results *input_cmd_click_method(int argc, char **argv) { | ||
7 | sway_log(L_DEBUG, "click_method for device: %d %s", current_input_config==NULL, current_input_config->identifier); | ||
8 | struct cmd_results *error = NULL; | ||
9 | if ((error = checkarg(argc, "click_method", EXPECTED_AT_LEAST, 1))) { | ||
10 | return error; | ||
11 | } | ||
12 | if (!current_input_config) { | ||
13 | return cmd_results_new(CMD_FAILURE, "click_method", "No input device defined."); | ||
14 | } | ||
15 | struct input_config *new_config = new_input_config(current_input_config->identifier); | ||
16 | |||
17 | if (strcasecmp(argv[0], "none") == 0) { | ||
18 | new_config->click_method = LIBINPUT_CONFIG_CLICK_METHOD_NONE; | ||
19 | } else if (strcasecmp(argv[0], "button_areas") == 0) { | ||
20 | new_config->click_method = LIBINPUT_CONFIG_CLICK_METHOD_BUTTON_AREAS; | ||
21 | } else if (strcasecmp(argv[0], "clickfinger") == 0) { | ||
22 | new_config->click_method = LIBINPUT_CONFIG_CLICK_METHOD_CLICKFINGER; | ||
23 | } else { | ||
24 | return cmd_results_new(CMD_INVALID, "click_method", "Expected 'click_method <none|button_areas|clickfinger'"); | ||
25 | } | ||
26 | |||
27 | input_cmd_apply(new_config); | ||
28 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); | ||
29 | } | ||
diff --git a/sway/commands/input/drag_lock.c b/sway/commands/input/drag_lock.c new file mode 100644 index 00000000..7bb2e334 --- /dev/null +++ b/sway/commands/input/drag_lock.c | |||
@@ -0,0 +1,25 @@ | |||
1 | #include <string.h> | ||
2 | #include "commands.h" | ||
3 | #include "input.h" | ||
4 | |||
5 | struct cmd_results *input_cmd_drag_lock(int argc, char **argv) { | ||
6 | struct cmd_results *error = NULL; | ||
7 | if ((error = checkarg(argc, "drag_lock", EXPECTED_AT_LEAST, 1))) { | ||
8 | return error; | ||
9 | } | ||
10 | if (!current_input_config) { | ||
11 | return cmd_results_new(CMD_FAILURE, "drag_lock", "No input device defined."); | ||
12 | } | ||
13 | struct input_config *new_config = new_input_config(current_input_config->identifier); | ||
14 | |||
15 | if (strcasecmp(argv[0], "enabled") == 0) { | ||
16 | new_config->drag_lock = LIBINPUT_CONFIG_DRAG_LOCK_ENABLED; | ||
17 | } else if (strcasecmp(argv[0], "disabled") == 0) { | ||
18 | new_config->drag_lock = LIBINPUT_CONFIG_DRAG_LOCK_DISABLED; | ||
19 | } else { | ||
20 | return cmd_results_new(CMD_INVALID, "drag_lock", "Expected 'drag_lock <enabled|disabled>'"); | ||
21 | } | ||
22 | |||
23 | input_cmd_apply(new_config); | ||
24 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); | ||
25 | } | ||
diff --git a/sway/commands/input/dwt.c b/sway/commands/input/dwt.c new file mode 100644 index 00000000..4010126d --- /dev/null +++ b/sway/commands/input/dwt.c | |||
@@ -0,0 +1,25 @@ | |||
1 | #include <string.h> | ||
2 | #include "commands.h" | ||
3 | #include "input.h" | ||
4 | |||
5 | struct cmd_results *input_cmd_dwt(int argc, char **argv) { | ||
6 | struct cmd_results *error = NULL; | ||
7 | if ((error = checkarg(argc, "dwt", EXPECTED_AT_LEAST, 1))) { | ||
8 | return error; | ||
9 | } | ||
10 | if (!current_input_config) { | ||
11 | return cmd_results_new(CMD_FAILURE, "dwt", "No input device defined."); | ||
12 | } | ||
13 | struct input_config *new_config = new_input_config(current_input_config->identifier); | ||
14 | |||
15 | if (strcasecmp(argv[0], "enabled") == 0) { | ||
16 | new_config->dwt = LIBINPUT_CONFIG_DWT_ENABLED; | ||
17 | } else if (strcasecmp(argv[0], "disabled") == 0) { | ||
18 | new_config->dwt = LIBINPUT_CONFIG_DWT_DISABLED; | ||
19 | } else { | ||
20 | return cmd_results_new(CMD_INVALID, "dwt", "Expected 'dwt <enabled|disabled>'"); | ||
21 | } | ||
22 | |||
23 | input_cmd_apply(new_config); | ||
24 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); | ||
25 | } | ||
diff --git a/sway/commands/input/events.c b/sway/commands/input/events.c new file mode 100644 index 00000000..9bf9aa95 --- /dev/null +++ b/sway/commands/input/events.c | |||
@@ -0,0 +1,29 @@ | |||
1 | #include <string.h> | ||
2 | #include "commands.h" | ||
3 | #include "input.h" | ||
4 | #include "log.h" | ||
5 | |||
6 | struct cmd_results *input_cmd_events(int argc, char **argv) { | ||
7 | sway_log(L_DEBUG, "events for device: %s", current_input_config->identifier); | ||
8 | struct cmd_results *error = NULL; | ||
9 | if ((error = checkarg(argc, "events", EXPECTED_AT_LEAST, 1))) { | ||
10 | return error; | ||
11 | } | ||
12 | if (!current_input_config) { | ||
13 | return cmd_results_new(CMD_FAILURE, "events", "No input device defined."); | ||
14 | } | ||
15 | struct input_config *new_config = new_input_config(current_input_config->identifier); | ||
16 | |||
17 | if (strcasecmp(argv[0], "enabled") == 0) { | ||
18 | new_config->send_events = LIBINPUT_CONFIG_SEND_EVENTS_ENABLED; | ||
19 | } else if (strcasecmp(argv[0], "disabled") == 0) { | ||
20 | new_config->send_events = LIBINPUT_CONFIG_SEND_EVENTS_DISABLED; | ||
21 | } else if (strcasecmp(argv[0], "disabled_on_external_mouse") == 0) { | ||
22 | new_config->send_events = LIBINPUT_CONFIG_SEND_EVENTS_DISABLED_ON_EXTERNAL_MOUSE; | ||
23 | } else { | ||
24 | return cmd_results_new(CMD_INVALID, "events", "Expected 'events <enabled|disabled|disabled_on_external_mouse>'"); | ||
25 | } | ||
26 | |||
27 | input_cmd_apply(new_config); | ||
28 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); | ||
29 | } | ||
diff --git a/sway/commands/input/middle_emulation.c b/sway/commands/input/middle_emulation.c new file mode 100644 index 00000000..e3087f3a --- /dev/null +++ b/sway/commands/input/middle_emulation.c | |||
@@ -0,0 +1,25 @@ | |||
1 | #include <string.h> | ||
2 | #include "commands.h" | ||
3 | #include "input.h" | ||
4 | |||
5 | struct cmd_results *input_cmd_middle_emulation(int argc, char **argv) { | ||
6 | struct cmd_results *error = NULL; | ||
7 | if ((error = checkarg(argc, "middle_emulation", EXPECTED_AT_LEAST, 1))) { | ||
8 | return error; | ||
9 | } | ||
10 | if (!current_input_config) { | ||
11 | return cmd_results_new(CMD_FAILURE, "middle_emulation", "No input device defined."); | ||
12 | } | ||
13 | struct input_config *new_config = new_input_config(current_input_config->identifier); | ||
14 | |||
15 | if (strcasecmp(argv[0], "enabled") == 0) { | ||
16 | new_config->middle_emulation = LIBINPUT_CONFIG_MIDDLE_EMULATION_ENABLED; | ||
17 | } else if (strcasecmp(argv[0], "disabled") == 0) { | ||
18 | new_config->middle_emulation = LIBINPUT_CONFIG_MIDDLE_EMULATION_DISABLED; | ||
19 | } else { | ||
20 | return cmd_results_new(CMD_INVALID, "middle_emulation", "Expected 'middle_emulation <enabled|disabled>'"); | ||
21 | } | ||
22 | |||
23 | input_cmd_apply(new_config); | ||
24 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); | ||
25 | } | ||
diff --git a/sway/commands/input/natural_scroll.c b/sway/commands/input/natural_scroll.c new file mode 100644 index 00000000..393f26a0 --- /dev/null +++ b/sway/commands/input/natural_scroll.c | |||
@@ -0,0 +1,25 @@ | |||
1 | #include <string.h> | ||
2 | #include "commands.h" | ||
3 | #include "input.h" | ||
4 | |||
5 | struct cmd_results *input_cmd_natural_scroll(int argc, char **argv) { | ||
6 | struct cmd_results *error = NULL; | ||
7 | if ((error = checkarg(argc, "natural_scroll", EXPECTED_AT_LEAST, 1))) { | ||
8 | return error; | ||
9 | } | ||
10 | if (!current_input_config) { | ||
11 | return cmd_results_new(CMD_FAILURE, "natural_scoll", "No input device defined."); | ||
12 | } | ||
13 | struct input_config *new_config = new_input_config(current_input_config->identifier); | ||
14 | |||
15 | if (strcasecmp(argv[0], "enabled") == 0) { | ||
16 | new_config->natural_scroll = 1; | ||
17 | } else if (strcasecmp(argv[0], "disabled") == 0) { | ||
18 | new_config->natural_scroll = 0; | ||
19 | } else { | ||
20 | return cmd_results_new(CMD_INVALID, "natural_scroll", "Expected 'natural_scroll <enabled|disabled>'"); | ||
21 | } | ||
22 | |||
23 | input_cmd_apply(new_config); | ||
24 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); | ||
25 | } | ||
diff --git a/sway/commands/input/pointer_accel.c b/sway/commands/input/pointer_accel.c new file mode 100644 index 00000000..e22c51c1 --- /dev/null +++ b/sway/commands/input/pointer_accel.c | |||
@@ -0,0 +1,24 @@ | |||
1 | #include <stdlib.h> | ||
2 | #include <string.h> | ||
3 | #include "commands.h" | ||
4 | #include "input.h" | ||
5 | |||
6 | struct cmd_results *input_cmd_pointer_accel(int argc, char **argv) { | ||
7 | struct cmd_results *error = NULL; | ||
8 | if ((error = checkarg(argc, "pointer_accel", EXPECTED_AT_LEAST, 1))) { | ||
9 | return error; | ||
10 | } | ||
11 | if (!current_input_config) { | ||
12 | return cmd_results_new(CMD_FAILURE, "pointer_accel", "No input device defined."); | ||
13 | } | ||
14 | struct input_config *new_config = new_input_config(current_input_config->identifier); | ||
15 | |||
16 | float pointer_accel = atof(argv[0]); | ||
17 | if (pointer_accel < -1 || pointer_accel > 1) { | ||
18 | return cmd_results_new(CMD_INVALID, "pointer_accel", "Input out of range [-1, 1]"); | ||
19 | } | ||
20 | new_config->pointer_accel = pointer_accel; | ||
21 | |||
22 | input_cmd_apply(new_config); | ||
23 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); | ||
24 | } | ||
diff --git a/sway/commands/input/scroll_method.c b/sway/commands/input/scroll_method.c new file mode 100644 index 00000000..8e900a26 --- /dev/null +++ b/sway/commands/input/scroll_method.c | |||
@@ -0,0 +1,29 @@ | |||
1 | #include <string.h> | ||
2 | #include "commands.h" | ||
3 | #include "input.h" | ||
4 | |||
5 | struct cmd_results *input_cmd_scroll_method(int argc, char **argv) { | ||
6 | struct cmd_results *error = NULL; | ||
7 | if ((error = checkarg(argc, "scroll_method", EXPECTED_AT_LEAST, 1))) { | ||
8 | return error; | ||
9 | } | ||
10 | if (!current_input_config) { | ||
11 | return cmd_results_new(CMD_FAILURE, "scroll_method", "No input device defined."); | ||
12 | } | ||
13 | struct input_config *new_config = new_input_config(current_input_config->identifier); | ||
14 | |||
15 | if (strcasecmp(argv[0], "none") == 0) { | ||
16 | new_config->scroll_method = LIBINPUT_CONFIG_SCROLL_NO_SCROLL; | ||
17 | } else if (strcasecmp(argv[0], "two_finger") == 0) { | ||
18 | new_config->scroll_method = LIBINPUT_CONFIG_SCROLL_2FG; | ||
19 | } else if (strcasecmp(argv[0], "edge") == 0) { | ||
20 | new_config->scroll_method = LIBINPUT_CONFIG_SCROLL_EDGE; | ||
21 | } else if (strcasecmp(argv[0], "on_button_down") == 0) { | ||
22 | new_config->scroll_method = LIBINPUT_CONFIG_SCROLL_ON_BUTTON_DOWN; | ||
23 | } else { | ||
24 | return cmd_results_new(CMD_INVALID, "scroll_method", "Expected 'scroll_method <none|two_finger|edge|on_button_down>'"); | ||
25 | } | ||
26 | |||
27 | input_cmd_apply(new_config); | ||
28 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); | ||
29 | } | ||
diff --git a/sway/commands/input/tap.c b/sway/commands/input/tap.c new file mode 100644 index 00000000..8180dcea --- /dev/null +++ b/sway/commands/input/tap.c | |||
@@ -0,0 +1,28 @@ | |||
1 | #include <string.h> | ||
2 | #include "commands.h" | ||
3 | #include "input.h" | ||
4 | #include "log.h" | ||
5 | |||
6 | struct cmd_results *input_cmd_tap(int argc, char **argv) { | ||
7 | sway_log(L_DEBUG, "tap for device: %s", current_input_config->identifier); | ||
8 | struct cmd_results *error = NULL; | ||
9 | if ((error = checkarg(argc, "tap", EXPECTED_AT_LEAST, 1))) { | ||
10 | return error; | ||
11 | } | ||
12 | if (!current_input_config) { | ||
13 | return cmd_results_new(CMD_FAILURE, "tap", "No input device defined."); | ||
14 | } | ||
15 | struct input_config *new_config = new_input_config(current_input_config->identifier); | ||
16 | |||
17 | if (strcasecmp(argv[0], "enabled") == 0) { | ||
18 | new_config->tap = LIBINPUT_CONFIG_TAP_ENABLED; | ||
19 | } else if (strcasecmp(argv[0], "disabled") == 0) { | ||
20 | new_config->tap = LIBINPUT_CONFIG_TAP_DISABLED; | ||
21 | } else { | ||
22 | return cmd_results_new(CMD_INVALID, "tap", "Expected 'tap <enabled|disabled>'"); | ||
23 | } | ||
24 | |||
25 | sway_log(L_DEBUG, "apply-tap for device: %s", current_input_config->identifier); | ||
26 | input_cmd_apply(new_config); | ||
27 | return cmd_results_new(CMD_SUCCESS, NULL, NULL); | ||
28 | } | ||