|
|
@@ -134,13 +134,15 @@ this.hooksFrame = this.hooksFrame || (() => {
|
|
|
};
|
|
|
});
|
|
|
}
|
|
|
- const zoomFactor = Math.min((clientHeight + window.scrollY) / scrollHeight, (clientWidth + window.scrollX) / scrollWidth);
|
|
|
+ const zoomFactorX = (clientHeight + window.scrollY) / scrollHeight;
|
|
|
+ const zoomFactorY = (clientWidth + window.scrollX) / scrollWidth;
|
|
|
+ const zoomFactor = Math.min(zoomFactorX, zoomFactorY);
|
|
|
if (zoomFactor < 1) {
|
|
|
const transform = document.documentElement.style.getPropertyValue("transform");
|
|
|
const transformPriority = document.documentElement.style.getPropertyPriority("transform");
|
|
|
const transformOrigin = document.documentElement.style.getPropertyValue("transform-origin");
|
|
|
const transformOriginPriority = document.documentElement.style.getPropertyPriority("transform-origin");
|
|
|
- document.documentElement.style.setProperty("transform-origin", "50% 0", "important");
|
|
|
+ document.documentElement.style.setProperty("transform-origin", (zoomFactorX < 1 ? "50%" : "0") + " " + (zoomFactorY < 1 ? "50%" : "0") + " 0", "important");
|
|
|
document.documentElement.style.setProperty("transform", "scale3d(" + zoomFactor + ", " + zoomFactor + ", 1)", "important");
|
|
|
dispatchEvent(new UIEvent("resize"));
|
|
|
dispatchEvent(new UIEvent("scroll"));
|