From d2d3e46e142bf74024129bf05ac5f4bf1947fe89 Mon Sep 17 00:00:00 2001 From: Lain Date: Thu, 3 Aug 2023 16:09:25 -0700 Subject: [PATCH] Revert "UI: Only defer property updates for input and transition sources" This reverts commit 58fb63030cf2ee858ccf72d242cfabf3394f16f1. This is not the ideal fix for the fact that scripts can use a deferred update flag because it makes it so that filters in general cannot use flags. We need to disable this via other means. --- UI/properties-view.cpp | 22 ++++------------------ docs/sphinx/reference-properties.rst | 4 +--- 2 files changed, 5 insertions(+), 21 deletions(-) diff --git a/UI/properties-view.cpp b/UI/properties-view.cpp index 66efdff06..861b3bab6 100644 --- a/UI/properties-view.cpp +++ b/UI/properties-view.cpp @@ -90,33 +90,19 @@ Q_DECLARE_METATYPE(media_frames_per_second); void OBSPropertiesView::ReloadProperties() { - deferUpdate = false; if (weakObj || rawObj) { OBSObject strongObj = GetObject(); void *obj = strongObj ? strongObj.Get() : rawObj; - if (obj) { + if (obj) properties.reset(reloadCallback(obj)); - - if (obs_obj_get_type(obj) == OBS_OBJ_TYPE_SOURCE) { - enum obs_source_type type = obs_source_get_type( - (obs_source_t *)obj); - if (type == OBS_SOURCE_TYPE_INPUT || - type == OBS_SOURCE_TYPE_TRANSITION) { - uint32_t flags = - obs_properties_get_flags( - properties.get()); - deferUpdate = - (flags & - OBS_PROPERTIES_DEFER_UPDATE) != - 0; - } - } - } } else { properties.reset(reloadCallback((void *)type.c_str())); obs_properties_apply_settings(properties.get(), settings); } + uint32_t flags = obs_properties_get_flags(properties.get()); + deferUpdate = (flags & OBS_PROPERTIES_DEFER_UPDATE) != 0; + RefreshProperties(); } diff --git a/docs/sphinx/reference-properties.rst b/docs/sphinx/reference-properties.rst index 6877c0a1a..e0fc69f8b 100644 --- a/docs/sphinx/reference-properties.rst +++ b/docs/sphinx/reference-properties.rst @@ -51,9 +51,7 @@ General Functions - OBS_PROPERTIES_DEFER_UPDATE - A hint that tells the front-end to defers updating the settings until the user has finished editing all properties rather than - immediately updating any settings. Currently only - works for properties of input and transition sources, - this flag is a no-op for other properties at this time. + immediately updating any settings ---------------------