X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fclient.cpp;h=b1b28ee2bde386437d3a3bf95102088b8ea807dc;hp=30c110099325d571838a413f673c2a41eaabdfa2;hb=c430ea551dc39f9f9111fadfa35e62e7e08a5561;hpb=7aa691713f4185fe142f54e14d6b623ee706f77a diff --git a/src/client/client.cpp b/src/client/client.cpp index 30c11009..b1b28ee2 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(bufferSyncer() && id.isValid()) + bufferSyncer()->requestMarkBufferAsRead(id); +} + void Client::logMessage(QtMsgType type, const char *msg) { fprintf(stderr, "%s\n", msg); fflush(stderr);