summaryrefslogtreecommitdiff
path: root/indra/newview/llfloaterimsessiontab.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llfloaterimsessiontab.cpp')
-rw-r--r--indra/newview/llfloaterimsessiontab.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/indra/newview/llfloaterimsessiontab.cpp b/indra/newview/llfloaterimsessiontab.cpp
index 3d9751dd35..0571a0d855 100644
--- a/indra/newview/llfloaterimsessiontab.cpp
+++ b/indra/newview/llfloaterimsessiontab.cpp
@@ -434,10 +434,12 @@ void LLFloaterIMSessionTab::onEmojiPanelBtnClicked(LLFloaterIMSessionTab* self)
{
if (!picker->isShown())
{
- picker->show(boost::bind(&LLFloaterIMSessionTab::onEmojiSelected, self, _1));
+ picker->show(
+ boost::bind(&LLFloaterIMSessionTab::onEmojiPicked, self, _1),
+ boost::bind(&LLFloaterIMSessionTab::onEmojiPickerClosed, self));
if (LLFloater* root_floater = gFloaterView->getParentFloater(self))
{
- root_floater->addDependentFloater(picker);
+ root_floater->addDependentFloater(picker, TRUE, TRUE);
}
}
else
@@ -447,11 +449,16 @@ void LLFloaterIMSessionTab::onEmojiPanelBtnClicked(LLFloaterIMSessionTab* self)
}
}
-void LLFloaterIMSessionTab::onEmojiSelected(llwchar emoji)
+void LLFloaterIMSessionTab::onEmojiPicked(llwchar emoji)
{
mInputEditor->insertEmoji(emoji);
}
+void LLFloaterIMSessionTab::onEmojiPickerClosed()
+{
+ mInputEditor->setFocus(TRUE);
+}
+
std::string LLFloaterIMSessionTab::appendTime()
{
time_t utc_time;