projects
/
quassel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Activity level is now properly handled for the currently selected buffer.
[quassel.git]
/
src
/
client
/
networkmodel.cpp
diff --git
a/src/client/networkmodel.cpp
b/src/client/networkmodel.cpp
index
0ffd9c0
..
29ebfc9
100644
(file)
--- a/
src/client/networkmodel.cpp
+++ b/
src/client/networkmodel.cpp
@@
-191,8
+191,9
@@
void BufferItem::setActivityLevel(BufferInfo::ActivityLevel level) {
}
void BufferItem::updateActivityLevel(const Message &msg) {
}
void BufferItem::updateActivityLevel(const Message &msg) {
- if(isCurrentBuffer())
+ if(isCurrentBuffer())
{
return;
return;
+ }
if(msg.flags() & Message::Self) // don't update activity for our own messages
return;
if(msg.flags() & Message::Self) // don't update activity for our own messages
return;
@@
-253,6
+254,9
@@
void BufferItem::setBufferName(const QString &name) {
void BufferItem::setLastSeenMsgId(const MsgId &msgId) {
_lastSeenMsgId = msgId;
void BufferItem::setLastSeenMsgId(const MsgId &msgId) {
_lastSeenMsgId = msgId;
+ if(!isCurrentBuffer()) {
+ _lastSeenMarkerMsgId = msgId;
+ }
setActivityLevel(BufferInfo::NoActivity);
}
setActivityLevel(BufferInfo::NoActivity);
}
@@
-916,6
+920,13
@@
MsgId NetworkModel::lastSeenMsgId(BufferId bufferId) {
return _bufferItemCache[bufferId]->lastSeenMsgId();
}
return _bufferItemCache[bufferId]->lastSeenMsgId();
}
+MsgId NetworkModel::lastSeenMarkerMsgId(BufferId bufferId) {
+ if(!_bufferItemCache.contains(bufferId))
+ return MsgId();
+
+ return _bufferItemCache[bufferId]->lastSeenMarkerMsgId();
+}
+
void NetworkModel::setLastSeenMsgId(const BufferId &bufferId, const MsgId &msgId) {
BufferItem *bufferItem = findBufferItem(bufferId);
if(!bufferItem) {
void NetworkModel::setLastSeenMsgId(const BufferId &bufferId, const MsgId &msgId) {
BufferItem *bufferItem = findBufferItem(bufferId);
if(!bufferItem) {
@@
-926,7
+937,10
@@
void NetworkModel::setLastSeenMsgId(const BufferId &bufferId, const MsgId &msgId
}
void NetworkModel::updateBufferActivity(const Message &msg) {
}
void NetworkModel::updateBufferActivity(const Message &msg) {
- bufferItem(msg.bufferInfo())->updateActivityLevel(msg);
+ BufferItem *item = bufferItem(msg.bufferInfo());
+ item->updateActivityLevel(msg);
+ if(item->isCurrentBuffer())
+ emit setLastSeenMsg(item->bufferId(), msg.msgId());
}
void NetworkModel::setBufferActivity(const BufferId &bufferId, BufferInfo::ActivityLevel level) {
}
void NetworkModel::setBufferActivity(const BufferId &bufferId, BufferInfo::ActivityLevel level) {