diff --git a/input.c b/input.c index a2f30a0c..22566411 100644 --- a/input.c +++ b/input.c @@ -1600,7 +1600,7 @@ key_press_release(struct seat *seat, struct terminal *term, uint32_t serial, tll_foreach(bindings->key, it) { const struct key_binding *bind = &it->item; - if (bind->mods != mods) + if (bind->mods != mods || bind->mods == 0) continue; for (size_t i = 0; i < raw_count; i++) { @@ -1616,7 +1616,7 @@ key_press_release(struct seat *seat, struct terminal *term, uint32_t serial, tll_foreach(bindings->key, it) { const struct key_binding *bind = &it->item; - if (bind->mods != mods) + if (bind->mods != mods || bind->mods == 0) continue; tll_foreach(bind->k.key_codes, code) { diff --git a/search.c b/search.c index bcb354d6..75f12b4a 100644 --- a/search.c +++ b/search.c @@ -1413,7 +1413,7 @@ search_input(struct seat *seat, struct terminal *term, tll_foreach(bindings->search, it) { const struct key_binding *bind = &it->item; - if (bind->mods != mods) + if (bind->mods != mods || bind->mods == 0) continue; for (size_t i = 0; i < raw_count; i++) { @@ -1433,7 +1433,7 @@ search_input(struct seat *seat, struct terminal *term, tll_foreach(bindings->search, it) { const struct key_binding *bind = &it->item; - if (bind->mods != mods) + if (bind->mods != mods || bind->mods == 0) continue; tll_foreach(bind->k.key_codes, code) { diff --git a/url-mode.c b/url-mode.c index cca7bd22..83dbfa70 100644 --- a/url-mode.c +++ b/url-mode.c @@ -198,7 +198,7 @@ urls_input(struct seat *seat, struct terminal *term, /* Match untranslated symbols */ tll_foreach(bindings->url, it) { const struct key_binding *bind = &it->item; - if (bind->mods != mods) + if (bind->mods != mods || bind->mods == 0) continue; for (size_t i = 0; i < raw_count; i++) { @@ -212,7 +212,7 @@ urls_input(struct seat *seat, struct terminal *term, /* Match raw key code */ tll_foreach(bindings->url, it) { const struct key_binding *bind = &it->item; - if (bind->mods != mods) + if (bind->mods != mods || bind->mods == 0) continue; /* Match raw key code */