From 0fc5c69b3f95ed6d0e9d6e794ffb8a2a9194f38b Mon Sep 17 00:00:00 2001 From: Hyunje Jun Date: Tue, 18 Oct 2016 11:49:20 +0900 Subject: [PATCH] Add metaKey and altKey handling in keyboard handler Resolve #549. --- src/js/plugin/handler/keyboard.js | 32 +++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/src/js/plugin/handler/keyboard.js b/src/js/plugin/handler/keyboard.js index 5c4db17..b23a3bd 100644 --- a/src/js/plugin/handler/keyboard.js +++ b/src/js/plugin/handler/keyboard.js @@ -71,16 +71,40 @@ function bindKeyboardHandler(element, i) { switch (e.which) { case 37: // left - deltaX = -30; + if (e.metaKey) { + deltaX = -i.contentWidth; + } else if (e.altKey) { + deltaX = -i.containerWidth; + } else { + deltaX = -30; + } break; case 38: // up - deltaY = 30; + if (e.metaKey) { + deltaY = i.contentHeight; + } else if (e.altKey) { + deltaY = i.containerHeight; + } else { + deltaY = 30; + } break; case 39: // right - deltaX = 30; + if (e.metaKey) { + deltaX = i.contentWidth; + } else if (e.altKey) { + deltaX = i.containerWidth; + } else { + deltaX = 30; + } break; case 40: // down - deltaY = -30; + if (e.metaKey) { + deltaY = -i.contentHeight; + } else if (e.altKey) { + deltaY = -i.containerHeight; + } else { + deltaY = -30; + } break; case 33: // page up deltaY = 90;