fix: update currently-selected username on username update (#6739)

Reviewed-by: pajlada <rasmus.karlsson@pajlada.com>
This commit is contained in:
SonicSegFault
2026-01-16 08:34:36 -05:00
committed by GitHub
parent 31ef6eeddf
commit f4f49742c1
2 changed files with 14 additions and 1 deletions
@@ -17,6 +17,7 @@
#include "providers/twitch/TwitchCommon.hpp"
#include "providers/twitch/TwitchIrcServer.hpp"
#include "providers/twitch/TwitchUser.hpp"
#include "singletons/Settings.hpp"
#include "util/QCompareTransparent.hpp"
#include "util/SharedPtrElementLess.hpp"
@@ -71,6 +72,18 @@ void checkMissingScopes(const std::shared_ptr<TwitchAccount> &account)
login.compare(account->getUserName(), Qt::CaseInsensitive) != 0)
{
account->setUserName(login);
const std::string basePath =
"/accounts/uid" + account->getUserId().toStdString();
pajlada::Settings::Setting<QString>::set(basePath + "/username",
login);
auto &manager = app->getAccounts()->twitch;
auto currentUsername = manager.getCurrent()->getUserName();
if (currentUsername.compare(manager.currentUsername.getValue(),
Qt::CaseInsensitive) != 0)
{
manager.currentUsername = currentUsername;
}
getSettings()->requestSave();
app->getAccounts()->twitch.currentUserNameChanged.invoke();
}