summaryrefslogtreecommitdiff
path: root/src/managers/KeybindManager.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/managers/KeybindManager.hpp')
-rw-r--r--src/managers/KeybindManager.hpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/managers/KeybindManager.hpp b/src/managers/KeybindManager.hpp
index edd9ede2..561ee1ab 100644
--- a/src/managers/KeybindManager.hpp
+++ b/src/managers/KeybindManager.hpp
@@ -13,6 +13,7 @@ class CPluginSystem;
struct SKeybind {
std::string key = "";
uint32_t keycode = 0;
+ bool catchAll = false;
uint32_t modmask = 0;
std::string handler = "";
std::string arg = "";
@@ -44,6 +45,12 @@ struct SPressedKeyWithMods {
bool sent = false;
};
+struct SParsedKey {
+ std::string key = "";
+ uint32_t keycode = 0;
+ bool catchAll = false;
+};
+
class CKeybindManager {
public:
CKeybindManager();
@@ -57,7 +64,7 @@ class CKeybindManager {
void onSwitchOffEvent(const std::string&);
void addKeybind(SKeybind);
- void removeKeybind(uint32_t, const std::string&);
+ void removeKeybind(uint32_t, const SParsedKey&);
uint32_t stringToModMask(std::string);
uint32_t keycodeToModifier(xkb_keycode_t);
void clearKeybinds();