diff options
Diffstat (limited to 'qxt-mini/x11-keymap.hpp')
-rw-r--r-- | qxt-mini/x11-keymap.hpp | 28 |
1 files changed, 23 insertions, 5 deletions
diff --git a/qxt-mini/x11-keymap.hpp b/qxt-mini/x11-keymap.hpp index b35097bc..2c737c77 100644 --- a/qxt-mini/x11-keymap.hpp +++ b/qxt-mini/x11-keymap.hpp @@ -1,15 +1,33 @@ #pragma once -#ifndef BUILD_QXT_MINI -# error "internal header" -#endif +#if !defined __APPLE__ && !defined _WIN32 -#ifndef __APPLE__ +#undef QXT_X11_INCLUDED +#define QXT_X11_INCLUDED #include <Qt> #include <QDebug> +#include <QHash> +#include <QPair> + +#include <vector> +#include <tuple> + +#include <xcb/xcb.h> #include <X11/Xlib.h> +#include <X11/Xutil.h> + +QXT_GUI_EXPORT +std::vector<quint32> qt_key_to_x11(Display* disp, Qt::Key k, Qt::KeyboardModifiers m); + +QXT_GUI_EXPORT +std::tuple<Qt::Key, Qt::KeyboardModifiers> x11_key_to_qt(Display* disp, quint32 keycode, quint32 mods); + +QXT_GUI_EXPORT +QPair<KeySym, KeySym> keycode_to_keysym(Display* disp, quint32 keycode, quint32 keystate, + xcb_key_press_event_t const* kev); -unsigned qt_key_to_x11(Display* disp, Qt::Key k); +QXT_GUI_EXPORT +quint32 qt_mods_to_x11(Qt::KeyboardModifiers modifiers); #endif |