@@ -410,7 +410,7 @@ class Drag implements IDisposable {
410
410
*/
411
411
private _updateDragScroll ( event : MouseEvent ) : void {
412
412
// Find the scroll target under the mouse.
413
- let target = Private . findScrollTarget ( event ) ;
413
+ let target = Private . findScrollTarget ( event , this . dragOffsetX , this . dragOffsetY ) ;
414
414
415
415
// Bail if there is nothing to scroll.
416
416
if ( ! this . _scrollTarget && ! target ) {
@@ -830,17 +830,18 @@ namespace Private {
830
830
* Find the drag scroll target under the mouse, if any.
831
831
*/
832
832
export
833
- function findScrollTarget ( event : MouseEvent ) : IScrollTarget | null {
833
+ function findScrollTarget ( event : MouseEvent , dragOffsetX : number , dragOffsetY : number ) : IScrollTarget | null {
834
834
// Look up the client mouse position.
835
- const x = event . clientX + drag . dragOffsetX ;
836
- const y = event . clientY + drag . dragOffsetY ;
835
+ const x = event . clientX + dragOffsetX ;
836
+ const y = event . clientY + dragOffsetY ;
837
837
838
838
// Get the element under the mouse.
839
839
let element : Element | null = document . elementFromPoint ( x , y ) ;
840
840
841
841
// Search for a scrollable target based on the mouse position.
842
842
// The null assert in third clause of for-loop is required due to:
843
843
// https://github.com/Microsoft/TypeScript/issues/14143
844
+
844
845
for ( ; element ; element = element ! . parentElement ) {
845
846
// Ignore elements which are not marked as scrollable.
846
847
let scrollable = element . hasAttribute ( 'data-lm-dragscroll' ) ;
0 commit comments