From 67fa51ea2f54355bcf49bed36658151e6153bb44 Mon Sep 17 00:00:00 2001
From: Zach Hilman <zachhilman@gmail.com>
Date: Thu, 23 Aug 2018 14:12:56 -0400
Subject: [PATCH] qt: Add filename and title id to window title while running

---
 src/core/core.h   |  7 +++++++
 src/yuzu/main.cpp | 11 +++++++++++
 2 files changed, 18 insertions(+)

diff --git a/src/core/core.h b/src/core/core.h
index 790e23caeb..7188dabdce 100644
--- a/src/core/core.h
+++ b/src/core/core.h
@@ -187,6 +187,13 @@ public:
         return current_process;
     }
 
+    /// Gets the name of the current game
+    Loader::ResultStatus GetGameName(std::string& out) const {
+        if (app_loader == nullptr)
+            return Loader::ResultStatus::ErrorNotInitialized;
+        return app_loader->ReadTitle(out);
+    }
+
     PerfStats perf_stats;
     FrameLimiter frame_limiter;
 
diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp
index c62360bd40..b3a7bba0cf 100644
--- a/src/yuzu/main.cpp
+++ b/src/yuzu/main.cpp
@@ -545,6 +545,15 @@ void GMainWindow::BootGame(const QString& filename) {
     }
     status_bar_update_timer.start(2000);
 
+    std::string title_name;
+    const auto res = Core::System::GetInstance().GetGameName(title_name);
+    if (res != Loader::ResultStatus::Success)
+        title_name = FileUtil::GetFilename(filename.toStdString());
+
+    setWindowTitle(QString("yuzu %1| %4 | %2-%3")
+                       .arg(Common::g_build_name, Common::g_scm_branch, Common::g_scm_desc,
+                            QString::fromStdString(title_name)));
+
     render_window->show();
     render_window->setFocus();
 
@@ -576,6 +585,8 @@ void GMainWindow::ShutdownGame() {
     render_window->hide();
     game_list->show();
     game_list->setFilterFocus();
+    setWindowTitle(QString("yuzu %1| %2-%3")
+                       .arg(Common::g_build_name, Common::g_scm_branch, Common::g_scm_desc));
 
     // Disable status bar updates
     status_bar_update_timer.stop();