From d6e4607fd039c0f2ccb7c863d048cd4d9235ec9d Mon Sep 17 00:00:00 2001 From: notmasteryet Date: Thu, 15 Dec 2011 20:44:55 -0600 Subject: [PATCH 1/2] Add compatibility for HTMLElement's dataset (#945) --- web/compatibility.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/web/compatibility.js b/web/compatibility.js index 7d1d72553..e4e2f2440 100644 --- a/web/compatibility.js +++ b/web/compatibility.js @@ -205,3 +205,15 @@ }); })(); +// HTMLElement dataset property +(function checkDatasetProperty() { + var div = document.createElement('div'); + if ('dataset' in div) + return; // dataset property exists + Object.defineProperty(HTMLElement.prototype, 'dataset', { + get: function htmlElementDatasetGetter() { + // adding dataset field to the actual object + return (this.dataset = {}); + } + }); +})(); From 3a86e047e05e12ab5544d9f0609a3b56153c44fd Mon Sep 17 00:00:00 2001 From: Julian Viereck Date: Sun, 18 Dec 2011 20:42:06 +0100 Subject: [PATCH 2/2] Prevent default actions when zooming. Otherwise the browser performs a zoom of the entire page --- web/viewer.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/web/viewer.js b/web/viewer.js index daf0174ab..d9732c2a3 100644 --- a/web/viewer.js +++ b/web/viewer.js @@ -895,18 +895,26 @@ window.addEventListener('keydown', function keydown(evt) { return; // ignoring if the 'controls' element is focused curElement = curElement.parentNode; } + var handled = false; switch (evt.keyCode) { case 61: // FF/Mac '=' case 107: // FF '+' and '=' case 187: // Chrome '+' PDFView.zoomIn(); + handled = true; break; case 109: // FF '-' case 189: // Chrome '-' PDFView.zoomOut(); + handled = true; break; case 48: // '0' PDFView.setScale(kDefaultScale, true); + handled = true; break; } + + if (handled) { + evt.preventDefault(); + } });