diff --git a/src/view/com/lightbox/Lightbox.web.tsx b/src/view/com/lightbox/Lightbox.web.tsx index f10548351e..c17356d943 100644 --- a/src/view/com/lightbox/Lightbox.web.tsx +++ b/src/view/com/lightbox/Lightbox.web.tsx @@ -1,4 +1,4 @@ -import React from 'react' +import React, {useCallback, useEffect} from 'react' import { Image, TouchableOpacity, @@ -73,6 +73,20 @@ function LightboxInner({ } } + const onEscape = useCallback( + (e: KeyboardEvent) => { + if (e.key === 'Escape') { + onClose() + } + }, + [onClose], + ) + + useEffect(() => { + window.addEventListener('keydown', onEscape) + return () => window.removeEventListener('keydown', onEscape) + }, [onEscape]) + return (