Browse Source

Merge pull request #4200 from timvandermeij/ie-mousewheel

Implements mouse wheel behaviour for non-Firefox browsers
Yury Delendik 11 years ago
parent
commit
d45d7bc161
  1. 21
      web/viewer.js

21
web/viewer.js

@ -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…
Cancel
Save