Update IrcUser's lastChannelActivity timestamp if she says something
authorManuel Nickschas <sputnick@quassel-irc.org>
Wed, 25 Feb 2009 17:37:32 +0000 (18:37 +0100)
committerManuel Nickschas <sputnick@quassel-irc.org>
Wed, 25 Feb 2009 17:41:14 +0000 (18:41 +0100)
src/client/networkmodel.cpp

index 8394fef..ae44091 100644 (file)
@@ -1005,6 +1005,16 @@ void NetworkModel::updateBufferActivity(Message &msg) {
     msg.setFlags(msg.flags() | Message::Redirected);
     redirectionTarget = _errorMsgsTarget;
     break;
+  // Update IrcUser's last activity
+  case Message::Plain:
+  case Message::Action:
+    if(bufferType(msg.bufferId()) == BufferInfo::ChannelBuffer) {
+      const Network *net = Client::network(msg.bufferInfo().networkId());
+      IrcUser *user = net ? net->ircUser(nickFromMask(msg.sender())) : 0;
+      if(user)
+        user->setLastChannelActivity(msg.bufferId(), msg.timestamp());
+    }
+    break;
   default:
     break;
   }