MAINT-6759: Do not automatically hide the "Stand" button. Rely on the state of the avatar to enable/disable buttons.

master
Rider Linden 2016-09-30 15:56:40 -07:00
parent cf83f0a3c2
commit b2eded73b9
2 changed files with 6 additions and 8 deletions

View File

@ -252,7 +252,7 @@ void LLFloaterMove::setSittingMode(BOOL bSitting)
LLPanelStandStopFlying::setStandStopFlyingMode(LLPanelStandStopFlying::SSFM_STOP_FLYING);
}
}
enableInstance(!bSitting);
enableInstance();
}
// protected
@ -459,7 +459,7 @@ void LLFloaterMove::showModeButtons(BOOL bShow)
}
//static
void LLFloaterMove::enableInstance(BOOL bEnable)
void LLFloaterMove::enableInstance()
{
LLFloaterMove* instance = LLFloaterReg::findTypedInstance<LLFloaterMove>("moveview");
if (instance)
@ -470,7 +470,7 @@ void LLFloaterMove::enableInstance(BOOL bEnable)
}
else
{
instance->showModeButtons(bEnable);
instance->showModeButtons(isAgentAvatarValid() && !gAgentAvatarp->isSitting());
}
}
}
@ -566,7 +566,7 @@ BOOL LLPanelStandStopFlying::postBuild()
{
mStandButton = getChild<LLButton>("stand_btn");
mStandButton->setCommitCallback(boost::bind(&LLPanelStandStopFlying::onStandButtonClick, this));
mStandButton->setCommitCallback(boost::bind(&LLFloaterMove::enableInstance, TRUE));
mStandButton->setCommitCallback(boost::bind(&LLFloaterMove::enableInstance));
mStandButton->setVisible(FALSE);
LLHints::registerHintTarget("stand_btn", mStandButton->getHandle());
@ -685,8 +685,7 @@ void LLPanelStandStopFlying::onStandButtonClick()
LLSelectMgr::getInstance()->deselectAllForStandingUp();
gAgent.setControlFlags(AGENT_CONTROL_STAND_UP);
setFocus(FALSE); // EXT-482
mStandButton->setVisible(FALSE); // force visibility changing to avoid seeing Stand & Move buttons at once.
setFocus(FALSE);
}
void LLPanelStandStopFlying::onStopFlyingButtonClick()
@ -694,7 +693,6 @@ void LLPanelStandStopFlying::onStopFlyingButtonClick()
gAgent.setFlying(FALSE);
setFocus(FALSE); // EXT-482
mStopFlyingButton->setVisible(FALSE);
}
/**

View File

@ -56,7 +56,7 @@ public:
static void setAlwaysRunMode(bool run);
void setAlwaysRunModeImpl(bool run);
static void setSittingMode(BOOL bSitting);
static void enableInstance(BOOL bEnable);
static void enableInstance();
/*virtual*/ void onOpen(const LLSD& key);
static void sUpdateFlyingStatus();