mirror of
https://github.com/hyprwm/Hyprland.git
synced 2025-09-21 18:58:24 +00:00
Implement pass binds (#2503)
* Implement pass binds Pass binds run the associated dispatcher but do not prevent windows from receiving the bind. * Fix pass binds not working properly with release binds * Rename `pass` to `nonConsuming`
This commit is contained in:
@@ -414,6 +414,9 @@ bool CKeybindManager::handleKeybinds(const uint32_t& modmask, const std::string&
|
||||
}
|
||||
|
||||
if (pressed && k.release) {
|
||||
if (k.nonConsuming)
|
||||
return false;
|
||||
|
||||
// suppress down event
|
||||
m_kHeldBack = keysym;
|
||||
return true;
|
||||
@@ -452,7 +455,8 @@ bool CKeybindManager::handleKeybinds(const uint32_t& modmask, const std::string&
|
||||
wl_event_source_timer_update(m_pActiveKeybindEventSource, PACTIVEKEEB->repeatDelay);
|
||||
}
|
||||
|
||||
found = true;
|
||||
if (!k.nonConsuming)
|
||||
found = true;
|
||||
}
|
||||
|
||||
return found;
|
||||
|
Reference in New Issue
Block a user