diff options
| author | Seth ProductEngine <slitovchuk@productengine.com> | 2012-06-07 00:59:05 +0300 |
|---|---|---|
| committer | Seth ProductEngine <slitovchuk@productengine.com> | 2012-06-07 00:59:05 +0300 |
| commit | d11f542ffefdc5db845028d5a260b5b0ad12dea6 (patch) | |
| tree | 3819d70dbbdd353298ea57f2398864e2e4ff27b5 /indra/newview/llimview.cpp | |
| parent | 05d721cecfa0c20a6fd8498a18f36cde7014248e (diff) | |
CHUI-120 WIP Added starting ad hoc conference in the same floater as P2P chat, after adding more participants.
- Added a parameter to LLAvatarActions::startConference() and LLIMMgr::addSession() to pass the uuid of a P2P IM floater which should be used to start a new conference in it.
- In LLChicletBar::sessionRemoved() we don't close the IM floater if it is going to be re-used for a new conference.
Diffstat (limited to 'indra/newview/llimview.cpp')
| -rw-r--r-- | indra/newview/llimview.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp index 46b1cb5f18..0d2b1f06b5 100644 --- a/indra/newview/llimview.cpp +++ b/indra/newview/llimview.cpp @@ -2591,7 +2591,8 @@ LLUUID LLIMMgr::addSession( const std::string& name, EInstantMessage dialog, const LLUUID& other_participant_id, - const LLDynamicArray<LLUUID>& ids, bool voice) + const LLDynamicArray<LLUUID>& ids, bool voice, + const LLUUID& floater_id) { if (0 == ids.getLength()) { @@ -2606,6 +2607,18 @@ LLUUID LLIMMgr::addSession( LLUUID session_id = computeSessionID(dialog,other_participant_id); + if (floater_id.notNull()) + { + LLIMFloater* im_floater = LLIMFloater::findInstance(floater_id); + if (im_floater && im_floater->getStartConferenceInSameFloater()) + { + // The IM floater should be initialized with a new session_id + // so that it is found by that id when creating a chiclet in LLIMFloater::onIMChicletCreated, + // and a new floater is not created. + im_floater->initIMSession(session_id); + } + } + bool new_session = !LLIMModel::getInstance()->findIMSession(session_id); //works only for outgoing ad-hoc sessions |
