#pragma once #include "IKeyboard.hpp" class CVirtualKeyboardV1Resource; class CVirtualKeyboard : public IKeyboard { public: static SP create(SP keeb); virtual bool isVirtual(); virtual wlr_keyboard* wlr(); wl_client* getClient(); private: CVirtualKeyboard(SP keeb); WP keyboard; void disconnectCallbacks(); DYNLISTENER(destroy); DYNLISTENER(key); DYNLISTENER(modifiers); DYNLISTENER(keymap); DYNLISTENER(repeatInfo); };