From 2a44558fbd719fc6d0beb13e658c28e534e36cdb Mon Sep 17 00:00:00 2001 From: Kegan Dougal Date: Wed, 29 Oct 2014 11:03:58 +0000 Subject: [PATCH] Fix SYWEB-128 : Auto-scroll broken if not exactly at bottom of list. Added a small 10px buffer so if the list isn't quite at the bottom it still actually scrolls. --- webclient/room/room-controller.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/webclient/room/room-controller.js b/webclient/room/room-controller.js index 78520a829..31aed71d7 100644 --- a/webclient/room/room-controller.js +++ b/webclient/room/room-controller.js @@ -133,7 +133,9 @@ angular.module('RoomController', ['ngSanitize', 'matrixFilter', 'mFileInput']) // Do not autoscroll to the bottom to display the new event if the user is not at the bottom. // Exception: in case where the event is from the user, we want to force scroll to the bottom var objDiv = document.getElementById("messageTableWrapper"); - if ((objDiv.offsetHeight + objDiv.scrollTop >= objDiv.scrollHeight) || force) { + // add a 10px buffer to this check so if the message list is not *quite* + // at the bottom it still scrolls since it basically is at the bottom. + if ((10 + objDiv.offsetHeight + objDiv.scrollTop >= objDiv.scrollHeight) || force) { $timeout(function() { objDiv.scrollTop = objDiv.scrollHeight;