}, true);
window.addEventListener('keydown', function keydown(evt) {
+ var cmd = 0;
+ if (evt.ctrlKey) cmd |= 1;
+ if (evt.altKey) cmd |= 2;
+ if (evt.shiftKey) cmd |= 4;
+ if (evt.metaKey) cmd |= 8;
+
+ var handled = false;
+
+ // First, handle the key bindings that are independent whether an input
+ // control is selected or not.
+ if (cmd == 1 || cmd == 8) { // either CTRL or META key.
+ 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.parseScale(kDefaultScale, true);
+ handled = true;
+ break;
+ }
+ }
+
+ if (handled) {
+ evt.preventDefault();
+ return;
+ }
+
+ // Some shortcuts should not get handled if a control/input element
+ // is selected.
var curElement = document.activeElement;
if (curElement && curElement.tagName == 'INPUT')
return;
curElement = curElement.parentNode;
}
- var cmd = 0;
- if (evt.ctrlKey) cmd |= 1;
- if (evt.altKey) cmd |= 2;
- if (evt.shiftKey) cmd |= 4;
- if (evt.metaKey) cmd |= 8;
-
- var handled = false;
if (cmd == 0) { // no control key pressed at all.
switch (evt.keyCode) {
case 37: // left arrow
break;
}
}
- else if (cmd == 1 || cmd == 8) { // either CTRL or META key.
- 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.parseScale(kDefaultScale, true);
- handled = true;
- break;
- }
- }
if (handled) {
evt.preventDefault();