code: function setupAugmentedScrollEvents(element) {
      var SCROLL_END_DELAY = 200;
      var isScrolling;
      var lastScrollTime;
      element.on('scroll touchmove', function() {
        if (!isScrolling) {
          isScrolling = true;
          $$rAF.throttle(loopScrollEvent);
          element.triggerHandler('$scrollstart');
        }
        element.triggerHandler('$scroll');
        lastScrollTime = +$mdUtil.now();
      });
  
      function loopScrollEvent() {
        if (+$mdUtil.now() - lastScrollTime > SCROLL_END_DELAY) {
          isScrolling = false;
          element.triggerHandler('$scrollend');
        } else {
          element.triggerHandler('$scroll');
          $$rAF.throttle(loopScrollEvent);
        }
      }
    }
docs: Android 4.4 don't accurately give scroll events. To fix this problem, we setup a fake scroll event. We say: > If a scroll or touchmove event has happened in the last DELAY milliseconds, then send a `$scroll` event every animationFrame. Additionally, we add $scrollstart and $scrollend events.