aboutsummaryrefslogtreecommitdiff
path: root/sway
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2015-08-20 17:14:26 -0400
committerDrew DeVault <sir@cmpwn.com>2015-08-20 17:14:46 -0400
commit3a5fce339f8dcc22db8cafdfeba7b2748df02d18 (patch)
treecc8e636cb46b901b782c9bb38bdaa405ae2a8964 /sway
parent1100335ea01ecd56df68568622580db14e72b6c7 (diff)
downloadsway-3a5fce339f8dcc22db8cafdfeba7b2748df02d18.tar.xz
Reset key buffer on reload
To preserve my sanity
Diffstat (limited to 'sway')
-rw-r--r--sway/config.c3
-rw-r--r--sway/input_state.c7
2 files changed, 10 insertions, 0 deletions
diff --git a/sway/config.c b/sway/config.c
index 9f65e8a2..0afb0205 100644
--- a/sway/config.c
+++ b/sway/config.c
@@ -9,6 +9,7 @@
#include "commands.h"
#include "config.h"
#include "layout.h"
+#include "input_state.h"
struct sway_config *config;
@@ -147,6 +148,8 @@ _continue:
bool load_config(const char *file) {
sway_log(L_INFO, "Loading config");
+ input_init();
+
char *path;
if (file != NULL) {
path = strdup(file);
diff --git a/sway/input_state.c b/sway/input_state.c
index a7f88d4a..7f312c54 100644
--- a/sway/input_state.c
+++ b/sway/input_state.c
@@ -8,6 +8,13 @@
static keycode key_state_array[KEY_STATE_MAX_LENGTH];
+void input_init(void) {
+ int i;
+ for (i = 0; i < KEY_STATE_MAX_LENGTH; ++i) {
+ key_state_array[i] = 0;
+ }
+}
+
static uint8_t find_key(keycode key) {
int i;
for (i = 0; i < KEY_STATE_MAX_LENGTH; ++i) {