diff --git a/indra/newview/llpanelemojicomplete.cpp b/indra/newview/llpanelemojicomplete.cpp
index 61b08ad48dcfe270f6376f42a5250be68081e676..a7058a672489242e06bc1b4fa2f25a745d259166 100644
--- a/indra/newview/llpanelemojicomplete.cpp
+++ b/indra/newview/llpanelemojicomplete.cpp
@@ -260,6 +260,10 @@ BOOL LLFloaterEmojiComplete::handleKey(KEY key, MASK mask, BOOL called_from_pare
 void LLFloaterEmojiComplete::onOpen(const LLSD& key)
 {
 	mEmojiCtrl->setEmojiHint(key["hint"].asString());
+	if (0 == mEmojiCtrl->getEmojiCount())
+	{
+		LLEmojiHelper::instance().hideHelper();
+	}
 }
 
 BOOL LLFloaterEmojiComplete::postBuild()
diff --git a/indra/newview/llpanelemojicomplete.h b/indra/newview/llpanelemojicomplete.h
index 361a2dc9b7e3611da3b600f3cb3dff36aa6c6647..138cc465baf128567dcaf622c9e37075952634b5 100644
--- a/indra/newview/llpanelemojicomplete.h
+++ b/indra/newview/llpanelemojicomplete.h
@@ -59,7 +59,8 @@ class LLPanelEmojiComplete : public LLUICtrl
 	void reshape(S32 width, S32 height, BOOL called_from_parent) override;
 
 public:
-	void setEmojiHint(const std::string& hint);
+	size_t getEmojiCount() const { return mEmojis.size(); }
+	void   setEmojiHint(const std::string& hint);
 protected:
 	size_t posToIndex(S32 x, S32 y) const;
 	void select(size_t emoji_idx);