summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swift/Controllers')
-rw-r--r--Swift/Controllers/MainController.cpp6
-rw-r--r--Swift/Controllers/MainController.h3
2 files changed, 7 insertions, 2 deletions
diff --git a/Swift/Controllers/MainController.cpp b/Swift/Controllers/MainController.cpp
index b02c78b..c9e6230 100644
--- a/Swift/Controllers/MainController.cpp
+++ b/Swift/Controllers/MainController.cpp
@@ -65,6 +65,7 @@ static const String CLIENT_NODE = "http://swift.im";
static const String SHOW_NOTIFICATIONS = "showNotifications";
MainController::MainController(
+ EventLoop* eventLoop,
ChatWindowFactory* chatWindowFactory,
MainWindowFactory *mainWindowFactory,
LoginWindowFactory *loginWindowFactory,
@@ -79,7 +80,8 @@ MainController::MainController(
Dock* dock,
Notifier* notifier,
bool useDelayForLatency) :
- timerFactory_(&boostIOServiceThread_.getIOService()),
+ eventLoop_(eventLoop),
+ timerFactory_(&boostIOServiceThread_.getIOService(), eventLoop),
idleDetector_(&idleQuerier_, &timerFactory_, 100),
storagesFactory_(storagesFactory),
chatWindowFactory_(chatWindowFactory),
@@ -361,7 +363,7 @@ void MainController::performLoginFromCachedCredentials() {
}
if (!client_) {
storages_ = storagesFactory_->createStorages(jid_);
- client_ = new Swift::Client(jid_, password_, storages_);
+ client_ = new Swift::Client(eventLoop_, jid_, password_, storages_);
client_->onDataRead.connect(boost::bind(&XMLConsoleController::handleDataRead, xmlConsoleController_, _1));
client_->onDataWritten.connect(boost::bind(&XMLConsoleController::handleDataWritten, xmlConsoleController_, _1));
client_->onError.connect(boost::bind(&MainController::handleError, this, _1));
diff --git a/Swift/Controllers/MainController.h b/Swift/Controllers/MainController.h
index 22d2559..709bacf 100644
--- a/Swift/Controllers/MainController.h
+++ b/Swift/Controllers/MainController.h
@@ -28,6 +28,7 @@
#include "Swift/Controllers/UIEvents/UIEvent.h"
namespace Swift {
+ class EventLoop;
class Client;
class ChatWindowFactory;
class ChatController;
@@ -65,6 +66,7 @@ namespace Swift {
class MainController {
public:
MainController(
+ EventLoop* eventLoop,
ChatWindowFactory* chatWindowFactory,
MainWindowFactory *mainWindowFactory,
LoginWindowFactory *loginWindowFactory,
@@ -107,6 +109,7 @@ namespace Swift {
void handleNotificationClicked(const JID& jid);
private:
+ EventLoop* eventLoop_;
BoostIOServiceThread boostIOServiceThread_;
BoostTimerFactory timerFactory_;
PlatformIdleQuerier idleQuerier_;