X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcommon%2Fbuffersyncer.cpp;h=cbebd03a8d65544352a3a82fbf43309ee4c6f945;hb=7168c6adaa3cd2be160aa1731c7444dc384a4a98;hp=32f579ea07107fbe41bc48e1d4b57d45fc884ae0;hpb=c1cf157116de7fc3da96203aa6f03c38c7ebb650;p=quassel.git diff --git a/src/common/buffersyncer.cpp b/src/common/buffersyncer.cpp index 32f579ea..cbebd03a 100644 --- a/src/common/buffersyncer.cpp +++ b/src/common/buffersyncer.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2018 by the Quassel Project * + * Copyright (C) 2005-2020 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -82,7 +82,7 @@ QVariantList BufferSyncer::initLastSeenMsg() const QVariantList list; QHash::const_iterator iter = _lastSeenMsg.constBegin(); while (iter != _lastSeenMsg.constEnd()) { - list << QVariant::fromValue(iter.key()) << QVariant::fromValue(iter.value()); + list << QVariant::fromValue(iter.key()) << QVariant::fromValue(iter.value()); ++iter; } return list; @@ -102,7 +102,7 @@ QVariantList BufferSyncer::initMarkerLines() const QVariantList list; QHash::const_iterator iter = _markerLines.constBegin(); while (iter != _markerLines.constEnd()) { - list << QVariant::fromValue(iter.key()) << QVariant::fromValue(iter.value()); + list << QVariant::fromValue(iter.key()) << QVariant::fromValue(iter.value()); ++iter; } return list; @@ -122,7 +122,7 @@ QVariantList BufferSyncer::initActivities() const QVariantList list; auto iter = _bufferActivities.constBegin(); while (iter != _bufferActivities.constEnd()) { - list << QVariant::fromValue(iter.key()) << QVariant::fromValue((int)iter.value()); + list << QVariant::fromValue(iter.key()) << QVariant::fromValue((int)iter.value()); ++iter; } return list; @@ -158,6 +158,9 @@ void BufferSyncer::removeBuffer(BufferId buffer) void BufferSyncer::mergeBuffersPermanently(BufferId buffer1, BufferId buffer2) { + setBufferActivity(buffer1, _bufferActivities[buffer1] | _bufferActivities[buffer2]); + setHighlightCount(buffer1, _highlightCounts[buffer1] + _highlightCounts[buffer2]); + if (_lastSeenMsg.contains(buffer2)) _lastSeenMsg.remove(buffer2); if (_markerLines.contains(buffer2)) @@ -180,7 +183,7 @@ QVariantList BufferSyncer::initHighlightCounts() const QVariantList list; auto iter = _highlightCounts.constBegin(); while (iter != _highlightCounts.constEnd()) { - list << QVariant::fromValue(iter.key()) << QVariant::fromValue((int)iter.value()); + list << QVariant::fromValue(iter.key()) << QVariant::fromValue((int)iter.value()); ++iter; } return list;