account: Adds AccountManager (#2184)

* account: Adds Account Manager

In a way to have Custom User Profiles merged in master faster, this PR adds a `AccountManager` class (based on `AccountUtils` class) and the following changes have been made:
- Adds a "default profile values" which were the old hardcoded ones.
- The image profile is moved to the Account service folder.
- The hardcoded UserId for the savedata is now using the `AccountManager` last opened one.
- The DeviceId in Mii service is changed to the right value (checked by REd sys:set call).

* Fix csproj

* Addresses gdkchan's comments

* Fix UserProfile fields

* Fix mii GetDeviceId()

* Update Ryujinx.HLE.csproj
This commit is contained in:
Ac_K 2021-04-13 03:16:43 +02:00 committed by GitHub
parent 001005b3d5
commit 7344dee475
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
19 changed files with 89 additions and 81 deletions

View file

@ -1,12 +1,9 @@
using Ryujinx.HLE.HOS.Services.Account.Acc;
using System;
namespace Ryujinx.HLE.HOS.SystemState
{
public class SystemStateMgr
{
public static readonly UserId DefaultUserId = new UserId("00000000000000010000000000000000");
internal static string[] LanguageCodes = new string[]
{
"ja",
@ -46,15 +43,8 @@ namespace Ryujinx.HLE.HOS.SystemState
public bool InstallContents { get; set; }
public AccountUtils Account { get; private set; }
public SystemStateMgr()
{
Account = new AccountUtils();
Account.AddUser(DefaultUserId, "Player");
Account.OpenUser(DefaultUserId);
// TODO: Let user specify.
DesiredKeyboardLayout = (long)KeyboardLayout.Default;
}