highlight respects now word boundaries. thx int
authorMarcus Eggenberger <egs@quassel-irc.org>
Fri, 8 Feb 2008 20:10:49 +0000 (20:10 +0000)
committerMarcus Eggenberger <egs@quassel-irc.org>
Fri, 8 Feb 2008 20:10:49 +0000 (20:10 +0000)
src/client/networkmodel.cpp

index 71b586e..8cf95bb 100644 (file)
@@ -758,9 +758,13 @@ void NetworkModel::updateBufferActivity(const Message &msg) {
   if(msg.type() == Message::Plain || msg.type() == Message::Notice)
     level |= BufferItem::NewMessage;
 
   if(msg.type() == Message::Plain || msg.type() == Message::Notice)
     level |= BufferItem::NewMessage;
 
+
   const Network *net = Client::network(msg.bufferInfo().networkId());
   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);
 }
 
   bufferItem(msg.bufferInfo())->updateActivity(level);
 }