X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fclient.cpp;h=772601f54c928231916cfbf7496e0d5e028ed180;hp=3c27145b31cba915752e00d2fd16bbd11575d342;hb=e7696b65e76e50137b8bab0ec3e43ce66a94f190;hpb=da791527a453a98e0fc800336fee4022ec3d4207 diff --git a/src/client/client.cpp b/src/client/client.cpp index 3c27145b..772601f5 100644 --- a/src/client/client.cpp +++ b/src/client/client.cpp @@ -65,6 +65,7 @@ Client::Client(QObject *parent) _connectedToCore(false), _syncedToCore(false) { + _monitorBuffer = new Buffer(BufferInfo(), this); } Client::~Client() { @@ -165,6 +166,10 @@ Buffer *Client::buffer(BufferInfo id) { return buff; } +Buffer *Client::monitorBuffer() { + return instance()->_monitorBuffer; +} + NetworkModel *Client::networkModel() { return instance()->_networkModel; @@ -419,6 +424,13 @@ void Client::recvMessage(const Message &msg) { Buffer *b = buffer(msg.buffer()); b->appendMsg(msg); networkModel()->updateBufferActivity(msg); + + if(msg.type() == Message::Plain || msg.type() == Message::Notice || msg.type() == Message::Action) { + QString sender = msg.buffer().network() + ":" + msg.buffer().buffer() + ":" + msg.sender(); + Message mmsg = Message(msg.timestamp(), msg.buffer(), msg.type(), msg.text(), sender, msg.flags()); + monitorBuffer()->appendMsg(mmsg); + } + } void Client::recvStatusMsg(QString /*net*/, QString /*msg*/) {