From 20a779299a62808b4e4bbc7bfde6e9e4487a857d Mon Sep 17 00:00:00 2001
From: unknown <27208977+FreddyFunk@users.noreply.github.com>
Date: Mon, 8 Jun 2020 23:58:04 +0200
Subject: [PATCH 1/2] Add game versio to title bar

---
 src/yuzu/main.cpp | 27 +++++++++++++++------------
 src/yuzu/main.h   |  3 ++-
 2 files changed, 17 insertions(+), 13 deletions(-)

diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp
index 270cccc772..f552b94015 100644
--- a/src/yuzu/main.cpp
+++ b/src/yuzu/main.cpp
@@ -1037,17 +1037,19 @@ void GMainWindow::BootGame(const QString& filename) {
     const u64 title_id = Core::System::GetInstance().CurrentProcess()->GetTitleID();
 
     std::string title_name;
+    std::string title_version;
     const auto res = Core::System::GetInstance().GetGameName(title_name);
-    if (res != Loader::ResultStatus::Success) {
-        const auto metadata = FileSys::PatchManager(title_id).GetControlMetadata();
-        if (metadata.first != nullptr)
-            title_name = metadata.first->GetApplicationName();
 
-        if (title_name.empty())
-            title_name = FileUtil::GetFilename(filename.toStdString());
+    const auto metadata = FileSys::PatchManager(title_id).GetControlMetadata();
+    if (metadata.first != nullptr) {
+        title_version = metadata.first->GetVersionString();
+        title_name = metadata.first->GetApplicationName();
     }
-    LOG_INFO(Frontend, "Booting game: {:016X} | {}", title_id, title_name);
-    UpdateWindowTitle(QString::fromStdString(title_name));
+    if (res != Loader::ResultStatus::Success || title_name.empty()) {
+        title_name = FileUtil::GetFilename(filename.toStdString());
+    }
+    LOG_INFO(Frontend, "Booting game: {:016X} | {} | {}", title_id, title_name, title_version);
+    UpdateWindowTitle(title_name, title_version);
 
     loading_screen->Prepare(Core::System::GetInstance().GetAppLoader());
     loading_screen->show();
@@ -1995,7 +1997,8 @@ void GMainWindow::OnCaptureScreenshot() {
     OnStartGame();
 }
 
-void GMainWindow::UpdateWindowTitle(const QString& title_name) {
+void GMainWindow::UpdateWindowTitle(const std::string& title_name,
+                                    const std::string& title_version) {
     const auto full_name = std::string(Common::g_build_fullname);
     const auto branch_name = std::string(Common::g_scm_branch);
     const auto description = std::string(Common::g_scm_desc);
@@ -2004,7 +2007,7 @@ void GMainWindow::UpdateWindowTitle(const QString& title_name) {
     const auto date =
         QDateTime::currentDateTime().toString(QStringLiteral("yyyy-MM-dd")).toStdString();
 
-    if (title_name.isEmpty()) {
+    if (title_name.empty()) {
         const auto fmt = std::string(Common::g_title_bar_format_idle);
         setWindowTitle(QString::fromStdString(fmt::format(fmt.empty() ? "yuzu {0}| {1}-{2}" : fmt,
                                                           full_name, branch_name, description,
@@ -2012,8 +2015,8 @@ void GMainWindow::UpdateWindowTitle(const QString& title_name) {
     } else {
         const auto fmt = std::string(Common::g_title_bar_format_running);
         setWindowTitle(QString::fromStdString(
-            fmt::format(fmt.empty() ? "yuzu {0}| {3} | {1}-{2}" : fmt, full_name, branch_name,
-                        description, title_name.toStdString(), date, build_id)));
+            fmt::format(fmt.empty() ? "yuzu {0}| {3} | {4} | {1}-{2}" : fmt, full_name, branch_name,
+                        description, title_name, title_version, date, build_id)));
     }
 }
 
diff --git a/src/yuzu/main.h b/src/yuzu/main.h
index 4f4c8ddbee..9ad61cab82 100644
--- a/src/yuzu/main.h
+++ b/src/yuzu/main.h
@@ -215,7 +215,8 @@ private slots:
 
 private:
     std::optional<u64> SelectRomFSDumpTarget(const FileSys::ContentProvider&, u64 program_id);
-    void UpdateWindowTitle(const QString& title_name = {});
+    void UpdateWindowTitle(const std::string& title_name = {},
+                           const std::string& title_version = {});
     void UpdateStatusBar();
     void HideMouseCursor();
     void ShowMouseCursor();

From 8cf6efe6776d8c931ede4e5e74b25b70e3619903 Mon Sep 17 00:00:00 2001
From: unknown <27208977+FreddyFunk@users.noreply.github.com>
Date: Mon, 22 Jun 2020 15:56:41 +0200
Subject: [PATCH 2/2] Reorder variables to comply with the Auzure build
 pipeline

---
 src/yuzu/main.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp
index f552b94015..42bbf8b356 100644
--- a/src/yuzu/main.cpp
+++ b/src/yuzu/main.cpp
@@ -2015,8 +2015,8 @@ void GMainWindow::UpdateWindowTitle(const std::string& title_name,
     } else {
         const auto fmt = std::string(Common::g_title_bar_format_running);
         setWindowTitle(QString::fromStdString(
-            fmt::format(fmt.empty() ? "yuzu {0}| {3} | {4} | {1}-{2}" : fmt, full_name, branch_name,
-                        description, title_name, title_version, date, build_id)));
+            fmt::format(fmt.empty() ? "yuzu {0}| {3} | {6} | {1}-{2}" : fmt, full_name, branch_name,
+                        description, title_name, date, build_id, title_version)));
     }
 }