|
|
|
@ -571,10 +571,21 @@ void IRC::onMsgNumeric(const IRCPrefix& /*sender*/, const std::string& num, cons |
|
|
|
|
|
|
|
|
|
else if (!ignoreVerbosity(num)) { |
|
|
|
|
IWin* window = nullptr; |
|
|
|
|
if (args.size() > 1) |
|
|
|
|
window = MdiManager::instance().findWindow(&getStatus(), QString::fromStdString(args[1])); |
|
|
|
|
if (!window) |
|
|
|
|
window = &getStatus(); |
|
|
|
|
|
|
|
|
|
if (num == Numeric::RPL_WHOISUSER) { |
|
|
|
|
auto& conf = ConfigMgr::instance(); |
|
|
|
|
m_receiveWhoisToCurrentWindow = conf.common("ShowWhoisActiveWindow").toInt(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (m_receiveWhoisToCurrentWindow) { |
|
|
|
|
window = getStatus().getActiveWindow(); |
|
|
|
|
} |
|
|
|
|
else { |
|
|
|
|
if (args.size() > 1) |
|
|
|
|
window = MdiManager::instance().findWindow(&getStatus(), QString::fromStdString(args[1])); |
|
|
|
|
if (!window) |
|
|
|
|
window = &getStatus(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (message.empty()) |
|
|
|
|
window->print(PrintType::Normal, argmsg.c_str()); |
|
|
|
@ -597,6 +608,10 @@ void IRC::onMsgNumeric(const IRCPrefix& /*sender*/, const std::string& num, cons |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
else if (num == Numeric::RPL_ENDOFWHOIS) { |
|
|
|
|
m_receiveWhoisToCurrentWindow = false; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/* Script event */ |
|
|
|
|
{ |
|
|
|
|
ScriptArray pval; |
|
|
|
|