Merge pull request #7097 from prometheansacrifice/zoom-due-to-scroll-inertia
Prevents document zooming if still scrolling and meta keys pressed (Issue #7022)
This commit is contained in:
commit
f351eb23aa
10
web/app.js
10
web/app.js
@ -1823,6 +1823,7 @@ window.addEventListener('pagechange', function pagechange(evt) {
|
|||||||
}
|
}
|
||||||
}, true);
|
}, true);
|
||||||
|
|
||||||
|
var zoomDisabled = false, zoomDisabledTimeout;
|
||||||
function handleMouseWheel(evt) {
|
function handleMouseWheel(evt) {
|
||||||
var MOUSE_WHEEL_DELTA_FACTOR = 40;
|
var MOUSE_WHEEL_DELTA_FACTOR = 40;
|
||||||
var ticks = (evt.type === 'DOMMouseScroll') ? -evt.detail :
|
var ticks = (evt.type === 'DOMMouseScroll') ? -evt.detail :
|
||||||
@ -1837,7 +1838,8 @@ function handleMouseWheel(evt) {
|
|||||||
} else if (evt.ctrlKey || evt.metaKey) {
|
} else if (evt.ctrlKey || evt.metaKey) {
|
||||||
var support = PDFViewerApplication.supportedMouseWheelZoomModifierKeys;
|
var support = PDFViewerApplication.supportedMouseWheelZoomModifierKeys;
|
||||||
if ((evt.ctrlKey && !support.ctrlKey) ||
|
if ((evt.ctrlKey && !support.ctrlKey) ||
|
||||||
(evt.metaKey && !support.metaKey)) {
|
(evt.metaKey && !support.metaKey) ||
|
||||||
|
zoomDisabled) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// Only zoom the pages, not the entire viewer.
|
// Only zoom the pages, not the entire viewer.
|
||||||
@ -1859,6 +1861,12 @@ function handleMouseWheel(evt) {
|
|||||||
pdfViewer.container.scrollLeft += dx * scaleCorrectionFactor;
|
pdfViewer.container.scrollLeft += dx * scaleCorrectionFactor;
|
||||||
pdfViewer.container.scrollTop += dy * scaleCorrectionFactor;
|
pdfViewer.container.scrollTop += dy * scaleCorrectionFactor;
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
zoomDisabled = true;
|
||||||
|
clearTimeout(zoomDisabledTimeout);
|
||||||
|
zoomDisabledTimeout = setTimeout(function () {
|
||||||
|
zoomDisabled = false;
|
||||||
|
}, 1000);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user