diff --git a/src/core/emulator_settings.h b/src/core/emulator_settings.h index c6ac7f773..a2fb79202 100644 --- a/src/core/emulator_settings.h +++ b/src/core/emulator_settings.h @@ -13,7 +13,6 @@ #include #include "common/logging/log.h" #include "common/types.h" -#include "core/user_manager.h" #define EmulatorSettings (*EmulatorSettingsImpl::GetInstance()) diff --git a/src/core/user_manager.cpp b/src/core/user_manager.cpp index 8dfa2d8e5..176b9b001 100644 --- a/src/core/user_manager.cpp +++ b/src/core/user_manager.cpp @@ -27,6 +27,7 @@ bool UserManager::AddUser(const User& user) { std::filesystem::create_directory(user_dir / "inputs", ec); } + Save(); return true; } @@ -44,6 +45,7 @@ bool UserManager::RemoveUser(s32 user_id) { } m_users.user.erase(it, m_users.user.end()); + Save(); return true; } @@ -58,6 +60,7 @@ bool UserManager::RenameUser(s32 user_id, const std::string& new_name) { return true; } } + Save(); return false; } @@ -100,7 +103,7 @@ bool UserManager::SetDefaultUser(u32 user_id) { m_users.default_user_id = user_id; SetControllerPort(user_id, 1); // Set default user to port 1 - return true; + return Save(); } User UserManager::GetDefaultUser() { @@ -114,6 +117,7 @@ void UserManager::SetControllerPort(u32 user_id, int port) { if (u.user_id == user_id) u.controller_port = port; } + Save(); } // Returns a list of users that have valid home directories std::vector UserManager::GetValidUsers() const { diff --git a/src/core/user_manager.h b/src/core/user_manager.h index d8fa71303..f5b39a166 100644 --- a/src/core/user_manager.h +++ b/src/core/user_manager.h @@ -6,6 +6,7 @@ #include #include #include "common/types.h" +#include struct User { s32 user_id; @@ -18,6 +19,8 @@ struct Users { int default_user_id = 1; std::vector user; }; +NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(User, user_id, user_color, user_name, controller_port) +NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(Users, default_user_id, user) class UserManager { public: diff --git a/src/core/user_settings.h b/src/core/user_settings.h index 9eaf758d3..2ba91502e 100644 --- a/src/core/user_settings.h +++ b/src/core/user_settings.h @@ -22,8 +22,6 @@ // ------------------------------- // User settings // ------------------------------- -NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(User, user_id, user_color, user_name, controller_port) -NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(Users, default_user_id, user) class UserSettingsImpl { public: