From 632626b1921e99aaea6d02a9f7ebbb6354161365 Mon Sep 17 00:00:00 2001 From: Ilya Fedin Date: Wed, 16 Aug 2023 14:52:43 +0400 Subject: [PATCH] Use QEvent::registerEventType for custom event types --- ui/main_queue_processor.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/ui/main_queue_processor.cpp b/ui/main_queue_processor.cpp index 3915fb5..76e36a9 100644 --- a/ui/main_queue_processor.cpp +++ b/ui/main_queue_processor.cpp @@ -18,8 +18,10 @@ namespace Ui { namespace { -constexpr auto kProcessorEvent = QEvent::Type(QEvent::User + 1); -static_assert(kProcessorEvent < QEvent::MaxUser); +auto ProcessorEventType() { + static const auto Result = QEvent::Type(QEvent::registerEventType()); + return Result; +} QMutex ProcessorMutex; MainQueueProcessor *ProcessorInstance/* = nullptr*/; @@ -47,7 +49,7 @@ void PushToMainQueueGeneric(void (*callable)(void*), void *argument) { MainQueueProcessState.store(ProcessState::Waiting); } - auto event = std::make_unique(kProcessorEvent); + auto event = std::make_unique(ProcessorEventType()); QMutexLocker lock(&ProcessorMutex); if (ProcessorInstance) { @@ -94,7 +96,7 @@ MainQueueProcessor::MainQueueProcessor() { bool MainQueueProcessor::event(QEvent *event) { if constexpr (Platform::UseMainQueueGeneric()) { - if (event->type() == kProcessorEvent) { + if (event->type() == ProcessorEventType()) { DrainMainQueueGeneric(); return true; }