diff options
author | Tony Crisci <tony@dubstepdish.com> | 2018-01-17 08:27:47 -0500 |
---|---|---|
committer | Tony Crisci <tony@dubstepdish.com> | 2018-01-17 08:27:47 -0500 |
commit | 43896af90fbd6c743be1e54a0659d7c0f89eaa00 (patch) | |
tree | c9d0907dbdc9932b593cf154f4ebce6db5a27e2d /rootston/keyboard.c | |
parent | b40a5f084abeb5530b3a0097c946ba720c897262 (diff) | |
parent | f2698a896085a5a2dd651a7f1d4fb623d567acf4 (diff) |
Merge branch 'master' into modifier-fixes
Diffstat (limited to 'rootston/keyboard.c')
-rw-r--r-- | rootston/keyboard.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/rootston/keyboard.c b/rootston/keyboard.c index 29409dd7..09adea5a 100644 --- a/rootston/keyboard.c +++ b/rootston/keyboard.c @@ -2,6 +2,7 @@ #include <stdint.h> #include <stdlib.h> #include <unistd.h> +#include <stdbool.h> #include <wayland-server.h> #include <wlr/types/wlr_input_device.h> #include <wlr/types/wlr_pointer.h> @@ -85,6 +86,8 @@ static void pressed_keysyms_update(xkb_keysym_t *pressed_keysyms, static const char *exec_prefix = "exec "; +static bool outputs_enabled = true; + static void keyboard_binding_execute(struct roots_keyboard *keyboard, const char *command) { struct roots_seat *seat = keyboard->seat; @@ -119,6 +122,12 @@ static void keyboard_binding_execute(struct roots_keyboard *keyboard, } } else if (strcmp(command, "nop") == 0) { wlr_log(L_DEBUG, "nop command"); + } else if (strcmp(command, "toggle_outputs") == 0) { + outputs_enabled = !outputs_enabled; + struct roots_output *output; + wl_list_for_each(output, &keyboard->input->server->desktop->outputs, link) { + wlr_output_enable(output->wlr_output, outputs_enabled); + } } else { wlr_log(L_ERROR, "unknown binding command: %s", command); } |