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;
+ }
}
}