X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcoresession.cpp;h=557c9a8321a6a15ea56f2b2228bca70509fb5dd5;hp=841ae7c1a31cc77b39f42bd45357cc88d9af5652;hb=891c87b4e52022480f2ab71b598bfde721815df5;hpb=7897b8623a42967511e31c68d5c102033a1dcdb9 diff --git a/src/core/coresession.cpp b/src/core/coresession.cpp index 841ae7c1..557c9a83 100644 --- a/src/core/coresession.cpp +++ b/src/core/coresession.cpp @@ -80,7 +80,7 @@ CoreSession::CoreSession(UserId uid, bool restoreState, QObject *parent) foreach(BufferId id, lastSeenHash.keys()) _bufferSyncer->requestSetLastSeenMsg(id, lastSeenHash[id]); - connect(_bufferSyncer, SIGNAL(lastSeenMsgSet(BufferId, MsgId)), this, SLOT(storeBufferLastSeenMsg(BufferId, MsgId))); + connect(&(Core::instance()->syncTimer()), SIGNAL(timeout()), _bufferSyncer, SLOT(storeDirtyIds())); p->synchronize(_bufferSyncer); @@ -158,6 +158,7 @@ void CoreSession::loadSettings() { } void CoreSession::saveSessionState() const { + _bufferSyncer->storeDirtyIds(); } void CoreSession::restoreSessionState() { @@ -263,10 +264,6 @@ QVariant CoreSession::sessionState() { return v; } -void CoreSession::storeBufferLastSeenMsg(BufferId buffer, const MsgId &msgId) { - Core::setBufferLastSeenMsg(user(), buffer, msgId); -} - void CoreSession::initScriptEngine() { signalProxy()->attachSlot(SIGNAL(scriptRequest(QString)), this, SLOT(scriptRequest(QString))); signalProxy()->attachSignal(this, SIGNAL(scriptResult(QString))); @@ -384,8 +381,10 @@ void CoreSession::destroyNetwork(NetworkId id) { } void CoreSession::renameBuffer(const NetworkId &networkId, const QString &newName, const QString &oldName) { - BufferInfo bufferInfo = Core::bufferInfo(user(), networkId, BufferInfo::QueryBuffer, oldName); - _bufferSyncer->renameBuffer(bufferInfo.bufferId(), newName); + BufferInfo bufferInfo = Core::bufferInfo(user(), networkId, BufferInfo::QueryBuffer, oldName, false); + if(bufferInfo.isValid()) { + _bufferSyncer->renameBuffer(bufferInfo.bufferId(), newName); + } } void CoreSession::clientsConnected() {