mirror of
https://github.com/tenrok/OverlayScrollbars.git
synced 2026-06-17 02:40:36 +03:00
share resize debounce with zoom
This commit is contained in:
@@ -243,15 +243,16 @@ const createEnvironment = (): InternalEnvironment => {
|
|||||||
_staticDefaultOptions: assignDeep({}, staticDefaultOptions),
|
_staticDefaultOptions: assignDeep({}, staticDefaultOptions),
|
||||||
};
|
};
|
||||||
const windowAddEventListener = window.addEventListener;
|
const windowAddEventListener = window.addEventListener;
|
||||||
|
const debouncedWindowResize = debounce((zoom: boolean) => triggerEvent(zoom ? 'z' : 'r'), {
|
||||||
|
_timeout: 33,
|
||||||
|
_maxDelay: 99,
|
||||||
|
});
|
||||||
|
|
||||||
removeAttr(envElm, 'style');
|
removeAttr(envElm, 'style');
|
||||||
removeElements(envElm);
|
removeElements(envElm);
|
||||||
|
|
||||||
// needed in case content has css viewport units
|
// needed in case content has css viewport units
|
||||||
windowAddEventListener(
|
windowAddEventListener('resize', debouncedWindowResize.bind(0, false));
|
||||||
'resize',
|
|
||||||
debounce(triggerEvent.bind(0, 'r', []), { _timeout: 33, _maxDelay: 99 })
|
|
||||||
);
|
|
||||||
|
|
||||||
if (!nativeScrollbarsHiding && (!nativeScrollbarsOverlaid.x || !nativeScrollbarsOverlaid.y)) {
|
if (!nativeScrollbarsHiding && (!nativeScrollbarsOverlaid.x || !nativeScrollbarsOverlaid.y)) {
|
||||||
let resizeFn: undefined | ReturnType<ScrollbarsHidingPluginInstance['_envWindowZoom']>;
|
let resizeFn: undefined | ReturnType<ScrollbarsHidingPluginInstance['_envWindowZoom']>;
|
||||||
@@ -261,7 +262,8 @@ const createEnvironment = (): InternalEnvironment => {
|
|||||||
| undefined;
|
| undefined;
|
||||||
|
|
||||||
resizeFn = resizeFn || (scrollbarsHidingPlugin && scrollbarsHidingPlugin._envWindowZoom());
|
resizeFn = resizeFn || (scrollbarsHidingPlugin && scrollbarsHidingPlugin._envWindowZoom());
|
||||||
resizeFn && resizeFn(env, updateNativeScrollbarSizeCache, triggerEvent.bind(0, 'z', []));
|
resizeFn &&
|
||||||
|
resizeFn(env, updateNativeScrollbarSizeCache, debouncedWindowResize.bind(0, true));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user