From a81645400f9ba40b272163ef6f751ba3428b85a1 Mon Sep 17 00:00:00 2001
From: Zach Hilman <zachhilman@gmail.com>
Date: Fri, 9 Nov 2018 20:38:11 -0500
Subject: [PATCH] qt/main: Register Qt Software Keyboard frontend with AM

Allows using Qt provider over default.
---
 src/core/frontend/applets/software_keyboard.cpp | 1 +
 src/yuzu/applets/software_keyboard.cpp          | 1 +
 src/yuzu/main.cpp                               | 4 ++++
 3 files changed, 6 insertions(+)

diff --git a/src/core/frontend/applets/software_keyboard.cpp b/src/core/frontend/applets/software_keyboard.cpp
index 8cb888a629..c1bacefef3 100644
--- a/src/core/frontend/applets/software_keyboard.cpp
+++ b/src/core/frontend/applets/software_keyboard.cpp
@@ -3,6 +3,7 @@
 // Refer to the license.txt file included.
 
 #include "common/logging/backend.h"
+#include "common/string_util.h"
 #include "core/frontend/applets/software_keyboard.h"
 
 namespace Frontend {
diff --git a/src/yuzu/applets/software_keyboard.cpp b/src/yuzu/applets/software_keyboard.cpp
index 9e1c59626b..bd8bd0dd01 100644
--- a/src/yuzu/applets/software_keyboard.cpp
+++ b/src/yuzu/applets/software_keyboard.cpp
@@ -9,6 +9,7 @@
 #include <QLineEdit>
 #include <QVBoxLayout>
 #include "common/logging/backend.h"
+#include "common/string_util.h"
 #include "yuzu/applets/software_keyboard.h"
 
 QtSoftwareKeyboardValidator::QtSoftwareKeyboardValidator(
diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp
index 999086e7f2..7b2a01169d 100644
--- a/src/yuzu/main.cpp
+++ b/src/yuzu/main.cpp
@@ -8,9 +8,11 @@
 #include <thread>
 
 // VFS includes must be before glad as they will conflict with Windows file api, which uses defines.
+#include "applets/software_keyboard.h"
 #include "core/file_sys/vfs.h"
 #include "core/file_sys/vfs_real.h"
 #include "core/hle/service/acc/profile_manager.h"
+#include "core/hle/service/am/applets/applets.h"
 
 // These are wrappers to avoid the calls to CreateDirectory and CreateFile because of the Windows
 // defines.
@@ -559,6 +561,8 @@ bool GMainWindow::LoadROM(const QString& filename) {
 
     system.SetGPUDebugContext(debug_context);
 
+    Service::AM::Applets::RegisterSoftwareKeyboard(std::make_shared<QtSoftwareKeyboard>(*this));
+
     const Core::System::ResultStatus result{system.Load(*render_window, filename.toStdString())};
 
     const auto drd_callout =
-- 
GitLab