![]() |
Qt 6.x
The Qt SDK
|
#include <qxcbkeyboard.h>
Protected Types | |
typedef QMap< xcb_keysym_t, int > | KeysymModifierMap |
Protected Member Functions | |
void | handleKeyEvent (xcb_window_t sourceWindow, QEvent::Type type, xcb_keycode_t code, quint16 state, xcb_timestamp_t time, bool fromSendEvent) |
void | resolveMaskConflicts () |
struct xkb_keymap * | keymapFromCore (const KeysymModifierMap &keysymMods) |
void | updateModifiers (const KeysymModifierMap &keysymMods) |
KeysymModifierMap | keysymsToModifiers () |
void | updateVModMapping () |
void | updateVModToRModMapping () |
Definition at line 21 of file qxcbkeyboard.h.
|
protected |
Definition at line 55 of file qxcbkeyboard.h.
QXcbKeyboard::QXcbKeyboard | ( | QXcbConnection * | connection | ) |
Definition at line 491 of file qxcbkeyboard.cpp.
References QXcbObject::connection(), QXcbBasicConnection::hasXKB(), qCWarning, selectEvents(), updateKeymap(), and QXcbObject::xcb_connection().
QXcbKeyboard::~QXcbKeyboard | ( | ) |
Definition at line 509 of file qxcbkeyboard.cpp.
|
inline |
Definition at line 44 of file qxcbkeyboard.h.
Referenced by QXcbConnection::handleXcbEvent().
|
protected |
Definition at line 826 of file qxcbkeyboard.cpp.
References QXcbObject::connection(), QXcbConnection::eventQueue(), QXcbConnection::focusWindow(), fromSendEvent(), QWindowSystemInterface::handleContextMenuEvent(), QWindowSystemInterface::handleExtendedKeyEvent(), QPlatformIntegration::inputContext(), QXkbCommon::isKeypad(), Qt::Key_Menu, Qt::KeypadModifier, QEvent::KeyPress, QXkbCommon::keysymToQtKey(), lockedGroup(), QXkbCommon::lookupString(), QXcbEventQueue::peek(), QXcbEventQueue::PeekRetainMatch, QGuiApplicationPrivate::platformIntegration(), QXcbConnection::platformWindowFromId(), pos, QString::size(), state, text, time, translateModifiers(), QXcbWindow::updateNetWmUserTime(), window(), QPlatformWindow::window(), and xkbModMask().
Referenced by handleKeyPressEvent(), and handleKeyReleaseEvent().
void QXcbKeyboard::handleKeyPressEvent | ( | const xcb_key_press_event_t * | event | ) |
Definition at line 913 of file qxcbkeyboard.cpp.
References e, fromSendEvent(), handleKeyEvent(), and QEvent::KeyPress.
void QXcbKeyboard::handleKeyReleaseEvent | ( | const xcb_key_release_event_t * | event | ) |
Definition at line 918 of file qxcbkeyboard.cpp.
References e, fromSendEvent(), handleKeyEvent(), and QEvent::KeyRelease.
void QXcbKeyboard::handleStateChanges | ( | xkb_state_component | changedComponents | ) |
Definition at line 446 of file qxcbkeyboard.cpp.
References qCDebug.
Referenced by updateXKBState(), updateXKBStateFromCore(), and updateXKBStateFromXI().
void QXcbKeyboard::initialize | ( | ) |
Definition at line 515 of file qxcbkeyboard.cpp.
References QPlatformIntegration::inputContext(), QGuiApplicationPrivate::platformIntegration(), and QXkbCommon::setXkbContext().
Referenced by QXcbIntegration::initialize().
|
protected |
Definition at line 81 of file qxcbkeyboard.cpp.
References QXcbObject::connection(), QByteArray::constData(), QList< T >::constData(), getUnshiftedXKey(), i, QByteArray::isEmpty(), QList< T >::isEmpty(), QByteArray::number(), Q_XCB_REPLY, QList< T >::resize(), QXcbBasicConnection::setup(), QByteArray::size(), symbolsGroupString(), QMap< Key, T >::value(), and QXcbObject::xcb_connection().
Referenced by updateKeymap().
|
protected |
Definition at line 715 of file qxcbkeyboard.cpp.
References i, keycodes_contains(), map, Q_XCB_REPLY, qWarning, and QXcbObject::xcb_connection().
Referenced by updateKeymap().
Definition at line 380 of file qxcbkeyboard.cpp.
References QXkbCommon::possibleKeys().
Referenced by QXcbIntegration::possibleKeys().
|
protected |
Definition at line 802 of file qxcbkeyboard.cpp.
Referenced by updateModifiers().
void QXcbKeyboard::selectEvents | ( | ) |
Definition at line 521 of file qxcbkeyboard.cpp.
References error, qCWarning, select(), and QXcbObject::xcb_connection().
Referenced by QXcbKeyboard().
QT_BEGIN_NAMESPACE Qt::KeyboardModifiers QXcbKeyboard::translateModifiers | ( | int | s | ) | const |
Definition at line 20 of file qxcbkeyboard.cpp.
References Qt::AltModifier, Qt::ControlModifier, Qt::GroupSwitchModifier, Qt::MetaModifier, Qt::NoModifier, ret, and Qt::ShiftModifier.
Referenced by QXcbWindow::handleButtonPressEvent(), QXcbWindow::handleButtonReleaseEvent(), handleKeyEvent(), QXcbWindow::handleMotionNotifyEvent(), QXcbWindow::handleXIMouseEvent(), and QXcbConnection::queryKeyboardModifiers().
void QXcbKeyboard::updateKeymap | ( | ) |
Definition at line 332 of file qxcbkeyboard.cpp.
References QXcbObject::connection(), keymapFromCore(), keysymsToModifiers(), logLevel, qCWarning, updateModifiers(), updateXKBMods(), QXkbCommon::verifyHasLatinLayout(), and QXcbObject::xcb_connection().
Referenced by QXcbKeyboard(), and updateKeymap().
void QXcbKeyboard::updateKeymap | ( | xcb_mapping_notify_event_t * | event | ) |
Definition at line 323 of file qxcbkeyboard.cpp.
References QXcbObject::connection(), and updateKeymap().
Referenced by QXcbConnection::handleXcbEvent().
|
protected |
Definition at line 683 of file qxcbkeyboard.cpp.
References applyModifier(), QXcbObject::connection(), resolveMaskConflicts(), updateVModMapping(), updateVModToRModMapping(), and QMap< Key, T >::value().
Referenced by updateKeymap().
|
protected |
Definition at line 555 of file qxcbkeyboard.cpp.
References QXcbBasicConnection::atomName(), QXcbObject::connection(), QByteArray::data(), Q_XCB_REPLY, qstrcmp(), qWarning, and QXcbObject::xcb_connection().
Referenced by updateModifiers().
|
protected |
Definition at line 616 of file qxcbkeyboard.cpp.
References map, Q_XCB_REPLY, qWarning, and QXcbObject::xcb_connection().
Referenced by updateModifiers().
void QXcbKeyboard::updateXKBMods | ( | ) |
Definition at line 479 of file qxcbkeyboard.cpp.
References XKB_MOD_NAME_CTRL, and XKB_MOD_NAME_SHIFT.
Referenced by updateKeymap().
void QXcbKeyboard::updateXKBState | ( | xcb_xkb_state_notify_event_t * | state | ) |
Definition at line 385 of file qxcbkeyboard.cpp.
References QXcbObject::connection(), handleStateChanges(), and state.
Referenced by QXcbConnection::handleXcbEvent().
Definition at line 406 of file qxcbkeyboard.cpp.
References handleStateChanges(), lockedGroup(), state, and xkbModMask().
Referenced by QXcbConnection::handleXcbEvent().
Definition at line 428 of file qxcbkeyboard.cpp.
References handleStateChanges().
Referenced by QXcbWindow::handleXIEnterLeave(), and QXcbWindow::handleXIMouseEvent().
xkb_mod_mask_t QXcbKeyboard::xkbModMask | ( | quint16 | state | ) |
Definition at line 455 of file qxcbkeyboard.cpp.
References state.
Referenced by handleKeyEvent(), and updateXKBStateFromCore().