/* # Copyright (c) 2009 - OpenSLX Project, Computer Center University of Freiburg # # This program is free software distributed under the GPL version 2. # See http://openslx.org/COPYING # # If you have any feedback please consult http://openslx.org/feedback and # send your suggestions, praise, or complaints to feedback@openslx.org # # General information about OpenSLX can be found at http://openslx.org/ # -------------------------------------------------------------------------- # x11FakeKeyboardHandler.h: # - Handle keyboard events on X11 - interface # -------------------------------------------------------------------------- */ #ifndef X11FAKEKEYBOARDHANDLER_H_ #define X11FAKEKEYBOARDHANDLER_H_ #include "inputEventHandler.h" /** * Send keyboard events via the XTest extension. * This is unbelievably brittle in the face of non-system-standard keyboard * mappings. Every Linux distribution seems to set up XTest handling in * a different way. The code goes out of its way to find a usable mapping * and use it. */ class X11FakeKeyboardHandler : public InputEventHandler< input_policy::Match, input_policy::Match, input_policy::Require, input_policy::Unprivileged> { public: void doHandle(InputEvent const&, InputEventContext const* = 0); void initialize(); }; #endif /* X11FAKEKEYBOARDHANDLER_H_ */