fix event filter

This commit is contained in:
Guillaume Castagnino 2020-03-12 21:58:23 +01:00
parent ddf96521e4
commit bd50a87599
1 changed files with 6 additions and 9 deletions

View File

@ -18,16 +18,13 @@ XcbEventFilter::~XcbEventFilter()
bool XcbEventFilter::nativeEventFilter(const QByteArray &eventType, void *message, long *)
{
if (eventType == "xcb_generic_event_t") {
xcb_generic_event_t *event = static_cast<xcb_generic_event_t *>(message);
uint response_type = event->response_type & ~0x80;
qDebug() << "XCB Event";
/* We are only interested in XCB_XKB_STATE_NOTIFY */
if (response_type == XCB_XKB_STATE_NOTIFY)
{
xcb_xkb_state_notify_event_t *kbd_event = reinterpret_cast<xcb_xkb_state_notify_event_t *>(event);
qDebug() << "XCB Mapping Event - group: " << kbd_event->group;
xcb_xkb_state_notify_event_t *xkb_event = static_cast<xcb_xkb_state_notify_event_t *>(message);
//qDebug() << "XCB Event: " << xkb_event->any.response_type;
if (xkb_event->xkbType == XCB_XKB_STATE_NOTIFY) {
/* We get the event twice here. Not critical, but to investigate */
qDebug() << "XCB Mapping Event - group: " << xkb_event->group << " - eventType: " << xkb_event->eventType;
// TODO: update QML flag
}
}
return false;