Browse Source

Add ctrl-s shortcut to save a game

Jeremie Pardou-Piquemal 1 year ago
parent
commit
492c9f33bb
2 changed files with 12 additions and 1 deletions
  1. 1 1
      src/views/BoardView/NavBar.jsx
  2. 11 0
      src/views/BoardView/SaveExportModal.jsx

+ 1 - 1
src/views/BoardView/NavBar.jsx

@@ -280,7 +280,7 @@ const NavBar = ({ editMode, title }) => {
             onClick={() => setShowInfoModal((prev) => !prev)}
             alt={t("Help & info")}
             title={t("Help & info")}
-            icon={"info"}
+            icon={"help"}
           />
         </div>
       </StyledNavBar>

+ 11 - 0
src/views/BoardView/SaveExportModal.jsx

@@ -26,6 +26,17 @@ const SaveExportGameModal = ({ show, setShow }) => {
     setShow(false);
   }, [saveGame, setShow, t]);
 
+  React.useEffect(() => {
+    const callback = (e) => {
+      if (e.ctrlKey && e.key === "s") {
+        e.preventDefault();
+        handleSave();
+      }
+    };
+    window.addEventListener("keydown", callback);
+    return () => window.removeEventListener("keydown", callback);
+  }, [handleSave]);
+
   return (
     <Modal title={t("Save & export")} setShow={setShow} show={show}>
       <header>