diff --git a/src/components/MetaPreview/MetaPreview.js b/src/components/MetaPreview/MetaPreview.js index c4eb47c0a..c0e9fb165 100644 --- a/src/components/MetaPreview/MetaPreview.js +++ b/src/components/MetaPreview/MetaPreview.js @@ -24,7 +24,7 @@ const ALLOWED_LINK_REDIRECTS = [ routesRegexp.metadetails.regexp ]; -const MetaPreview = ({ className, compact, name, logo, background, runtime, releaseInfo, released, description, deepLinks, links, trailerStreams, inLibrary, toggleInLibrary }) => { +const MetaPreview = React.forwardRef(({ className, compact, name, logo, background, runtime, releaseInfo, released, description, deepLinks, links, trailerStreams, inLibrary, toggleInLibrary }, ref) => { const { t } = useTranslation(); const [shareModalOpen, openShareModal, closeShareModal] = useBinaryState(false); const linksGroups = React.useMemo(() => { @@ -98,7 +98,7 @@ const MetaPreview = ({ className, compact, name, logo, background, runtime, rele
{name}
), [name]); return ( -
+
{ typeof background === 'string' && background.length > 0 ?
@@ -261,7 +261,7 @@ const MetaPreview = ({ className, compact, name, logo, background, runtime, rele
); -}; +}); MetaPreview.Placeholder = MetaPreviewPlaceholder; diff --git a/src/routes/Discover/Discover.js b/src/routes/Discover/Discover.js index 59279a4c3..a1472d38e 100644 --- a/src/routes/Discover/Discover.js +++ b/src/routes/Discover/Discover.js @@ -20,18 +20,9 @@ const Discover = ({ urlParams, queryParams }) => { const [inputsModalOpen, openInputsModal, closeInputsModal] = useBinaryState(false); const [addonModalOpen, openAddonModal, closeAddonModal] = useBinaryState(false); const [selectedMetaItemIndex, setSelectedMetaItemIndex] = React.useState(0); - const [showMetaPreview, setShowMetaPreview] = React.useState(window.innerWidth > 1000); const metasContainerRef = React.useRef(); - React.useEffect(() => { - const handleResize = () => { - setShowMetaPreview(window.innerWidth > 1000); - }; - window.addEventListener('resize', handleResize); - return () => { - window.removeEventListener('resize', handleResize); - }; - }, []); + const metaPreviewRef = React.useRef(); React.useEffect(() => { if (discover.catalog?.content.type === 'Loading') { @@ -87,7 +78,8 @@ const Discover = ({ urlParams, queryParams }) => { } }, []); const metaItemOnClick = React.useCallback((event) => { - if (event.currentTarget.dataset.index !== selectedMetaItemIndex.toString() && showMetaPreview) { + const visible = window.getComputedStyle(metaPreviewRef.current).display !== 'none'; + if (event.currentTarget.dataset.index !== selectedMetaItemIndex.toString() && visible) { event.preventDefault(); event.currentTarget.focus(); } @@ -184,24 +176,23 @@ const Discover = ({ urlParams, queryParams }) => {
{ selectedMetaItem !== null ? - showMetaPreview ? - - : null + : discover.catalog !== null && discover.catalog.content.type === 'Loading' ?
diff --git a/src/routes/Discover/styles.less b/src/routes/Discover/styles.less index c4a38ee9c..7f445d7ee 100644 --- a/src/routes/Discover/styles.less +++ b/src/routes/Discover/styles.less @@ -341,6 +341,10 @@ } } } + + .meta-preview-container { + display: none; + } } } @@ -354,6 +358,10 @@ } } } + + .meta-preview-container { + display: none; + } } }