31 Q_DECLARE_PRIVATE(QEventDispatcherGlib)
34 explicit QEventDispatcherGlib(QObject *parent =
nullptr);
35 explicit QEventDispatcherGlib(GMainContext *context, QObject *parent =
nullptr);
36 ~QEventDispatcherGlib();
38 bool processEvents(QEventLoop::ProcessEventsFlags flags) override;
40 void registerSocketNotifier(QSocketNotifier *socketNotifier) final;
41 void unregisterSocketNotifier(QSocketNotifier *socketNotifier) final;
43 void registerTimer(Qt::TimerId timerId, Duration interval, Qt::TimerType timerType,
44 QObject *object) override final;
45 bool unregisterTimer(Qt::TimerId timerId) override final;
46 bool unregisterTimers(QObject *object) override final;
47 QList<TimerInfoV2> timersForObject(QObject *object)
const override final;
48 Duration remainingTime(Qt::TimerId timerId)
const override final;
51 void interrupt() final;
53 static bool versionSupported();
56 QEventDispatcherGlib(QEventDispatcherGlibPrivate &dd, QObject *parent);
68 QEventDispatcherGlibPrivate(GMainContext *context =
nullptr);
69 ~QEventDispatcherGlibPrivate() override;
71 GMainContext *mainContext;
72 GPostEventSource *postEventSource;
73 GSocketNotifierSource *socketNotifierSource;
74 GTimerSource *timerSource;
75 GIdleTimerSource *idleTimerSource;
76 bool wakeUpCalled =
true;
78 void runTimersOnceWithNormalPriority();
QEventDispatcherGlibPrivate * d