summaryrefslogtreecommitdiff
path: root/src/gui/windows/socialwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/windows/socialwindow.cpp')
-rw-r--r--src/gui/windows/socialwindow.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/gui/windows/socialwindow.cpp b/src/gui/windows/socialwindow.cpp
index 8b1d0d79c..ec7fce182 100644
--- a/src/gui/windows/socialwindow.cpp
+++ b/src/gui/windows/socialwindow.cpp
@@ -1276,6 +1276,7 @@ SocialWindow::SocialWindow() :
// TRANSLATORS: social window name
Window(_("Social"), false, nullptr, "social.xml"),
gcn::ActionListener(),
+ PlayerRelationsListener(),
mGuildInvited(0),
mGuildAcceptDialog(nullptr),
mGuildCreateDialog(nullptr),
@@ -1372,10 +1373,12 @@ void SocialWindow::postInit()
enableVisibleSound(true);
updateButtons();
+ player_relations.addListener(this);
}
SocialWindow::~SocialWindow()
{
+ player_relations.removeListener(this);
if (mGuildAcceptDialog)
{
mGuildAcceptDialog->close();
@@ -1740,6 +1743,7 @@ void SocialWindow::slowLogic()
const unsigned int nowTime = cur_time;
if (mNeedUpdate && nowTime - mLastUpdateTime > 1)
{
+ logger->log("soc update");
mPlayers->updateList();
mFriends->updateList();
mNeedUpdate = false;
@@ -1892,6 +1896,16 @@ void SocialWindow::updateGuildCounter(const int online, const int total)
}
}
+void SocialWindow::updatedPlayer(const std::string &name)
+{
+ mNeedUpdate = true;
+}
+
+void SocialWindow::updateAll()
+{
+ mNeedUpdate = true;
+}
+
#ifdef USE_PROFILER
void SocialWindow::logicChildren()
{