X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fbuffersyncer.cpp;h=d4c6918c68328366932ffbeddaf3f28923a441fd;hp=cf16d8d3b0713d80ace7ed54ca4bf8956c816d3e;hb=dcba0652ac1275877b98b06d6482924ee6df0cd1;hpb=8010224cf5bfe5685dc2cf535e8dc1ec19c4c364 diff --git a/src/common/buffersyncer.cpp b/src/common/buffersyncer.cpp index cf16d8d3..d4c6918c 100644 --- a/src/common/buffersyncer.cpp +++ b/src/common/buffersyncer.cpp @@ -32,7 +32,8 @@ QDateTime BufferSyncer::lastSeen(BufferId buffer) const { } bool BufferSyncer::setLastSeen(BufferId buffer, const QDateTime &time) { - if(_lastSeen[buffer] < time) { + if(!time.isValid()) return false; + if(!lastSeen(buffer).isValid() || lastSeen(buffer) < time) { _lastSeen[buffer] = time; emit lastSeenSet(buffer, time); return true; @@ -60,3 +61,17 @@ void BufferSyncer::requestSetLastSeen(BufferId buffer, const QDateTime &time) { if(setLastSeen(buffer, time)) emit setLastSeenRequested(buffer, time); } + +void BufferSyncer::requestRemoveBuffer(BufferId buffer) { + emit removeBufferRequested(buffer); +} + +void BufferSyncer::removeBuffer(BufferId buffer) { + if(_lastSeen.contains(buffer)) + _lastSeen.remove(buffer); + emit bufferRemoved(buffer); +} + +void BufferSyncer::renameBuffer(BufferId buffer, QString newName) { + emit bufferRenamed(buffer, newName); +}