From 48708d5738a0cd5341e58ebecc52b379b09ba089 Mon Sep 17 00:00:00 2001 From: tommypacker Date: Tue, 8 May 2018 00:47:33 -0500 Subject: [PATCH 1/2] Close emoji panel on escape press --- js/views/conversation_view.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/js/views/conversation_view.js b/js/views/conversation_view.js index dc49b33edc..715cc9b797 100644 --- a/js/views/conversation_view.js +++ b/js/views/conversation_view.js @@ -223,6 +223,7 @@ }, events: { + 'keydown': 'escapeEmojiPanel', 'submit .send': 'checkUnverifiedSendMessage', 'input .send-message': 'updateMessageFieldSize', 'keydown .send-message': 'updateMessageFieldSize', @@ -1201,6 +1202,13 @@ this.closeEmojiPanel(); } }, + escapeEmojiPanel(e){ + // Close emoji panel on escape key press + const keyCode = e.keyCode || e.which; + if (keyCode == 27 && this.emojiPanel != null) { + this.closeEmojiPanel(); + } + }, openEmojiPanel() { this.$emojiPanelContainer.outerHeight(200); this.emojiPanel = new EmojiPanel(this.$emojiPanelContainer[0], { From e723484498a631803961b68468611aede94c8709 Mon Sep 17 00:00:00 2001 From: Daniel Gasienica Date: Tue, 8 May 2018 17:30:11 -0400 Subject: [PATCH 2/2] Simplify closing emoji panel on escape key down --- js/views/conversation_view.js | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/js/views/conversation_view.js b/js/views/conversation_view.js index 715cc9b797..c6d8d3f6e2 100644 --- a/js/views/conversation_view.js +++ b/js/views/conversation_view.js @@ -223,7 +223,7 @@ }, events: { - 'keydown': 'escapeEmojiPanel', + keydown: 'onKeyDown', 'submit .send': 'checkUnverifiedSendMessage', 'input .send-message': 'updateMessageFieldSize', 'keydown .send-message': 'updateMessageFieldSize', @@ -1202,12 +1202,12 @@ this.closeEmojiPanel(); } }, - escapeEmojiPanel(e){ - // Close emoji panel on escape key press - const keyCode = e.keyCode || e.which; - if (keyCode == 27 && this.emojiPanel != null) { - this.closeEmojiPanel(); + onKeyDown(event) { + if (event.key !== 'Escape') { + return; } + + this.closeEmojiPanel(); }, openEmojiPanel() { this.$emojiPanelContainer.outerHeight(200); @@ -1217,6 +1217,10 @@ this.updateMessageFieldSize({}); }, closeEmojiPanel() { + if (this.emojiPanel === null) { + return; + } + this.$emojiPanelContainer.empty().outerHeight(0); this.emojiPanel = null; this.updateMessageFieldSize({});