Simplified wheel processing.
This commit is contained in:
parent
6c263c1994
commit
223a18ccc8
3 changed files with 56 additions and 31 deletions
37
web/app.js
37
web/app.js
|
@ -93,6 +93,7 @@ var PDFAttachmentViewer = pdfAttachmentViewerLib.PDFAttachmentViewer;
|
|||
var PDFFindController = pdfFindControllerLib.PDFFindController;
|
||||
var PDFFindBar = pdfFindBarLib.PDFFindBar;
|
||||
var getGlobalEventBus = domEventsLib.getGlobalEventBus;
|
||||
var normalizeWheelEventDelta = uiUtilsLib.normalizeWheelEventDelta;
|
||||
|
||||
var DEFAULT_SCALE_DELTA = 1.1;
|
||||
var MIN_SCALE = 0.25;
|
||||
|
@ -1217,16 +1218,6 @@ var PDFViewerApplication = {
|
|||
this.pdfPresentationMode.request();
|
||||
},
|
||||
|
||||
/**
|
||||
* @param {number} delta - The delta value from the mouse event.
|
||||
*/
|
||||
scrollPresentationMode: function pdfViewScrollPresentationMode(delta) {
|
||||
if (!this.pdfPresentationMode) {
|
||||
return;
|
||||
}
|
||||
this.pdfPresentationMode.mouseScroll(delta);
|
||||
},
|
||||
|
||||
/**
|
||||
* @typedef UpdateUIToolbarParameters
|
||||
* @property {number} pageNumber
|
||||
|
@ -1998,17 +1989,12 @@ function webViewerPageChanging(e) {
|
|||
|
||||
var zoomDisabled = false, zoomDisabledTimeout;
|
||||
function handleMouseWheel(evt) {
|
||||
var MOUSE_WHEEL_DELTA_FACTOR = 40;
|
||||
var ticks = (evt.type === 'DOMMouseScroll') ? -evt.detail :
|
||||
evt.wheelDelta / MOUSE_WHEEL_DELTA_FACTOR;
|
||||
var direction = (ticks < 0) ? 'zoomOut' : 'zoomIn';
|
||||
|
||||
var pdfViewer = PDFViewerApplication.pdfViewer;
|
||||
if (pdfViewer.isInPresentationMode) {
|
||||
evt.preventDefault();
|
||||
PDFViewerApplication.scrollPresentationMode(ticks *
|
||||
MOUSE_WHEEL_DELTA_FACTOR);
|
||||
} else if (evt.ctrlKey || evt.metaKey) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (evt.ctrlKey || evt.metaKey) {
|
||||
var support = PDFViewerApplication.supportedMouseWheelZoomModifierKeys;
|
||||
if ((evt.ctrlKey && !support.ctrlKey) ||
|
||||
(evt.metaKey && !support.metaKey)) {
|
||||
|
@ -2023,7 +2009,15 @@ function handleMouseWheel(evt) {
|
|||
|
||||
var previousScale = pdfViewer.currentScale;
|
||||
|
||||
PDFViewerApplication[direction](Math.abs(ticks));
|
||||
var delta = normalizeWheelEventDelta(evt);
|
||||
|
||||
var MOUSE_WHEEL_DELTA_PER_PAGE_SCALE = 3.0;
|
||||
var ticks = delta * MOUSE_WHEEL_DELTA_PER_PAGE_SCALE;
|
||||
if (ticks < 0) {
|
||||
PDFViewerApplication.zoomOut(-ticks);
|
||||
} else {
|
||||
PDFViewerApplication.zoomIn(ticks);
|
||||
}
|
||||
|
||||
var currentScale = pdfViewer.currentScale;
|
||||
if (previousScale !== currentScale) {
|
||||
|
@ -2046,8 +2040,7 @@ function handleMouseWheel(evt) {
|
|||
}
|
||||
}
|
||||
|
||||
window.addEventListener('DOMMouseScroll', handleMouseWheel);
|
||||
window.addEventListener('mousewheel', handleMouseWheel);
|
||||
window.addEventListener('wheel', handleMouseWheel);
|
||||
|
||||
window.addEventListener('click', function click(evt) {
|
||||
if (!PDFViewerApplication.secondaryToolbar.isOpen) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue