X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fclient%2Fclient.cpp;h=b6b8791744d3ffb22a3442cce8d953194ba6ae16;hb=0d7b511c8510d7fd05d3a704114e34ff37f7a995;hp=fe49f774049e4fd11df6cac1d6458039415ad237;hpb=76db8cdfbeffaaba359c8e80cf2146da9e9e7f8a;p=quassel.git diff --git a/src/client/client.cpp b/src/client/client.cpp index fe49f774..b6b87917 100644 --- a/src/client/client.cpp +++ b/src/client/client.cpp @@ -34,6 +34,7 @@ #include "clientirclisthelper.h" #include "clientidentity.h" #include "clientignorelistmanager.h" +#include "clienttransfermanager.h" #include "clientuserinputhandler.h" #include "coreaccountmodel.h" #include "coreconnection.h" @@ -102,10 +103,11 @@ Client::Client(QObject *parent) _inputHandler(0), _networkConfig(0), _ignoreListManager(0), + _transferManager(0), _messageModel(0), _messageProcessor(0), _coreAccountModel(new CoreAccountModel(this)), - _coreConnection(new CoreConnection(_coreAccountModel, this)), + _coreConnection(new CoreConnection(this)), _connected(false), _debugLog(&_debugLogBuffer) { @@ -404,6 +406,10 @@ void Client::setSyncedToCore() _ignoreListManager = new ClientIgnoreListManager(this); signalProxy()->synchronize(ignoreListManager()); + Q_ASSERT(!_transferManager); + _transferManager = new ClientTransferManager(this); + signalProxy()->synchronize(transferManager()); + // trigger backlog request once all active bufferviews are initialized connect(bufferViewOverlay(), SIGNAL(initDone()), this, SLOT(requestInitialBacklog())); @@ -473,6 +479,12 @@ void Client::setDisconnectedFromCore() _ignoreListManager->deleteLater(); _ignoreListManager = 0; } + + if (_transferManager) { + _transferManager->deleteLater(); + _transferManager = 0; + } + // we probably don't want to save pending input for reconnect _userInputBuffer.clear();