From 31b133f9ffc971fb19e35c212f3977ca27c63131 Mon Sep 17 00:00:00 2001 From: Emil Kowalski Date: Wed, 25 Sep 2024 00:27:32 +0200 Subject: [PATCH] Fix body shift --- src/use-prevent-scroll.ts | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/src/use-prevent-scroll.ts b/src/use-prevent-scroll.ts index d5e7a87..447c916 100644 --- a/src/use-prevent-scroll.ts +++ b/src/use-prevent-scroll.ts @@ -104,29 +104,18 @@ export function usePreventScroll(options: PreventScrollOptions = {}) { if (preventScrollCount === 1) { if (isIOS()) { restore = preventScrollMobileSafari(); - } else { - restore = preventScrollStandard(); } } return () => { preventScrollCount--; if (preventScrollCount === 0) { - restore(); + restore?.(); } }; }, [isDisabled]); } -// For most browsers, all we need to do is set `overflow: hidden` on the root element, and -// add some padding to prevent the page from shifting when the scrollbar is hidden. -function preventScrollStandard() { - return chain( - setStyle(document.documentElement, 'paddingRight', `${window.innerWidth - document.documentElement.clientWidth}px`), - // setStyle(document.documentElement, 'overflow', 'hidden'), - ); -} - // Mobile Safari is a whole different beast. Even with overflow: hidden, // it still scrolls the page in many situations: //