diff options
author | Narr the Reg <juangerman-13@hotmail.com> | 2023-03-28 20:55:06 -0600 |
---|---|---|
committer | german77 <juangerman-13@hotmail.com> | 2023-03-29 08:53:19 -0600 |
commit | 668eb5b8dad656c281c218ea8b4c34965b163b93 (patch) | |
tree | 5bbe7344abb001909ee32e7dd9422b1a91c72f9d /src/core/frontend | |
parent | 8bdc51b620f0778f53d76ad9368da97a9213d631 (diff) |
service: am: Improve profile select applet
Diffstat (limited to 'src/core/frontend')
-rw-r--r-- | src/core/frontend/applets/profile_select.cpp | 3 | ||||
-rw-r--r-- | src/core/frontend/applets/profile_select.h | 16 |
2 files changed, 15 insertions, 4 deletions
diff --git a/src/core/frontend/applets/profile_select.cpp b/src/core/frontend/applets/profile_select.cpp index 910d20c0d..c18f17a36 100644 --- a/src/core/frontend/applets/profile_select.cpp +++ b/src/core/frontend/applets/profile_select.cpp @@ -11,7 +11,8 @@ ProfileSelectApplet::~ProfileSelectApplet() = default; void DefaultProfileSelectApplet::Close() const {} -void DefaultProfileSelectApplet::SelectProfile(SelectProfileCallback callback) const { +void DefaultProfileSelectApplet::SelectProfile(SelectProfileCallback callback, + const ProfileSelectParameters& parameters) const { Service::Account::ProfileManager manager; callback(manager.GetUser(Settings::values.current_user.GetValue()).value_or(Common::UUID{})); LOG_INFO(Service_ACC, "called, selecting current user instead of prompting..."); diff --git a/src/core/frontend/applets/profile_select.h b/src/core/frontend/applets/profile_select.h index 76e963535..92e2737ea 100644 --- a/src/core/frontend/applets/profile_select.h +++ b/src/core/frontend/applets/profile_select.h @@ -5,25 +5,35 @@ #include <functional> #include <optional> -#include "common/uuid.h" +#include "common/uuid.h" #include "core/frontend/applets/applet.h" +#include "core/hle/service/am/applets/applet_profile_select.h" namespace Core::Frontend { +struct ProfileSelectParameters { + Service::AM::Applets::UiMode mode; + std::array<Common::UUID, 8> invalid_uid_list; + Service::AM::Applets::UiSettingsDisplayOptions display_options; + Service::AM::Applets::UserSelectionPurpose purpose; +}; + class ProfileSelectApplet : public Applet { public: using SelectProfileCallback = std::function<void(std::optional<Common::UUID>)>; virtual ~ProfileSelectApplet(); - virtual void SelectProfile(SelectProfileCallback callback) const = 0; + virtual void SelectProfile(SelectProfileCallback callback, + const ProfileSelectParameters& parameters) const = 0; }; class DefaultProfileSelectApplet final : public ProfileSelectApplet { public: void Close() const override; - void SelectProfile(SelectProfileCallback callback) const override; + void SelectProfile(SelectProfileCallback callback, + const ProfileSelectParameters& parameters) const override; }; } // namespace Core::Frontend |