diff options
Diffstat (limited to 'sway/handlers.c')
-rw-r--r-- | sway/handlers.c | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/sway/handlers.c b/sway/handlers.c index 4cbec0ab..db3a0206 100644 --- a/sway/handlers.c +++ b/sway/handlers.c | |||
@@ -390,18 +390,17 @@ static bool handle_key(wlc_handle view, uint32_t time, const struct wlc_modifier | |||
390 | } | 390 | } |
391 | 391 | ||
392 | // handle bar modifiers pressed/released | 392 | // handle bar modifiers pressed/released |
393 | struct bar_config *bar; | 393 | uint32_t modifier; |
394 | for (i = 0; i < config->bars->length; ++i) { | 394 | for (i = 0; i < config->active_bar_modifiers->length; ++i) { |
395 | bar = config->bars->items[i]; | 395 | modifier = *(uint32_t *)config->active_bar_modifiers->items[i]; |
396 | if (strcmp(bar->mode, "hide") == 0 && strcmp(bar->hidden_state, "hide") == 0) { | 396 | |
397 | switch (modifier_state_changed(modifiers->mods, bar->modifier)) { | 397 | switch (modifier_state_changed(modifiers->mods, modifier)) { |
398 | case MOD_STATE_PRESSED: | 398 | case MOD_STATE_PRESSED: |
399 | ipc_event_modifier(bar->modifier, "pressed"); | 399 | ipc_event_modifier(modifier, "pressed"); |
400 | break; | 400 | break; |
401 | case MOD_STATE_RELEASED: | 401 | case MOD_STATE_RELEASED: |
402 | ipc_event_modifier(bar->modifier, "released"); | 402 | ipc_event_modifier(modifier, "released"); |
403 | break; | 403 | break; |
404 | } | ||
405 | } | 404 | } |
406 | } | 405 | } |
407 | // update modifiers state | 406 | // update modifiers state |