summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/am/frontend/applet_profile_select.cpp
diff options
context:
space:
mode:
authorLiam <byteslice@airmail.cc>2024-01-03 07:16:27 +0100
committerLiam <byteslice@airmail.cc>2024-01-30 02:17:33 +0100
commit8a146469c0639ff402e77da8843072ce1f2bce0c (patch)
treec5dbc016c8ff1affaa06d9bfe7b580b468fed1ba /src/core/hle/service/am/frontend/applet_profile_select.cpp
parentam: rework IStorage for transfer storage (diff)
downloadyuzu-8a146469c0639ff402e77da8843072ce1f2bce0c.tar
yuzu-8a146469c0639ff402e77da8843072ce1f2bce0c.tar.gz
yuzu-8a146469c0639ff402e77da8843072ce1f2bce0c.tar.bz2
yuzu-8a146469c0639ff402e77da8843072ce1f2bce0c.tar.lz
yuzu-8a146469c0639ff402e77da8843072ce1f2bce0c.tar.xz
yuzu-8a146469c0639ff402e77da8843072ce1f2bce0c.tar.zst
yuzu-8a146469c0639ff402e77da8843072ce1f2bce0c.zip
Diffstat (limited to 'src/core/hle/service/am/frontend/applet_profile_select.cpp')
-rw-r--r--src/core/hle/service/am/frontend/applet_profile_select.cpp19
1 files changed, 9 insertions, 10 deletions
diff --git a/src/core/hle/service/am/frontend/applet_profile_select.cpp b/src/core/hle/service/am/frontend/applet_profile_select.cpp
index 5d71f985e..efb4053b8 100644
--- a/src/core/hle/service/am/frontend/applet_profile_select.cpp
+++ b/src/core/hle/service/am/frontend/applet_profile_select.cpp
@@ -14,9 +14,10 @@
namespace Service::AM::Frontend {
-ProfileSelect::ProfileSelect(Core::System& system_, LibraryAppletMode applet_mode_,
+ProfileSelect::ProfileSelect(Core::System& system_, std::shared_ptr<Applet> applet_,
+ LibraryAppletMode applet_mode_,
const Core::Frontend::ProfileSelectApplet& frontend_)
- : FrontendApplet{system_, applet_mode_}, frontend{frontend_}, system{system_} {}
+ : FrontendApplet{system_, applet_, applet_mode_}, frontend{frontend_} {}
ProfileSelect::~ProfileSelect() = default;
@@ -28,7 +29,7 @@ void ProfileSelect::Initialize() {
FrontendApplet::Initialize();
profile_select_version = ProfileSelectAppletVersion{common_args.library_version};
- const auto user_config_storage = broker.PopNormalDataToApplet();
+ const std::shared_ptr<IStorage> user_config_storage = PopInData();
ASSERT(user_config_storage != nullptr);
const auto& user_config = user_config_storage->GetData();
@@ -51,10 +52,6 @@ void ProfileSelect::Initialize() {
}
}
-bool ProfileSelect::TransactionComplete() const {
- return complete;
-}
-
Result ProfileSelect::GetStatus() const {
return status;
}
@@ -65,7 +62,8 @@ void ProfileSelect::ExecuteInteractive() {
void ProfileSelect::Execute() {
if (complete) {
- broker.PushNormalDataFromApplet(std::make_shared<IStorage>(system, std::move(final_data)));
+ PushOutData(std::make_shared<IStorage>(system, std::move(final_data)));
+ Exit();
return;
}
@@ -112,8 +110,9 @@ void ProfileSelect::SelectionComplete(std::optional<Common::UUID> uuid) {
final_data = std::vector<u8>(sizeof(UiReturnArg));
std::memcpy(final_data.data(), &output, final_data.size());
- broker.PushNormalDataFromApplet(std::make_shared<IStorage>(system, std::move(final_data)));
- broker.SignalStateChanged();
+
+ PushOutData(std::make_shared<IStorage>(system, std::move(final_data)));
+ Exit();
}
Result ProfileSelect::RequestExit() {