diff options
| -rw-r--r-- | indra/newview/llfloaterimsessiontab.cpp | 9 | 
1 files changed, 8 insertions, 1 deletions
| diff --git a/indra/newview/llfloaterimsessiontab.cpp b/indra/newview/llfloaterimsessiontab.cpp index 7a0de78ac5..a44303f72c 100644 --- a/indra/newview/llfloaterimsessiontab.cpp +++ b/indra/newview/llfloaterimsessiontab.cpp @@ -453,12 +453,19 @@ void LLFloaterIMSessionTab::onInputEditorClicked()  void LLFloaterIMSessionTab::onEmojiRecentPanelToggleBtnClicked(LLFloaterIMSessionTab* self)  { +    bool restore_focus = (gFocusMgr.getLastKeyboardFocus() == self->mInputEditor); +  	BOOL show = !self->mEmojiRecentPanel->getVisible();  	if (show)  	{ -		self->initEmojiRecentPanel(true); +        self->initEmojiRecentPanel(!restore_focus);  	}  	self->mEmojiRecentPanel->setVisible(show); + +    if (restore_focus) +    { +        self->mInputEditor->setFocus(true); +    }  }  void LLFloaterIMSessionTab::onEmojiPickerToggleBtnClicked(LLFloaterIMSessionTab* self) | 
