summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/xcb/qxcbeventqueue.h
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2019-01-28 19:30:32 +0000
committerThe Qt Project <gerrit-noreply@qt-project.org>2019-01-28 19:30:32 +0000
commite3621dd6bd32a64e602ae87711c24d6aae2989b5 (patch)
treec4539c9aa6b1a4b9a4e88ef5caef4bd3e29c7b41 /src/plugins/platforms/xcb/qxcbeventqueue.h
parent71cd5a6f3643a5369b883d0e36478693de6db024 (diff)
parent980567b3a32b2e2f00c86f2d627cd82b5230dd0f (diff)
Merge "Merge remote-tracking branch 'origin/5.12' into dev" into refs/staging/dev
Diffstat (limited to 'src/plugins/platforms/xcb/qxcbeventqueue.h')
-rw-r--r--src/plugins/platforms/xcb/qxcbeventqueue.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/plugins/platforms/xcb/qxcbeventqueue.h b/src/plugins/platforms/xcb/qxcbeventqueue.h
index 235f2824be..11d0b8e963 100644
--- a/src/plugins/platforms/xcb/qxcbeventqueue.h
+++ b/src/plugins/platforms/xcb/qxcbeventqueue.h
@@ -43,6 +43,8 @@
#include <QtCore/QHash>
#include <QtCore/QEventLoop>
#include <QtCore/QVector>
+#include <QtCore/QMutex>
+#include <QtCore/QWaitCondition>
#include <xcb/xcb.h>
@@ -104,6 +106,8 @@ public:
bool peekEventQueue(PeekerCallback peeker, void *peekerData = nullptr,
PeekOptions option = PeekDefault, qint32 peekerId = -1);
+ void waitForNewEvents(unsigned long time = ULONG_MAX);
+
private:
QXcbEventNode *qXcbEventNodeFactory(xcb_generic_event_t *event);
void dequeueNode();
@@ -131,6 +135,9 @@ private:
// debug stats
quint64 m_nodesOnHeap = 0;
+
+ QMutex m_newEventsMutex;
+ QWaitCondition m_newEventsCondition;
};
template<typename Peeker>