CHUI-867 FIXED Set focus to Session floater(if it is torn off) after clicking appropriate conversation item.

Mnikolenko ProductEngine 2013-05-27 14:31:08 +03:00
parent 706200e234
commit c272809aa6
2 changed files with 19 additions and 0 deletions

View File

@ -270,6 +270,24 @@ BOOL LLConversationViewSession::handleMouseDown( S32 x, S32 y, MASK mask )
return result;
}
BOOL LLConversationViewSession::handleMouseUp( S32 x, S32 y, MASK mask )
{
BOOL result = LLFolderViewFolder::handleMouseUp(x, y, mask);
if(result && getRoot())
{
LLConversationItem* item = dynamic_cast<LLConversationItem *>(getViewModelItem());
LLUUID session_id = item? item->getUUID() : LLUUID();
LLFloaterIMSessionTab* session_floater = LLFloaterIMSessionTab::findConversation(session_id);
if(!session_floater->getHost() && !session_floater->hasFocus())
{
session_floater->setFocus(true);
}
}
return result;
}
BOOL LLConversationViewSession::handleRightMouseDown( S32 x, S32 y, MASK mask )
{
BOOL result = LLFolderViewFolder::handleRightMouseDown(x, y, mask);

View File

@ -69,6 +69,7 @@ public:
/*virtual*/ void draw();
/*virtual*/ BOOL handleMouseDown( S32 x, S32 y, MASK mask );
/*virtual*/ BOOL handleRightMouseDown( S32 x, S32 y, MASK mask );
/*virtual*/ BOOL handleMouseUp( S32 x, S32 y, MASK mask );
/*virtual*/ S32 arrange(S32* width, S32* height);