diff options
author | Rider Linden <rider@lindenlab.com> | 2016-09-14 09:55:18 -0700 |
---|---|---|
committer | Rider Linden <rider@lindenlab.com> | 2016-09-14 09:55:18 -0700 |
commit | 51236b7c9c2e74639be6360b42154f21fecc9df8 (patch) | |
tree | b720cf9f432e3bf6c2b100d25a0fce48e4be4219 /indra/newview/lltoastscriptquestion.cpp | |
parent | 694fe9cfc5a63f825bf77f4630c2da57c16171bf (diff) | |
parent | 4fb100ac7a33174883184f1320d0beac08ead3a7 (diff) |
Merge
Diffstat (limited to 'indra/newview/lltoastscriptquestion.cpp')
-rw-r--r-- | indra/newview/lltoastscriptquestion.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/indra/newview/lltoastscriptquestion.cpp b/indra/newview/lltoastscriptquestion.cpp index 91ba8c0247..7a3a1d8fd7 100644 --- a/indra/newview/lltoastscriptquestion.cpp +++ b/indra/newview/lltoastscriptquestion.cpp @@ -54,6 +54,19 @@ BOOL LLToastScriptQuestion::postBuild() return TRUE; } + +// virtual +void LLToastScriptQuestion::setFocus(BOOL b) +{ + LLToastPanel::setFocus(b); + // toast can fade out and disappear with focus ON, so reset to default anyway + LLButton* dfbutton = getDefaultButton(); + if (dfbutton && dfbutton->getVisible() && dfbutton->getEnabled()) + { + dfbutton->setFocus(b); + } +} + void LLToastScriptQuestion::snapToMessageHeight() { LLTextBox* mMessage = getChild<LLTextBox>("top_info_message"); @@ -118,6 +131,12 @@ void LLToastScriptQuestion::createButtons() button->setRect(rect); buttons_width += rect.getWidth() + LEFT_PAD; + + if (form_element.has("default") && form_element["default"].asBoolean()) + { + button->setFocus(TRUE); + setDefaultBtn(button); + } } } } |