From 380b82f9a9a6e50d2bc511494d2fa9526c28d2df Mon Sep 17 00:00:00 2001 From: FatttSnake Date: Wed, 21 Feb 2024 16:36:51 +0800 Subject: [PATCH] Fix incorrect scrolling bug in HideScrollbar --- src/components/common/HideScrollbar.tsx | 27 +++++++++++-------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/src/components/common/HideScrollbar.tsx b/src/components/common/HideScrollbar.tsx index 962dd00..a79889b 100644 --- a/src/components/common/HideScrollbar.tsx +++ b/src/components/common/HideScrollbar.tsx @@ -486,24 +486,21 @@ const HideScrollbar = forwardRef( event.preventDefault() return } - let length = verticalScrollbarLength 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 }) - 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