diff options
Diffstat (limited to 'Swift/Controllers/Chat/ChatsManager.cpp')
| -rw-r--r-- | Swift/Controllers/Chat/ChatsManager.cpp | 12 | 
1 files changed, 12 insertions, 0 deletions
diff --git a/Swift/Controllers/Chat/ChatsManager.cpp b/Swift/Controllers/Chat/ChatsManager.cpp index ef85107..31764f7 100644 --- a/Swift/Controllers/Chat/ChatsManager.cpp +++ b/Swift/Controllers/Chat/ChatsManager.cpp @@ -76,7 +76,11 @@ ChatsManager::ChatsManager(  	profileSettings_ = settings;  	presenceOracle_->onPresenceChange.connect(boost::bind(&ChatsManager::handlePresenceChange, this, _1));  	uiEventConnection_ = uiEventStream_->onUIEvent.connect(boost::bind(&ChatsManager::handleUIEvent, this, _1)); +  	chatListWindow_ = chatListWindowFactory->createChatListWindow(uiEventStream_); +	chatListWindow_->onMUCBookmarkActivated.connect(boost::bind(&ChatsManager::handleMUCBookmarkActivated, this, _1)); +	chatListWindow_->onRecentActivated.connect(boost::bind(&ChatsManager::handleRecentActivated, this, _1)); +  	joinMUCWindow_ = NULL;  	mucSearchController_ = new MUCSearchController(jid_, mucSearchWindowFactory, iqRouter, settings);  	mucSearchController_->onMUCSelected.connect(boost::bind(&ChatsManager::handleMUCSelectedAfterSearch, this, _1)); @@ -404,5 +408,13 @@ void ChatsManager::handleMUCSelectedAfterSearch(const JID& muc) {  	}  } +void ChatsManager::handleMUCBookmarkActivated(const MUCBookmark& mucBookmark) { +	uiEventStream_->send(boost::make_shared<JoinMUCUIEvent>(mucBookmark.getRoom(), mucBookmark.getNick())); +} + +void ChatsManager::handleRecentActivated(const ChatListWindow::Chat& chat) { +	uiEventStream_->send(boost::make_shared<RequestChatUIEvent>(chat.jid)); +} +  }  | 
 Swift