anchor.diff:                          panel.children().slice(0, data.numberOfLinesReturned).remove();
                       }
                   })
  -            } else if(!isFetchingLines && !isDownScroll && currentScroll <= 20){
  +            } else if(!isFetchingLines && !isDownScroll && currentScroll <= 50){
                   debug('upward scroll, near top - so loading previous lines.');
                   isFetchingLines = true;
                   var upurl = '<aksess:geturl url="/admin/tools/logreader/logfiles/"/>' + filename + '.action?startline=' + (currentLine - numberOfLinesToFetch);
  
positive.code:     var registerScrollHandler = function(){
          var lastScrollTop = 0;
          var isFetchingLines = false;
          $('.ui-tabs-panel').scroll(function(){
              var panel = $(this);
              var filename = filesByIndex[panel.index()];
  
              var currentScroll = panel.scrollTop();
              var isDownScroll = isDownScrollDetect(lastScrollTop, currentScroll);
              if (!isFetchingLines && isDownScroll && (panel[0].scrollTopMax - 20) <= currentScroll){
                  debug('downward scroll, near bottom - so loading next lines.');
                  isFetchingLines = true;
                  var downurl = '<aksess:geturl url="/admin/tools/logreader/logfiles/"/>' + filename + '.action?startline=' + (currentLine + numberOfLinesToFetch);
  
negative.code:         return url;
      };
      var isDownScrollDetect = function(lastScrollTop, currentScroll){
          return currentScroll > 0 && currentScroll >= lastScrollTop;
      };
  
      var tabheaderUl = $('#tabheaders');
  