From 808a0b7aeb9c58724d3ac2e1a8bb8f3d3c2bdb1e Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Mon, 3 Feb 2014 21:23:24 +0300 Subject: fix friend tab update in social window if friends was changed. --- src/gui/windows/socialwindow.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/gui/windows/socialwindow.cpp') 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() { -- cgit v1.2.3-60-g2f50