handleRouteChangeStart = function (event, next, current) {
    // store scroll position for the current path + template
    if ($route.current) {
      scrollCache.setScroll(current.loadedTemplateUrl + ":" + current.$$route.originalPath,
        scrollContentEl.scrollTop);
    }

    // set scroll to 0 for next route, if explicitly clicked on link.
    if (scrollCache.linkClicked) {
      scrollCache.setScroll(next.$$route.templateUrl + ":" + next.$$route.originalPath, 0);
      scrollCache.linkClicked = false;
    }
  }
@param {Object} event Synthetic event object
@param {Object} next Future route information
@param {Object} current Current route information