diff --git a/obs/data/locale/en-US.ini b/obs/data/locale/en-US.ini index 228bcc54b..ed4b842b7 100644 --- a/obs/data/locale/en-US.ini +++ b/obs/data/locale/en-US.ini @@ -207,6 +207,7 @@ Basic.MainMenu.Help.Logs="&Log Files" Basic.MainMenu.Help.Logs.ShowLogs="&Show Log Files" Basic.MainMenu.Help.Logs.UploadCurrentLog="Upload &Current Log File" Basic.MainMenu.Help.Logs.UploadLastLog="Upload &Last Log File" +Basic.MainMenu.Help.Logs.ViewCurrentLog="&View Current Log" Basic.MainMenu.Help.CheckForUpdates="Check For Updates" # basic mode settings dialog diff --git a/obs/forms/OBSBasic.ui b/obs/forms/OBSBasic.ui index 6ca358686..166768491 100644 --- a/obs/forms/OBSBasic.ui +++ b/obs/forms/OBSBasic.ui @@ -581,6 +581,7 @@ + @@ -806,6 +807,11 @@ Basic.MainMenu.Help.Logs.UploadCurrentLog + + + Basic.MainMenu.Help.Logs.ViewCurrentLog + + false diff --git a/obs/window-basic-main.cpp b/obs/window-basic-main.cpp index 596dd2b36..6526e4fa6 100644 --- a/obs/window-basic-main.cpp +++ b/obs/window-basic-main.cpp @@ -2111,6 +2111,22 @@ void OBSBasic::on_actionUploadLastLog_triggered() UploadLog(App()->GetLastLog()); } +void OBSBasic::on_actionViewCurrentLog_triggered() +{ + char logDir[512]; + if (os_get_config_path(logDir, sizeof(logDir), "obs-studio/logs") <= 0) + return; + + const char* log = App()->GetCurrentLog(); + + string path = (char*)logDir; + path += "/"; + path += log; + + QUrl url = QUrl::fromLocalFile(QT_UTF8(path.c_str())); + QDesktopServices::openUrl(url); +} + void OBSBasic::on_actionCheckForUpdates_triggered() { CheckForUpdates(); diff --git a/obs/window-basic-main.hpp b/obs/window-basic-main.hpp index b74c4e449..66969334c 100644 --- a/obs/window-basic-main.hpp +++ b/obs/window-basic-main.hpp @@ -238,6 +238,7 @@ private slots: void on_actionShowLogs_triggered(); void on_actionUploadCurrentLog_triggered(); void on_actionUploadLastLog_triggered(); + void on_actionViewCurrentLog_triggered(); void on_actionCheckForUpdates_triggered(); void on_actionEditTransform_triggered();