Przeglądaj źródła

create onPressEscHandler function

WNomunomu 2 lat temu
rodzic
commit
c5bb8e8e2b
1 zmienionych plików z 11 dodań i 1 usunięć
  1. 11 1
      apps/app/src/components/TreeItem/NewPageInput.tsx

+ 11 - 1
apps/app/src/components/TreeItem/NewPageInput.tsx

@@ -1,4 +1,4 @@
-import React, { FC } from 'react';
+import React, { FC, useCallback, useEffect } from 'react';
 
 import nodePath from 'path';
 
@@ -73,6 +73,16 @@ export const NewPageInput: FC<NewPageInputProps> = (props) => {
     }
   };
 
+  const onPressEscHandler = useCallback((event) => {
+    if (event.keyCode === 27) {
+      setNewPageInputShown(false);
+    }
+  }, []);
+
+  useEffect(() => {
+    document.addEventListener('keydown', onPressEscHandler, false);
+  }, [onPressEscHandler]);
+
   return (
     <>
       {isEnableActions && isNewPageInputShown && (