Fixed storing of updated channel modes

master
Tomatix 5 years ago
parent 9e9a7bb9dc
commit 616bc37464
  1. 5
      IRCClient/IRCBase.cpp
  2. 7
      IdealIRC/IRC.cpp

@ -532,7 +532,10 @@ struct IRCBasePriv
}
else if (group == 'D') {
chan->setMode(m, "");
if (sign == '+')
chan->setMode(m, "");
else
chan->delMode(m);
}
else if (group == 'M') {

@ -210,6 +210,10 @@ void IRC::onMsgMode(const IRCPrefix& sender, const std::string& target, const st
emit memberChanged(member.member()->prefix().nickname().c_str(), member);
}
}
auto subwin = MdiManager::instance().findWindow(&getStatus(), QString::fromStdString(target));
if (subwin)
subwin->refreshWindowTitle();
}
/* User-mode changed */
@ -322,6 +326,9 @@ void IRC::onMsgTopic(const IRCPrefix& sender, const std::string& target, const s
else
msg = fmt::format("{} removed the topic", sender.toString());
getStatus().printTo(target.c_str(), PrintType::Topic, msg.c_str());
auto subwin = MdiManager::instance().findWindow(&getStatus(), QString::fromStdString(target));
if (subwin)
subwin->refreshWindowTitle();
}
contextualScriptEvent(&m_status, ScriptEvent::Topic, sender.toString(), target, topic);

Loading…
Cancel
Save