diff --git a/indra/newview/llconversationview.cpp b/indra/newview/llconversationview.cpp index 30822849915bb27aa7e195ef4df1db9ea1fbe892..81212a9141b90c5d040a7fc08df8a71043aa2eaa 100755 --- a/indra/newview/llconversationview.cpp +++ b/indra/newview/llconversationview.cpp @@ -432,6 +432,22 @@ void LLConversationViewParticipant::draw() LLView::draw(); } +// virtual +S32 LLConversationViewParticipant::arrange(S32* width, S32* height) +{ + //Need to call arrange first since it computes value used in getIndentation() + S32 arranged = LLFolderViewItem::arrange(width, height); + + //Adjusts the avatar icon based upon the indentation + LLRect avatarRect(getIndentation(), + mAvatarIcon->getRect().mTop, + getIndentation() + mAvatarIcon->getRect().getWidth(), + mAvatarIcon->getRect().mBottom); + mAvatarIcon->setShape(avatarRect); + + return arranged; +} + void LLConversationViewParticipant::selectItem() { LLConversationItem* vmi = this->getParentFolder() ? static_cast<LLConversationItem*>(this->getParentFolder()->getViewModelItem()) : NULL; @@ -507,7 +523,7 @@ void LLConversationViewParticipant::onMouseLeave(S32 x, S32 y, MASK mask) S32 LLConversationViewParticipant::getLabelXPos() { - return mAvatarIcon->getRect().mRight + mIconPad; + return getIndentation() + mAvatarIcon->getRect().getWidth() + mIconPad; } // static diff --git a/indra/newview/llconversationview.h b/indra/newview/llconversationview.h index bd95387bbe350e702a47ac91e385b58dc21ac3a1..18cb9bdb274d700a7a1abb2a9013c42e4085727a 100755 --- a/indra/newview/llconversationview.h +++ b/indra/newview/llconversationview.h @@ -129,6 +129,7 @@ class LLConversationViewParticipant : public LLFolderViewItem void initFromParams(const Params& params); BOOL postBuild(); /*virtual*/ void draw(); + /*virtual*/ S32 arrange(S32* width, S32* height); void onInfoBtnClick(); diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp index 01456fee3bcb2bc7d940f793eb27d50be51df659..298a6055bf91553a2d6408a9ba50a7c9cb7527cf 100644 --- a/indra/newview/llimfloatercontainer.cpp +++ b/indra/newview/llimfloatercontainer.cpp @@ -1289,9 +1289,6 @@ LLConversationViewParticipant* LLIMFloaterContainer::createConversationViewParti LLRect panel_rect = mConversationsListPanel->getRect(); params.name = item->getDisplayName(); - //params.icon = bridge->getIcon(); - //params.icon_open = bridge->getOpenIcon(); - //params.creation_date = bridge->getCreationDate(); params.root = mConversationsRoot; params.listener = item; @@ -1299,7 +1296,8 @@ LLConversationViewParticipant* LLIMFloaterContainer::createConversationViewParti params.rect = LLRect (0, 24, panel_rect.getWidth(), 0); params.tool_tip = params.name; params.participant_id = item->getUUID(); - + params.folder_indentation = 42; + return LLUICtrlFactory::create<LLConversationViewParticipant>(params); } diff --git a/indra/newview/skins/default/xui/en/widgets/conversation_view_participant.xml b/indra/newview/skins/default/xui/en/widgets/conversation_view_participant.xml index 0024decd4ca56e029b980ef855bbf56173bb79b7..b83d9122f72cfdfe253ec44ad7bec94d30c6b744 100755 --- a/indra/newview/skins/default/xui/en/widgets/conversation_view_participant.xml +++ b/indra/newview/skins/default/xui/en/widgets/conversation_view_participant.xml @@ -1,7 +1,6 @@ <?xml version="1.0" encoding="utf-8" standalone="yes" ?> <conversation_view_participant folder_arrow_image="Folder_Arrow" - folder_indentation="0" item_height="24" item_top_pad="0" selection_image="Rounded_Square" @@ -20,7 +19,6 @@ height="20" default_icon_name="Generic_Person" layout="topleft" - left="50" top="2" width="20" /> <info_button