From c80633fd9f4b289290d036edb66e345407abc5b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?marcin=20miko=C5=82ajczak?= Date: Sat, 3 Jun 2023 20:55:04 +0200 Subject: [PATCH] Media modal: Restore navigationHidden functionality MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: marcin mikołajczak --- .../ui/components/modals/media-modal.tsx | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/app/soapbox/features/ui/components/modals/media-modal.tsx b/app/soapbox/features/ui/components/modals/media-modal.tsx index 959c433fd..875506175 100644 --- a/app/soapbox/features/ui/components/modals/media-modal.tsx +++ b/app/soapbox/features/ui/components/modals/media-modal.tsx @@ -15,6 +15,7 @@ import PlaceholderStatus from 'soapbox/features/placeholder/components/placehold import Thread from 'soapbox/features/status/components/thread'; import Video from 'soapbox/features/video'; import { useAppDispatch, useAppSelector } from 'soapbox/hooks'; +import { isUserTouching } from 'soapbox/is-mobile'; import { makeGetStatus } from 'soapbox/selectors'; import ImageLoader from '../image-loader'; @@ -78,6 +79,8 @@ const MediaModal: React.FC = (props) => { const handleNextClick = () => setIndex((getIndex() + 1) % media.size); const handlePrevClick = () => setIndex((media.size + getIndex() - 1) % media.size); + const navigationHiddenClassName = navigationHidden ? 'pointer-events-none opacity-0' : ''; + const handleKeyDown = (e: KeyboardEvent) => { switch (e.key) { case 'ArrowLeft': @@ -101,7 +104,7 @@ const MediaModal: React.FC = (props) => { const getIndex = () => index !== null ? index : props.index; const toggleNavigation = () => { - setNavigationHidden(!navigationHidden); + setNavigationHidden(value => !value && isUserTouching()); }; const handleStatusClick: React.MouseEventHandler = e => { @@ -251,7 +254,11 @@ const MediaModal: React.FC = (props) => { } justifyContent='between' > - + = (props) => { {/* Height based on height of top/bottom bars */} -
+
{hasMultipleImages && ( -
+
{actualStatus && ( - +