if(msg.type() == Message::Plain || msg.type() == Message::Notice)
level |= BufferItem::NewMessage;
+
const Network *net = Client::network(msg.bufferInfo().networkId());
- if(net && (msg.type() == Message::Plain || msg.type() == Message::Notice || msg.type() == Message::Action) && msg.text().contains(net->myNick()))
- level |= BufferItem::Highlight;
+ if(net) {
+ QRegExp nickRegExp("^(.*\\W)?"+net->myNick()+"(\\W.*)?$");
+ if((msg.type() == Message::Plain || msg.type() == Message::Notice || msg.type() == Message::Action) && nickRegExp.exactMatch(msg.text()))
+ level |= BufferItem::Highlight;
+ }
bufferItem(msg.bufferInfo())->updateActivity(level);
}