applets: Port current applets to take frontend in constructor
As opposed to using Core::System::GetInstance()
This commit is contained in:
		| @@ -15,7 +15,9 @@ namespace Service::AM::Applets { | ||||
|  | ||||
| constexpr ResultCode ERR_USER_CANCELLED_SELECTION{ErrorModule::Account, 1}; | ||||
|  | ||||
| ProfileSelect::ProfileSelect() = default; | ||||
| ProfileSelect::ProfileSelect(const Core::Frontend::ProfileSelectApplet& frontend) | ||||
|     : frontend(frontend) {} | ||||
|  | ||||
| ProfileSelect::~ProfileSelect() = default; | ||||
|  | ||||
| void ProfileSelect::Initialize() { | ||||
| @@ -51,8 +53,6 @@ void ProfileSelect::Execute() { | ||||
|         return; | ||||
|     } | ||||
|  | ||||
|     const auto& frontend{Core::System::GetInstance().GetProfileSelector()}; | ||||
|  | ||||
|     frontend.SelectProfile([this](std::optional<Account::UUID> uuid) { SelectionComplete(uuid); }); | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -7,6 +7,7 @@ | ||||
| #include <vector> | ||||
|  | ||||
| #include "common/common_funcs.h" | ||||
| #include "core/frontend/applets/software_keyboard.h" | ||||
| #include "core/hle/service/acc/profile_manager.h" | ||||
| #include "core/hle/service/am/applets/applets.h" | ||||
|  | ||||
| @@ -28,7 +29,7 @@ static_assert(sizeof(UserSelectionOutput) == 0x18, "UserSelectionOutput has inco | ||||
|  | ||||
| class ProfileSelect final : public Applet { | ||||
| public: | ||||
|     ProfileSelect(); | ||||
|     ProfileSelect(const Core::Frontend::ProfileSelectApplet& frontend); | ||||
|     ~ProfileSelect() override; | ||||
|  | ||||
|     void Initialize() override; | ||||
| @@ -41,6 +42,8 @@ public: | ||||
|     void SelectionComplete(std::optional<Account::UUID> uuid); | ||||
|  | ||||
| private: | ||||
|     const Core::Frontend::ProfileSelectApplet& frontend; | ||||
|  | ||||
|     UserSelectionConfig config; | ||||
|     bool complete = false; | ||||
|     ResultCode status = RESULT_SUCCESS; | ||||
|   | ||||
| @@ -39,7 +39,8 @@ static Core::Frontend::SoftwareKeyboardParameters ConvertToFrontendParameters( | ||||
|     return params; | ||||
| } | ||||
|  | ||||
| SoftwareKeyboard::SoftwareKeyboard() = default; | ||||
| SoftwareKeyboard::SoftwareKeyboard(const Core::Frontend::SoftwareKeyboardApplet& frontend) | ||||
|     : frontend(frontend) {} | ||||
|  | ||||
| SoftwareKeyboard::~SoftwareKeyboard() = default; | ||||
|  | ||||
| @@ -90,8 +91,6 @@ void SoftwareKeyboard::ExecuteInteractive() { | ||||
|     if (status == INTERACTIVE_STATUS_OK) { | ||||
|         complete = true; | ||||
|     } else { | ||||
|         const auto& frontend{Core::System::GetInstance().GetSoftwareKeyboard()}; | ||||
|  | ||||
|         std::array<char16_t, SWKBD_OUTPUT_INTERACTIVE_BUFFER_SIZE / 2 - 2> string; | ||||
|         std::memcpy(string.data(), data.data() + 4, string.size() * 2); | ||||
|         frontend.SendTextCheckDialog( | ||||
| @@ -106,8 +105,6 @@ void SoftwareKeyboard::Execute() { | ||||
|         return; | ||||
|     } | ||||
|  | ||||
|     const auto& frontend{Core::System::GetInstance().GetSoftwareKeyboard()}; | ||||
|  | ||||
|     const auto parameters = ConvertToFrontendParameters(config, initial_text); | ||||
|  | ||||
|     frontend.RequestText([this](std::optional<std::u16string> text) { WriteText(text); }, | ||||
|   | ||||
| @@ -55,7 +55,7 @@ static_assert(sizeof(KeyboardConfig) == 0x3E0, "KeyboardConfig has incorrect siz | ||||
|  | ||||
| class SoftwareKeyboard final : public Applet { | ||||
| public: | ||||
|     SoftwareKeyboard(); | ||||
|     SoftwareKeyboard(const Core::Frontend::SoftwareKeyboardApplet& frontend); | ||||
|     ~SoftwareKeyboard() override; | ||||
|  | ||||
|     void Initialize() override; | ||||
| @@ -68,6 +68,8 @@ public: | ||||
|     void WriteText(std::optional<std::u16string> text); | ||||
|  | ||||
| private: | ||||
|     const Core::Frontend::SoftwareKeyboardApplet& frontend; | ||||
|  | ||||
|     KeyboardConfig config; | ||||
|     std::u16string initial_text; | ||||
|     bool complete = false; | ||||
|   | ||||
| @@ -95,7 +95,7 @@ static FileSys::VirtualFile GetManualRomFS() { | ||||
|     return nullptr; | ||||
| } | ||||
|  | ||||
| WebBrowser::WebBrowser() = default; | ||||
| WebBrowser::WebBrowser(const Core::Frontend::WebBrowserApplet& frontend) : frontend(frontend) {} | ||||
|  | ||||
| WebBrowser::~WebBrowser() = default; | ||||
|  | ||||
| @@ -152,8 +152,6 @@ void WebBrowser::Execute() { | ||||
|         return; | ||||
|     } | ||||
|  | ||||
|     auto& frontend{Core::System::GetInstance().GetWebBrowser()}; | ||||
|  | ||||
|     frontend.OpenPage(filename, [this] { UnpackRomFS(); }, [this] { Finalize(); }); | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -12,7 +12,7 @@ namespace Service::AM::Applets { | ||||
|  | ||||
| class WebBrowser final : public Applet { | ||||
| public: | ||||
|     WebBrowser(); | ||||
|     WebBrowser(const Core::Frontend::WebBrowserApplet& frontend); | ||||
|     ~WebBrowser() override; | ||||
|  | ||||
|     void Initialize() override; | ||||
| @@ -32,6 +32,8 @@ public: | ||||
|     void Finalize(); | ||||
|  | ||||
| private: | ||||
|     const Core::Frontend::WebBrowserApplet& frontend; | ||||
|  | ||||
|     bool complete = false; | ||||
|     bool unpacked = false; | ||||
|     ResultCode status = RESULT_SUCCESS; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Zach Hilman
					Zach Hilman