summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/llavataractions.cpp4
-rw-r--r--indra/newview/llavataractions.h5
-rw-r--r--indra/newview/llpanelprofile.cpp17
-rw-r--r--indra/newview/llpanelprofile.h3
-rw-r--r--indra/newview/skins/default/xui/en/panel_profile_secondlife.xml2
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"
/>