31 lines
1.0 KiB
Python
31 lines
1.0 KiB
Python
ngGridDirectives.directive('ngViewport', [function() {
|
|
return function($scope, elm) {
|
|
var isMouseWheelActive;
|
|
var prevScollLeft;
|
|
var prevScollTop = 0;
|
|
elm.bind('scroll', function(evt) {
|
|
var scrollLeft = evt.target.scrollLeft,
|
|
scrollTop = evt.target.scrollTop;
|
|
if ($scope.$headerContainer) {
|
|
$scope.$headerContainer.scrollLeft(scrollLeft);
|
|
}
|
|
$scope.adjustScrollLeft(scrollLeft);
|
|
$scope.adjustScrollTop(scrollTop);
|
|
if (!$scope.$root.$$phase) {
|
|
$scope.$digest();
|
|
}
|
|
prevScollLeft = scrollLeft;
|
|
prevScollTop = prevScollTop;
|
|
isMouseWheelActive = false;
|
|
return true;
|
|
});
|
|
elm.bind("mousewheel DOMMouseScroll", function() {
|
|
isMouseWheelActive = true;
|
|
elm.focus();
|
|
return true;
|
|
});
|
|
if (!$scope.enableCellSelection) {
|
|
$scope.domAccessProvider.selectionHandlers($scope, elm);
|
|
}
|
|
};
|
|
}]); |