diff --git a/client/scripts/controllers/chat.controller.js b/client/scripts/controllers/chat.controller.js index 6108aa3..023be12 100644 --- a/client/scripts/controllers/chat.controller.js +++ b/client/scripts/controllers/chat.controller.js @@ -20,6 +20,8 @@ export default class ChatCtrl extends Controller { return Chats.findOne(this.chatId); } }); + + this.autoScroll(); } sendMessage() { @@ -56,6 +58,17 @@ export default class ChatCtrl extends Controller { } } + autoScroll() { + let recentMessagesNum = this.messages.length; + + this.autorun(() => { + const currMessagesNum = this.getCollectionReactively('messages').length; + const animate = recentMessagesNum != currMessagesNum; + recentMessagesNum = currMessagesNum; + this.scrollBottom(animate); + }); + } + scrollBottom(animate) { this.$timeout(() => { this.$ionicScrollDelegate.$getByHandle('chatScroll').scrollBottom(animate);