UI: Force UpdateEditMenu on UI Thread

This commit is contained in:
Exeldro
2024-08-21 09:54:28 +02:00
committed by Ryan Foster
parent 14f44dfe06
commit 200abd3af0
2 changed files with 9 additions and 5 deletions

View File

@@ -1993,7 +1993,7 @@ void OBSBasic::InitOBSCallbacks()
{
ProfileScope("OBSBasic::InitOBSCallbacks");
signalHandlers.reserve(signalHandlers.size() + 7);
signalHandlers.reserve(signalHandlers.size() + 9);
signalHandlers.emplace_back(obs_get_signal_handler(), "source_create",
OBSBasic::SourceCreated, this);
signalHandlers.emplace_back(obs_get_signal_handler(), "source_remove",
@@ -2014,13 +2014,17 @@ void OBSBasic::InitOBSCallbacks()
signalHandlers.emplace_back(
obs_get_signal_handler(), "source_filter_add",
[](void *data, calldata_t *) {
static_cast<OBSBasic *>(data)->UpdateEditMenu();
QMetaObject::invokeMethod(static_cast<OBSBasic *>(data),
"UpdateEditMenu",
Qt::QueuedConnection);
},
this);
signalHandlers.emplace_back(
obs_get_signal_handler(), "source_filter_remove",
[](void *data, calldata_t *) {
static_cast<OBSBasic *>(data)->UpdateEditMenu();
QMetaObject::invokeMethod(static_cast<OBSBasic *>(data),
"UpdateEditMenu",
Qt::QueuedConnection);
},
this);
}