X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcoresession.cpp;h=2ca9627ccd0e0d24f8ac0f55e928b84813eb8873;hp=49898b297169759bfc1dfca77bab6d6dee8cd3da;hb=dd69349ca91776432a4a53aa4d18dd8ef018cd26;hpb=d414dd5212cc00f1d43615528bb97470a65143b5 diff --git a/src/core/coresession.cpp b/src/core/coresession.cpp index 49898b29..2ca9627c 100644 --- a/src/core/coresession.cpp +++ b/src/core/coresession.cpp @@ -27,6 +27,7 @@ #include "corebuffersyncer.h" #include "corebacklogmanager.h" #include "corebufferviewmanager.h" +#include "coredccconfig.h" #include "coreeventmanager.h" #include "coreidentity.h" #include "coreignorelistmanager.h" @@ -64,6 +65,7 @@ CoreSession::CoreSession(UserId uid, bool restoreState, QObject *parent) _bufferSyncer(new CoreBufferSyncer(this)), _backlogManager(new CoreBacklogManager(this)), _bufferViewManager(new CoreBufferViewManager(_signalProxy, this)), + _dccConfig(new CoreDccConfig(this)), _ircListHelper(new CoreIrcListHelper(this)), _networkConfig(new CoreNetworkConfig("GlobalNetworkConfig", this)), _coreInfo(this), @@ -121,6 +123,7 @@ CoreSession::CoreSession(UserId uid, bool restoreState, QObject *parent) p->synchronize(_bufferSyncer); p->synchronize(&aliasManager()); p->synchronize(_backlogManager); + p->synchronize(dccConfig()); p->synchronize(ircListHelper()); p->synchronize(networkConfig()); p->synchronize(&_coreInfo); @@ -661,13 +664,14 @@ void CoreSession::clientsDisconnected() if (!identity->detachAwayReason().isEmpty()) awayReason = identity->detachAwayReason(); net->setAutoAwayActive(true); + // Allow handleAway() to format the current date/time in the string. net->userInputHandler()->handleAway(BufferInfo(), awayReason); } } } -void CoreSession::globalAway(const QString &msg) +void CoreSession::globalAway(const QString &msg, const bool skipFormatting) { QHash::iterator netIter = _networks.begin(); CoreNetwork *net = 0; @@ -678,7 +682,7 @@ void CoreSession::globalAway(const QString &msg) if (!net->isConnected()) continue; - net->userInputHandler()->issueAway(msg, false /* no force away */); + net->userInputHandler()->issueAway(msg, false /* no force away */, skipFormatting); } }