diff --git a/UI/data/locale/en-US.ini b/UI/data/locale/en-US.ini index 0b66d438a..24feab0dc 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 6a73ebdee..01c2ae3c0 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;