From d754c65c1d6beae90d1f70f009040006b9bbb089 Mon Sep 17 00:00:00 2001 From: Aaron Bohy Date: Tue, 1 Sep 2015 11:32:37 +0200 Subject: [PATCH] [FIX] mail: scroll to bottom on new message only if the message arrived in the current channel --- addons/mail/static/src/js/mail_chat_backend.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/addons/mail/static/src/js/mail_chat_backend.js b/addons/mail/static/src/js/mail_chat_backend.js index c52603dc6ed..798024ce751 100644 --- a/addons/mail/static/src/js/mail_chat_backend.js +++ b/addons/mail/static/src/js/mail_chat_backend.js @@ -909,8 +909,9 @@ var ChatMailThread = Widget.extend(mail_thread.MailThreadMixin, ControlPanelMixi }, message_receive: function(message){ var self = this; + var in_current_channel = _.contains(message.channel_ids, this.get('current_channel_id')); // if current channel should reveice message, give it to it - if(_.contains(message.channel_ids, this.get('current_channel_id'))){ + if(in_current_channel){ this.message_insert([message]); } // for other message channel, get the channel if not loaded yet, and bolded them @@ -936,8 +937,10 @@ var ChatMailThread = Widget.extend(mail_thread.MailThreadMixin, ControlPanelMixi _.each(other_message_channel_ids, function(channel_id){ self._toggle_unread_message(channel_id, true); }); - // auto scroll to bottom - self._scroll(); + // auto scroll to bottom if the message arrived in the current channel + if(in_current_channel){ + self._scroll(); + } }); // if needaction, then increment the label if(message.needaction_partner_ids && _.contains(message.needaction_partner_ids, session.partner_id)){