Fix incorrect scrolling bug in HideScrollbar

This commit is contained in:
2024-02-21 16:36:51 +08:00
parent 66486f86f0
commit 380b82f9a9

View File

@@ -486,24 +486,21 @@ const HideScrollbar = forwardRef<HideScrollbarElement, HideScrollbarProps>(
event.preventDefault() event.preventDefault()
return return
} }
let length = verticalScrollbarLength
setVerticalScrollbarLength((prevState) => { setVerticalScrollbarLength((prevState) => {
length = prevState if (
!isPreventHorizontalScroll &&
prevState >= 100 &&
!event.shiftKey &&
!event.deltaX
) {
event.preventDefault()
rootRef.current?.scrollTo({
left: rootRef.current?.scrollLeft + event.deltaY,
behavior: 'smooth'
})
}
return prevState return prevState
}) })
if (
!isPreventHorizontalScroll &&
length >= 100 &&
!event.shiftKey &&
!event.deltaX
) {
event.preventDefault()
rootRef.current?.scrollTo({
left: rootRef.current?.scrollLeft + event.deltaY,
behavior: 'smooth'
})
return
}
} }
} }
wheelListenerRef.current = handleDefaultWheel wheelListenerRef.current = handleDefaultWheel