summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authormaxim_productengine <mnikolenko@productengine.com>2018-12-04 18:51:44 +0200
committermaxim_productengine <mnikolenko@productengine.com>2018-12-04 18:51:44 +0200
commit320b7bacc2ef34b1434178cce8eb2818493fec21 (patch)
tree240316f80a322d67b3c22849d1e186f3994a139b /indra
parenta39d330cc22c603d5c06fabe86104e8948573e20 (diff)
SL-10149 FIXED 'Mute when minimized' checkbox is displayed without focus on it after pressing on label in the "Preferences" floater
Diffstat (limited to 'indra')
-rw-r--r--indra/llui/llcheckboxctrl.h2
-rw-r--r--indra/newview/llfloaterpreference.cpp6
2 files changed, 8 insertions, 0 deletions
diff --git a/indra/llui/llcheckboxctrl.h b/indra/llui/llcheckboxctrl.h
index 5ce45b2135..71bdc32e66 100644
--- a/indra/llui/llcheckboxctrl.h
+++ b/indra/llui/llcheckboxctrl.h
@@ -92,6 +92,8 @@ public:
// LLCheckBoxCtrl interface
virtual BOOL toggle() { return mButton->toggleState(); } // returns new state
+ void setBtnFocus() { mButton->setFocus(TRUE); }
+
void setEnabledColor( const LLColor4 &color ) { mTextEnabledColor = color; }
void setDisabledColor( const LLColor4 &color ) { mTextDisabledColor = color; }
diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp
index 92c9d1ae59..c66247b4b7 100644
--- a/indra/newview/llfloaterpreference.cpp
+++ b/indra/newview/llfloaterpreference.cpp
@@ -2329,6 +2329,7 @@ BOOL LLPanelPreference::postBuild()
if (hasChild("mute_chb_label", TRUE))
{
getChild<LLTextBox>("mute_chb_label")->setShowCursorHand(false);
+ getChild<LLTextBox>("mute_chb_label")->setSoundFlags(LLView::MOUSE_UP);
getChild<LLTextBox>("mute_chb_label")->setClickedCallback(boost::bind(&toggleMuteWhenMinimized));
}
@@ -2452,6 +2453,11 @@ void LLPanelPreference::toggleMuteWhenMinimized()
{
std::string mute("MuteWhenMinimized");
gSavedSettings.setBOOL(mute, !gSavedSettings.getBOOL(mute));
+ LLFloaterPreference* instance = LLFloaterReg::findTypedInstance<LLFloaterPreference>("preferences");
+ if (instance)
+ {
+ instance->getChild<LLCheckBoxCtrl>("mute_when_minimized")->setBtnFocus();
+ }
}
void LLPanelPreference::cancel()