From 189cbe9f098816231673e9ebe1ac5fa5872f33e7 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Wed, 20 Jul 2022 23:17:26 +0200 Subject: added shadowing keybinds --- src/managers/KeybindManager.hpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/managers/KeybindManager.hpp') diff --git a/src/managers/KeybindManager.hpp b/src/managers/KeybindManager.hpp index fc3b06f8..62568fc0 100644 --- a/src/managers/KeybindManager.hpp +++ b/src/managers/KeybindManager.hpp @@ -15,6 +15,9 @@ struct SKeybind { bool locked = false; std::string submap = ""; bool release = false; + + // DO NOT INITIALIZE + bool shadowed = false; }; class CKeybindManager { @@ -32,10 +35,16 @@ public: private: std::list m_lKeybinds; + std::deque m_dPressedKeysyms; + std::deque m_dPressedKeycodes; inline static std::string m_szCurrentSelectedSubmap = ""; - bool handleKeybinds(const uint32_t&, const xkb_keysym_t&, const int&, bool); + xkb_keysym_t m_kHeldBack = 0; + + bool handleKeybinds(const uint32_t&, const xkb_keysym_t&, const int&, bool, uint32_t); + + void shadowKeybinds(); bool handleInternalKeybinds(xkb_keysym_t); bool handleVT(xkb_keysym_t); -- cgit v1.2.3