From b7c1f5703c683d8083f0d9e6776150e769828e9e Mon Sep 17 00:00:00 2001 From: Huang Xin Date: Sat, 17 May 2025 14:56:22 +0800 Subject: [PATCH] fix: less sensitive magic trackpad and mouse when flipping page, closes #1165 (#1172) --- apps/readest-app/src/app/reader/hooks/useIframeEvents.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/apps/readest-app/src/app/reader/hooks/useIframeEvents.ts b/apps/readest-app/src/app/reader/hooks/useIframeEvents.ts index 32498928..8c94d0e0 100644 --- a/apps/readest-app/src/app/reader/hooks/useIframeEvents.ts +++ b/apps/readest-app/src/app/reader/hooks/useIframeEvents.ts @@ -12,13 +12,20 @@ export const useMouseEvent = ( const throttledScroll = throttle(handleContinuousScroll, 500, { emitLast: false, }); + const throttledFlip = throttle(handlePageFlip, 1000, { + emitLast: false, + }); const handleMouseEvent = (msg: MessageEvent | React.MouseEvent) => { if (msg instanceof MessageEvent) { if (msg.data && msg.data.bookKey === bookKey) { if (msg.data.type === 'iframe-wheel') { throttledScroll('mouse', -msg.data.deltaY, 0); } - handlePageFlip(msg); + if (msg.data.type === 'iframe-wheel') { + throttledFlip(msg); + } else { + handlePageFlip(msg); + } } } else if (msg.type === 'wheel') { const event = msg as React.WheelEvent;