X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fclient%2Fclient.cpp;h=c5d4e50c7d1920b4bc335b6cfe42a2490957b4c6;hb=da2507ded5eaecc8e7f06b9035c5d1b7cec13b9b;hp=30c110099325d571838a413f673c2a41eaabdfa2;hpb=7aa691713f4185fe142f54e14d6b623ee706f77a;p=quassel.git diff --git a/src/client/client.cpp b/src/client/client.cpp index 30c11009..c5d4e50c 100644 --- a/src/client/client.cpp +++ b/src/client/client.cpp @@ -316,10 +316,12 @@ void Client::setSyncedToCore() { Q_ASSERT(!_bufferSyncer); _bufferSyncer = new BufferSyncer(this); connect(bufferSyncer(), SIGNAL(lastSeenMsgSet(BufferId, MsgId)), _networkModel, SLOT(setLastSeenMsgId(BufferId, MsgId))); + connect(bufferSyncer(), SIGNAL(markerLineSet(BufferId,MsgId)), _networkModel, SLOT(setMarkerLineMsgId(BufferId,MsgId))); connect(bufferSyncer(), SIGNAL(bufferRemoved(BufferId)), this, SLOT(bufferRemoved(BufferId))); connect(bufferSyncer(), SIGNAL(bufferRenamed(BufferId, QString)), this, SLOT(bufferRenamed(BufferId, QString))); connect(bufferSyncer(), SIGNAL(buffersPermanentlyMerged(BufferId, BufferId)), this, SLOT(buffersPermanentlyMerged(BufferId, BufferId))); connect(bufferSyncer(), SIGNAL(buffersPermanentlyMerged(BufferId, BufferId)), _messageModel, SLOT(buffersPermanentlyMerged(BufferId, BufferId))); + connect(bufferSyncer(), SIGNAL(bufferMarkedAsRead(BufferId)), SIGNAL(bufferMarkedAsRead(BufferId))); connect(networkModel(), SIGNAL(setLastSeenMsg(BufferId, MsgId)), bufferSyncer(), SLOT(requestSetLastSeenMsg(BufferId, const MsgId &))); signalProxy()->synchronize(bufferSyncer()); @@ -468,9 +470,13 @@ void Client::recvMessage(const Message &msg) { } void Client::setBufferLastSeenMsg(BufferId id, const MsgId &msgId) { - if(!bufferSyncer()) - return; - bufferSyncer()->requestSetLastSeenMsg(id, msgId); + if(bufferSyncer()) + bufferSyncer()->requestSetLastSeenMsg(id, msgId); +} + +void Client::setBufferMarkerLine(BufferId id, const MsgId &msgId) { + if(bufferSyncer()) + bufferSyncer()->requestSetMarkerLine(id, msgId); } void Client::removeBuffer(BufferId id) { @@ -527,6 +533,11 @@ void Client::buffersPermanentlyMerged(BufferId bufferId1, BufferId bufferId2) { networkModel()->removeBuffer(bufferId2); } +void Client::markBufferAsRead(BufferId id) { + if(id.isValid()) + bufferSyncer()->requestMarkBufferAsRead(id); +} + void Client::logMessage(QtMsgType type, const char *msg) { fprintf(stderr, "%s\n", msg); fflush(stderr);