From a8fb7ff11e292d782fe61148d32a47e422cb0637 Mon Sep 17 00:00:00 2001 From: Kendall Garner <17521368+kgarner7@users.noreply.github.com> Date: Wed, 14 May 2025 08:25:02 -0700 Subject: [PATCH] fullscreen header image on click --- .../shared/components/library-header.tsx | 45 +++++++++++++++++-- 1 file changed, 42 insertions(+), 3 deletions(-) diff --git a/src/renderer/features/shared/components/library-header.tsx b/src/renderer/features/shared/components/library-header.tsx index 46f62b8b..9bb9b833 100644 --- a/src/renderer/features/shared/components/library-header.tsx +++ b/src/renderer/features/shared/components/library-header.tsx @@ -1,5 +1,6 @@ -import { forwardRef, ReactNode, Ref, useState } from 'react'; -import { Group } from '@mantine/core'; +import { forwardRef, ReactNode, Ref, useCallback, useState } from 'react'; +import { Center, Group } from '@mantine/core'; +import { closeAllModals, openModal } from '@mantine/modals'; import { AutoTextSize } from 'auto-text-size'; import clsx from 'clsx'; import { useTranslation } from 'react-i18next'; @@ -58,6 +59,35 @@ export const LibraryHeader = forwardRef( } }; + const openImage = useCallback(() => { + if (imageUrl && !isImageError) { + const fullSized = imageUrl.replace(/&?(size|width|height)=\d+/, ''); + + openModal({ + children: ( +
closeAllModals()} + > + cover +
+ ), + fullScreen: true, + }); + } + }, [imageUrl, isImageError]); + return (
-
+
openImage()} + onKeyDown={(event) => + ['Spacebar', ' ', 'Enter'].includes(event.key) && openImage() + } + > {imageUrl && !isImageError ? (