Use Mousetrap for image viewer shortcuts

This commit is contained in:
Jérémie Astori 2017-09-23 21:59:39 -04:00
parent 77714accca
commit 2c0fc67ab9
No known key found for this signature in database
GPG Key ID: B9A4F245CD67BDE8

View File

@ -5,6 +5,7 @@ const options = require("./options");
const socket = require("./socket");
const templates = require("../views");
const input = $("#input");
const Mousetrap = require("mousetrap");
module.exports = renderPreview;
@ -111,21 +112,12 @@ imageViewer.on("click", function(event, data = {}) {
closeImageViewer(data);
});
$(document).keydown(function(e) {
switch (e.keyCode ? e.keyCode : e.which) {
case 27: // Escape
closeImageViewer();
break;
case 37: // Left arrow
Mousetrap.bind("esc", () => closeImageViewer());
Mousetrap.bind(["left", "right"], (e, key) => {
if (imageViewer.hasClass("opened")) {
imageViewer.find(".previous-image-btn").click();
}
break;
case 39: // Right arrow
if (imageViewer.hasClass("opened")) {
imageViewer.find(".next-image-btn").click();
}
break;
const direction = key === "left" ? "previous" : "next";
imageViewer.find(`.${direction}-image-btn`).click();
}
});