Now activity sync should work... and yes, I did accidentally stop the core _again_...
[quassel.git] / src / common / buffersyncer.cpp
index cf16d8d..227370c 100644 (file)
@@ -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,13 @@ 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);
+}