diff options
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/llavataractions.cpp | 4 | ||||
-rw-r--r-- | indra/newview/llavataractions.h | 5 | ||||
-rw-r--r-- | indra/newview/llpanelprofile.cpp | 17 | ||||
-rw-r--r-- | indra/newview/llpanelprofile.h | 3 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/panel_profile_secondlife.xml | 2 |
5 files changed, 22 insertions, 9 deletions
diff --git a/indra/newview/llavataractions.cpp b/indra/newview/llavataractions.cpp index fa4090c5fe..ff00157459 100644 --- a/indra/newview/llavataractions.cpp +++ b/indra/newview/llavataractions.cpp @@ -1076,7 +1076,7 @@ bool LLAvatarActions::canShareSelectedItems(LLInventoryPanel* inv_panel /* = NUL } // static -void LLAvatarActions::toggleBlock(const LLUUID& id) +bool LLAvatarActions::toggleBlock(const LLUUID& id) { LLAvatarName av_name; LLAvatarNameCache::get(id, &av_name); @@ -1086,10 +1086,12 @@ void LLAvatarActions::toggleBlock(const LLUUID& id) if (LLMuteList::getInstance()->isMuted(mute.mID, mute.mName)) { LLMuteList::getInstance()->remove(mute); + return false; } else { LLMuteList::getInstance()->add(mute); + return true; } } diff --git a/indra/newview/llavataractions.h b/indra/newview/llavataractions.h index 6845d7675b..7dd358309c 100644 --- a/indra/newview/llavataractions.h +++ b/indra/newview/llavataractions.h @@ -134,9 +134,10 @@ public: static void shareWithAvatars(LLView * panel); /** - * Block/unblock the avatar. + * Block/unblock the avatar by id. + * Returns true if blocked, returns false if unblocked */ - static void toggleBlock(const LLUUID& id); + static bool toggleBlock(const LLUUID& id); /** * Mute/unmute avatar. diff --git a/indra/newview/llpanelprofile.cpp b/indra/newview/llpanelprofile.cpp index 3a772a8104..4933b0d25e 100644 --- a/indra/newview/llpanelprofile.cpp +++ b/indra/newview/llpanelprofile.cpp @@ -276,8 +276,8 @@ BOOL LLPanelProfileSecondLife::postBuild() mTeleportButton->setCommitCallback(boost::bind(&LLPanelProfileSecondLife::onTeleportButtonClick, this)); mShowOnMapButton->setCommitCallback(boost::bind(&LLPanelProfileSecondLife::onMapButtonClick, this)); mPayButton->setCommitCallback(boost::bind(&LLPanelProfileSecondLife::pay, this)); - mBlockButton->setCommitCallback(boost::bind(&LLPanelProfileSecondLife::toggleBlock,this)); - mUnblockButton->setCommitCallback(boost::bind(&LLPanelProfileSecondLife::toggleBlock,this)); + mBlockButton->setCommitCallback(boost::bind(&LLPanelProfileSecondLife::onClickToggleBlock, this)); + mUnblockButton->setCommitCallback(boost::bind(&LLPanelProfileSecondLife::onClickToggleBlock, this)); mGroupInviteButton->setCommitCallback(boost::bind(&LLPanelProfileSecondLife::onGroupInvite,this)); mDisplayNameButton->setCommitCallback(boost::bind(&LLPanelProfileSecondLife::onClickSetName, this)); @@ -519,11 +519,20 @@ void LLPanelProfileSecondLife::pay() LLAvatarActions::pay(getAvatarId()); } -void LLPanelProfileSecondLife::toggleBlock() +void LLPanelProfileSecondLife::onClickToggleBlock() { - LLAvatarActions::toggleBlock(getAvatarId()); + bool blocked = LLAvatarActions::toggleBlock(getAvatarId()); updateButtons(); + // we are hiding one button and showing another, set focus + if (blocked) + { + mUnblockButton->setFocus(true); + } + else + { + mBlockButton->setFocus(true); + } } void LLPanelProfileSecondLife::onAddFriendButtonClick() diff --git a/indra/newview/llpanelprofile.h b/indra/newview/llpanelprofile.h index d9b70a7f35..34d9045b2f 100644 --- a/indra/newview/llpanelprofile.h +++ b/indra/newview/llpanelprofile.h @@ -138,8 +138,9 @@ protected: /** * Add/remove resident to/from your block list. + * Updates button focus */ - void toggleBlock(); + void onClickToggleBlock(); void onAddFriendButtonClick(); void onIMButtonClick(); diff --git a/indra/newview/skins/default/xui/en/panel_profile_secondlife.xml b/indra/newview/skins/default/xui/en/panel_profile_secondlife.xml index b6d767bbba..1232439b1e 100644 --- a/indra/newview/skins/default/xui/en/panel_profile_secondlife.xml +++ b/indra/newview/skins/default/xui/en/panel_profile_secondlife.xml @@ -438,7 +438,7 @@ label="Unblock" tool_tip="Unblock this Resident" top_delta="0" - right="-40" + height="20" follows="left|top|right" layout="topleft" /> |