diff --git a/indra/newview/llfloatermute.cpp b/indra/newview/llfloatermute.cpp index a3edaf531..97325f0b2 100644 --- a/indra/newview/llfloatermute.cpp +++ b/indra/newview/llfloatermute.cpp @@ -40,7 +40,6 @@ #include "lluictrlfactory.h" // project include -#include "llavataractions.h" #include "llfloateravatarpicker.h" #include "llgroupactions.h" #include "llmutelist.h" @@ -187,22 +186,6 @@ LLFloaterMute::LLFloaterMute(const LLSD& seed) LLUICtrlFactory::getInstance()->buildFloater(this, "floater_mute.xml", NULL, FALSE); } -void LLFloaterMute::showProfile() const -{ - if (const auto item = mMuteList->getFirstSelected()) - { - const auto type = item->getColumn(0)->getValue().asString(); - if (type == mAvatarIcon->getName()) - { - LLAvatarActions::showProfile(item->getUUID()); - } - else if (type == mGroupIcon->getName()) - { - LLGroupActions::show(item->getUUID()); - } - } -} - BOOL LLFloaterMute::postBuild() { childSetCommitCallback("mutes", boost::bind(&LLFloaterMute::updateButtons, this)); @@ -217,7 +200,6 @@ BOOL LLFloaterMute::postBuild() mMuteList = getChild("mutes"); mMuteList->setCommitOnSelectionChange(TRUE); - mMuteList->setDoubleClickCallback(boost::bind(&LLFloaterMute::showProfile, this)); LLMuteList::getInstance()->addObserver(this); diff --git a/indra/newview/llnamelistctrl.cpp b/indra/newview/llnamelistctrl.cpp index fae403213..1e5b950ce 100644 --- a/indra/newview/llnamelistctrl.cpp +++ b/indra/newview/llnamelistctrl.cpp @@ -33,6 +33,8 @@ #include "llavatarnamecache.h" #include "llcachename.h" #include "llagent.h" +#include "llavataractions.h" +#include "llgroupactions.h" #include "llinventory.h" #include "llscrolllistitem.h" #include "llscrolllistcolumn.h" @@ -121,6 +123,24 @@ BOOL LLNameListCtrl::handleDragAndDrop( return handled; } +BOOL LLNameListCtrl::handleDoubleClick(S32 x, S32 y, MASK mask) +{ + bool handled = LLScrollListCtrl::handleDoubleClick(x, y, mask); + if (!handled) + { + if (auto item = static_cast(hitItem(x, y))) + { + switch (item->getNameType()) + { + case LLNameListItem::INDIVIDUAL: LLAvatarActions::showProfile(item->getValue()); break; + case LLNameListItem::GROUP: LLGroupActions::show(item->getValue()); break; + default: return false; + } + handled = true; + } + } + return handled; +} // public void LLNameListCtrl::addGroupNameItem(const LLUUID& group_id, EAddPosition pos, diff --git a/indra/newview/llnamelistctrl.h b/indra/newview/llnamelistctrl.h index 3c08b2d83..4a2bf209a 100644 --- a/indra/newview/llnamelistctrl.h +++ b/indra/newview/llnamelistctrl.h @@ -147,6 +147,7 @@ public: BOOL drop, EDragAndDropType cargo_type, void *cargo_data, EAcceptance *accept, std::string& tooltip_msg); + BOOL handleDoubleClick(S32 x, S32 y, MASK mask) override; void setAllowCallingCardDrop(BOOL b) { mAllowCallingCardDrop = b; } diff --git a/indra/newview/llpanelgroupgeneral.cpp b/indra/newview/llpanelgroupgeneral.cpp index 192177cc1..4379ff3e1 100644 --- a/indra/newview/llpanelgroupgeneral.cpp +++ b/indra/newview/llpanelgroupgeneral.cpp @@ -43,7 +43,6 @@ #include "llcheckboxctrl.h" #include "llcombobox.h" #include "lldbstrings.h" -#include "llavataractions.h" #include "llgroupactions.h" #include "llimview.h" #include "lllineeditor.h" @@ -159,10 +158,6 @@ BOOL LLPanelGroupGeneral::postBuild() mFounderName = getChild("founder_name"); mListVisibleMembers = getChild("visible_members", recurse); - if (mListVisibleMembers) - { - mListVisibleMembers->setDoubleClickCallback(boost::bind(LLAvatarActions::showProfile, boost::bind(&LLScrollListCtrl::getCurrentID, mListVisibleMembers), false)); - } // Options mCtrlShowInGroupList = getChild("show_in_group_list", recurse); diff --git a/indra/newview/llpanelgrouproles.cpp b/indra/newview/llpanelgrouproles.cpp index 6a172cdb3..38fef06e4 100644 --- a/indra/newview/llpanelgrouproles.cpp +++ b/indra/newview/llpanelgrouproles.cpp @@ -34,7 +34,6 @@ #include "llcheckboxctrl.h" #include "llagent.h" -#include "llavataractions.h" #include "llavatarnamecache.h" #include "llbutton.h" #include "llfiltereditor.h" @@ -860,8 +859,6 @@ BOOL LLPanelGroupMembersSubTab::postBuildSubTab(LLView* root) // We want to be notified whenever a member is selected. mMembersList->setCommitOnSelectionChange(TRUE); mMembersList->setCommitCallback(boost::bind(&LLPanelGroupMembersSubTab::onMemberSelect,_1,this)); - // Show the member's profile on double click. - mMembersList->setDoubleClickCallback(boost::bind(&LLPanelGroupMembersSubTab::onMemberDoubleClick,this)); LLButton* button = parent->getChild("member_invite", recurse); if ( button ) @@ -1150,13 +1147,6 @@ void LLPanelGroupMembersSubTab::handleMemberSelect() mEjectBtn->setEnabled(can_eject_members); } -// static -void LLPanelGroupMembersSubTab::onMemberDoubleClick(void* user_data) -{ - LLPanelGroupMembersSubTab* self = static_cast(user_data); - self->handleMemberDoubleClick(); -} - //static void LLPanelGroupMembersSubTab::onInviteMember(void *userdata) { @@ -1334,15 +1324,6 @@ void LLPanelGroupMembersSubTab::onRoleCheck(LLUICtrl* ctrl, void* user_data) } } -void LLPanelGroupMembersSubTab::handleMemberDoubleClick() -{ - LLScrollListItem* selected = mMembersList->getFirstSelected(); - if (selected) - { - LLAvatarActions::showProfile(selected->getUUID()); - } -} - void LLPanelGroupMembersSubTab::activate() { LLPanelGroupSubTab::activate(); diff --git a/indra/newview/llpanelgrouproles.h b/indra/newview/llpanelgrouproles.h index aaf60c7a6..c6fb9871f 100644 --- a/indra/newview/llpanelgrouproles.h +++ b/indra/newview/llpanelgrouproles.h @@ -175,9 +175,6 @@ public: static void onMemberSelect(LLUICtrl*, void*); void handleMemberSelect(); - static void onMemberDoubleClick(void*); - void handleMemberDoubleClick(); - static void onInviteMember(void*); void handleInviteMember();