Merge pull request #4200 from timvandermeij/ie-mousewheel
Implements mouse wheel behaviour for non-Firefox browsers
This commit is contained in:
commit
d45d7bc161
@ -2049,19 +2049,22 @@ window.addEventListener('pagechange', function pagechange(evt) {
|
|||||||
document.getElementById('next').disabled = (page >= PDFView.pages.length);
|
document.getElementById('next').disabled = (page >= PDFView.pages.length);
|
||||||
}, true);
|
}, true);
|
||||||
|
|
||||||
// Firefox specific event, so that we can prevent browser from zooming
|
function handleMouseWheel(evt) {
|
||||||
window.addEventListener('DOMMouseScroll', function(evt) {
|
var MOUSE_WHEEL_DELTA_FACTOR = 40;
|
||||||
if (evt.ctrlKey) {
|
var ticks = (evt.type === 'DOMMouseScroll') ? -evt.detail :
|
||||||
evt.preventDefault();
|
evt.wheelDelta / MOUSE_WHEEL_DELTA_FACTOR;
|
||||||
|
var direction = (ticks < 0) ? 'zoomOut' : 'zoomIn';
|
||||||
|
|
||||||
var ticks = evt.detail;
|
if (evt.ctrlKey) { // Only zoom the pages, not the entire viewer
|
||||||
var direction = (ticks > 0) ? 'zoomOut' : 'zoomIn';
|
evt.preventDefault();
|
||||||
PDFView[direction](Math.abs(ticks));
|
PDFView[direction](Math.abs(ticks));
|
||||||
} else if (PresentationMode.active) {
|
} else if (PresentationMode.active) {
|
||||||
var FIREFOX_DELTA_FACTOR = -40;
|
PDFView.mouseScroll(ticks * MOUSE_WHEEL_DELTA_FACTOR);
|
||||||
PDFView.mouseScroll(evt.detail * FIREFOX_DELTA_FACTOR);
|
|
||||||
}
|
}
|
||||||
}, false);
|
}
|
||||||
|
|
||||||
|
window.addEventListener('DOMMouseScroll', handleMouseWheel);
|
||||||
|
window.addEventListener('mousewheel', handleMouseWheel);
|
||||||
|
|
||||||
window.addEventListener('click', function click(evt) {
|
window.addEventListener('click', function click(evt) {
|
||||||
if (!PresentationMode.active) {
|
if (!PresentationMode.active) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user