diff --git a/UI/data/locale/en-US.ini b/UI/data/locale/en-US.ini index 0b66d438afb860a08eff5013e7e06f7d676c3181..24feab0dc2fc69334e7965a0a5e73f8571538e6a 100644 --- a/UI/data/locale/en-US.ini +++ b/UI/data/locale/en-US.ini @@ -57,6 +57,7 @@ Reset="Reset" Hours="Hours" Minutes="Minutes" Seconds="Seconds" +Deprecated="Deprecated" # quick transitions QuickTransitions.SwapScenes="Swap Preview/Output Scenes After Transitioning" diff --git a/UI/window-basic-main.cpp b/UI/window-basic-main.cpp index 6a73ebdee8948dc74d41c1547274e2f0d8e6fce7..01c2ae3c06d0083a496ce52daa0f47c1471c818b 100644 --- a/UI/window-basic-main.cpp +++ b/UI/window-basic-main.cpp @@ -3185,9 +3185,11 @@ QMenu *OBSBasic::CreateAddSourcePopupMenu() { const char *type; bool foundValues = false; + bool foundDeprecated = false; size_t idx = 0; QMenu *popup = new QMenu(QTStr("Add"), this); + QMenu *deprecated = new QMenu(QTStr("Deprecated"), popup); auto getActionAfter = [] (QMenu *menu, const QString &name) { @@ -3220,15 +3222,26 @@ QMenu *OBSBasic::CreateAddSourcePopupMenu() if ((caps & OBS_SOURCE_DEPRECATED) == 0) { addSource(popup, type, name); - foundValues = true; + } else { + addSource(deprecated, type, name); + foundDeprecated = true; } + foundValues = true; } addSource(popup, "scene", Str("Basic.Scene")); + if (!foundDeprecated) { + delete deprecated; + deprecated = nullptr; + } + if (!foundValues) { delete popup; popup = nullptr; + + } else if (foundDeprecated) { + popup->addMenu(deprecated); } return popup;