diff --git a/UI/data/locale/en-US.ini b/UI/data/locale/en-US.ini
index ab3592148d6805bb7a5b4964bd374720179cc1c9..f7dc4d746300cedde26d10e82d3e689d74f38251 100644
--- a/UI/data/locale/en-US.ini
+++ b/UI/data/locale/en-US.ini
@@ -489,6 +489,7 @@ Basic.MainMenu.View.Toolbars="&Toolbars"
Basic.MainMenu.View.Toolbars.Listboxes="&Listboxes"
Basic.MainMenu.View.SceneTransitions="S&cene Transitions"
Basic.MainMenu.View.StatusBar="&Status Bar"
+Basic.MainMenu.View.Fullscreen.Interface="Fullscreen Interface"
# basic mode profile/scene collection menus
Basic.MainMenu.SceneCollection="&Scene Collection"
diff --git a/UI/forms/OBSBasic.ui b/UI/forms/OBSBasic.ui
index dd61bde05ac0cecfbd40fc7372c18406ec6b4713..53998458a59c15da174d99af65a89b22486b8433 100644
--- a/UI/forms/OBSBasic.ui
+++ b/UI/forms/OBSBasic.ui
@@ -978,6 +978,16 @@
+
+
+
+ F11
+
+
+ Basic.MainMenu.View.Fullscreen.Interface
+
+
+
diff --git a/UI/window-basic-main.cpp b/UI/window-basic-main.cpp
index d1da5201081ca2cb11791dea4e2c6f85dec1c043..e328d4a12d019cf72018ca9a0e739be82672fbbe 100644
--- a/UI/window-basic-main.cpp
+++ b/UI/window-basic-main.cpp
@@ -1431,6 +1431,9 @@ void OBSBasic::OBSInit()
OpenSavedProjectors();
+ if (windowState().testFlag(Qt::WindowFullScreen))
+ fullscreenInterface = true;
+
bool has_last_version = config_has_user_value(App()->GlobalConfig(),
"General", "LastVersion");
bool first_run = config_get_bool(App()->GlobalConfig(), "General",
@@ -5177,6 +5180,16 @@ void OBSBasic::RemoveSavedProjectors(int monitor)
projectorArray.at((size_t)monitor) = "";
}
+void OBSBasic::on_actionFullscreenInterface_triggered()
+{
+ if (!fullscreenInterface)
+ showFullScreen();
+ else
+ showNormal();
+
+ fullscreenInterface = !fullscreenInterface;
+}
+
void OBSBasic::UpdateTitleBar()
{
stringstream name;
diff --git a/UI/window-basic-main.hpp b/UI/window-basic-main.hpp
index 9a4de4030324e8c2944fbceda31319faa7ae3902..dc91a64b2316b4748e237567952465e4203dd6a8 100644
--- a/UI/window-basic-main.hpp
+++ b/UI/window-basic-main.hpp
@@ -119,6 +119,7 @@ private:
long disableSaving = 1;
bool projectChanged = false;
bool previewEnabled = true;
+ bool fullscreenInterface = false;
const char *copyString;
const char *copyFiltersString;
@@ -529,6 +530,8 @@ protected:
virtual void changeEvent(QEvent *event) override;
private slots:
+ void on_actionFullscreenInterface_triggered();
+
void on_actionShow_Recordings_triggered();
void on_actionRemux_triggered();
void on_action_Settings_triggered();