From 12989ab241075a1ee4caa5c4dd2ee05eacf61d33 Mon Sep 17 00:00:00 2001 From: JC Brand Date: Tue, 14 May 2019 16:26:25 +0200 Subject: [PATCH] New event: `chatBoxBlurred` --- CHANGES.md | 1 + src/converse-chatview.js | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index 4b01d2b1d..32f4c8186 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -13,6 +13,7 @@ - Replace `moment` with [DayJS](https://github.com/iamkun/dayjs). - New API method [\_converse.api.disco.features.get](https://conversejs.org/docs/html/api/-_converse.api.disco.features.html#.get) - New config setting [muc_show_disconnection_status](https://conversejs.org/docs/html/configuration.html#muc-show-disconnection-status) +- New event: `chatBoxBlurred`. - #1296: `embedded` view mode shows `chatbox-navback` arrow in header - #1465: When highlighting a roster contact, they're incorrectly shown as online - #1532: Converse reloads on enter pressed in the filter box diff --git a/src/converse-chatview.js b/src/converse-chatview.js index 245edf649..9f5ed184e 100644 --- a/src/converse-chatview.js +++ b/src/converse-chatview.js @@ -415,6 +415,15 @@ converse.plugins.add('converse-chatview', { })); const textarea_el = this.el.querySelector('.chat-textarea'); textarea_el.addEventListener('focus', () => this.emitFocused()); + textarea_el.addEventListener('blur', () => { + /** + * Triggered when the focus has been removed from a particular chat. + * @event _converse#chatBoxBlurred + * @type { _converse.ChatBoxView | _converse.ChatRoomView } + * @example _converse.api.listen.on('chatBoxBlurred', view => { ... }); + */ + _converse.api.trigger('chatBoxBlurred', this); + }); this.renderToolbar(); },