From ac28fe01622122b63563546408a005a5ba9b2f3f Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Tue, 25 Apr 2023 17:23:58 +0400 Subject: [PATCH] Media Viewer: Fix stuck UI after deleting media message (#3047) --- src/components/mediaViewer/MediaViewer.tsx | 1 + src/components/mediaViewer/MediaViewerSlides.tsx | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/src/components/mediaViewer/MediaViewer.tsx b/src/components/mediaViewer/MediaViewer.tsx index c0e4073c5..5a6b4d95f 100644 --- a/src/components/mediaViewer/MediaViewer.tsx +++ b/src/components/mediaViewer/MediaViewer.tsx @@ -151,6 +151,7 @@ const MediaViewer: FC = ({ } const [getIsPictureInPicture] = usePictureInPictureSignal(); + useEffect(() => { if (!isOpen || getIsPictureInPicture()) { return undefined; diff --git a/src/components/mediaViewer/MediaViewerSlides.tsx b/src/components/mediaViewer/MediaViewerSlides.tsx index adae19ef9..96ddb5efd 100644 --- a/src/components/mediaViewer/MediaViewerSlides.tsx +++ b/src/components/mediaViewer/MediaViewerSlides.tsx @@ -143,6 +143,10 @@ const MediaViewerSlides: FC = ({ useTimeout(() => setControlsVisible(true), ANIMATION_DURATION); + useEffect(() => { + setActiveMediaId(mediaId); + }, [mediaId, setActiveMediaId]); + useLayoutEffect(() => { const { x, y, scale } = getTransform(); lockControls(scale !== 1);