From 7d7579d7f04f88013d7e4d064b2becec28cced61 Mon Sep 17 00:00:00 2001 From: Sky Date: Wed, 27 Nov 2013 16:56:15 +0000 Subject: Move "manage accounts" to right, use player skin when available --- gui/dialogs/AccountListDialog.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'gui/dialogs/AccountListDialog.cpp') diff --git a/gui/dialogs/AccountListDialog.cpp b/gui/dialogs/AccountListDialog.cpp index c685c164..81b39e4c 100644 --- a/gui/dialogs/AccountListDialog.cpp +++ b/gui/dialogs/AccountListDialog.cpp @@ -56,6 +56,8 @@ void AccountListDialog::on_rmAccountBtn_clicked() { QModelIndex selected = selection.first(); m_accounts->removeAccount(selected); + + emit activeAccountChanged(); } } @@ -72,7 +74,9 @@ void AccountListDialog::on_setActiveBtn_clicked() QModelIndex selected = selection.first(); MojangAccountPtr account = selected.data(MojangAccountList::PointerRole).value(); m_accounts->setActiveAccount(account->username()); - } + + emit activeAccountChanged(); + } } void AccountListDialog::on_closeBtnBox_rejected() -- cgit v1.2.3 From 38732636d3c1f1563c2dceeae723fd51f7b5fda6 Mon Sep 17 00:00:00 2001 From: Sky Date: Wed, 27 Nov 2013 18:45:29 +0000 Subject: Nuke skins.json, use nice yggdrasil implementation instead. Grabs all Mojang account skins on addition, active on startup --- gui/dialogs/AccountListDialog.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'gui/dialogs/AccountListDialog.cpp') diff --git a/gui/dialogs/AccountListDialog.cpp b/gui/dialogs/AccountListDialog.cpp index 81b39e4c..ea6861c6 100644 --- a/gui/dialogs/AccountListDialog.cpp +++ b/gui/dialogs/AccountListDialog.cpp @@ -21,6 +21,7 @@ #include #include +#include #include #include @@ -112,5 +113,21 @@ void AccountListDialog::onLoginComplete() MojangAccountPtr account = m_authTask->getMojangAccount(); m_accounts->addAccount(account); //ui->listView->update(); + + // Grab associated player skins + auto job = new NetJob("Player skins: " + account->username()); + + for(AccountProfile profile : account->profiles()) + { + auto meta = MMC->metacache()->resolveEntry("skins", profile.name() + ".png"); + auto action = CacheDownload::make( + QUrl("http://skins.minecraft.net/MinecraftSkins/" + profile.name() + ".png"), + meta); + job->addNetAction(action); + meta->stale = true; + } + + connect(job, SIGNAL(succeeded()), SIGNAL(activeAccountChanged())); + job->start(); } -- cgit v1.2.3