From a0b0a558c0422ccba4ae35333ccbae3bd38a7183 Mon Sep 17 00:00:00 2001 From: Jose Manuel Serrano Amaut <a20122128@pucp.pe> Date: Sun, 12 Mar 2023 21:35:49 -0500 Subject: [PATCH] [FEAT]: Add onKeyPress listener in FullScreen component --- .../previews/FullScreen/FullScreen.tsx | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/files-ui/components/previews/FullScreen/FullScreen.tsx b/src/files-ui/components/previews/FullScreen/FullScreen.tsx index 4cc9b0f..7574195 100644 --- a/src/files-ui/components/previews/FullScreen/FullScreen.tsx +++ b/src/files-ui/components/previews/FullScreen/FullScreen.tsx @@ -12,6 +12,19 @@ const FullScreen: React.FC<FullScreenProps> = (props: FullScreenProps) => { e.stopPropagation(); onClose?.(); } + React.useEffect(() => { + const handleCloseEsc = (evt: KeyboardEvent) => { + if (evt.key === "Escape") onClose?.(); + }; + console.log("adding listener"); + + document.addEventListener("keydown", handleCloseEsc); + + return () => { + console.log("removing listener"); + document.removeEventListener("keydown", handleCloseEsc); + }; + }, []); return ( <div @@ -19,6 +32,9 @@ const FullScreen: React.FC<FullScreenProps> = (props: FullScreenProps) => { open ? "fui-fullscreen-container show-fs" : "fui-fullscreen-container" } onClick={handleClose} + onKeyPress={(evt) => { + if (evt.key === "Escape") onClose?.(); + }} > {open && ( <div -- GitLab