X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fmessagefilter.cpp;h=323405e121e70ff7b84ec34afdd923f2bd7580e5;hp=c9c44d163f1bf5bd6c9cc49772e7b67ae73d35bc;hb=7e20c659f88e26ccdfdc65f4894ed6ecf61ca8a9;hpb=9a717378a859383363ea519dd9de9c0138d0db73 diff --git a/src/client/messagefilter.cpp b/src/client/messagefilter.cpp index c9c44d16..323405e1 100644 --- a/src/client/messagefilter.cpp +++ b/src/client/messagefilter.cpp @@ -140,29 +140,26 @@ bool MessageFilter::filterAcceptsRow(int sourceRow, const QModelIndex &sourcePar if(myNetworkId != msgNetworkId) return false; - bool redirect = false; - int redirectionTarget = 0; - switch(messageType) { - case Message::Notice: - if(Client::networkModel()->bufferType(bufferId) != BufferInfo::ChannelBuffer) { - redirect = true; - if(flags & Message::ServerMsg) { - // server notice - redirectionTarget = _serverNoticesTarget; - } else { - redirectionTarget = _userNoticesTarget; + + if(flags & Message::Redirected) { + int redirectionTarget = 0; + switch(messageType) { + case Message::Notice: + if(Client::networkModel()->bufferType(bufferId) != BufferInfo::ChannelBuffer) { + if(flags & Message::ServerMsg) { + // server notice + redirectionTarget = _serverNoticesTarget; + } else { + redirectionTarget = _userNoticesTarget; + } } + break; + case Message::Error: + redirectionTarget = _errorMsgsTarget; + break; + default: + break; } - break; - case Message::Error: - redirect = true; - redirectionTarget = _errorMsgsTarget; - break; - default: - break; - } - - if(redirect) { if(redirectionTarget & BufferSettings::DefaultBuffer && _validBuffers.contains(bufferId)) return true;