diff --git a/src/components/MangaGrid.tsx b/src/components/MangaGrid.tsx index 3ba4cab2..13917448 100644 --- a/src/components/MangaGrid.tsx +++ b/src/components/MangaGrid.tsx @@ -24,18 +24,21 @@ const GridContainer = React.forwardRef(({ )); -const GridItemContainerWithDimension = - (dimensions: number, itemWidth: number, gridLayout?: GridLayout, maxColumns: number = 12) => - ({ children, ...itemProps }: GridTypeMap['props'] & Partial) => { - const itemsPerRow = Math.ceil(dimensions / itemWidth); - const columnsPerItem = gridLayout === GridLayout.List ? maxColumns : maxColumns / itemsPerRow; +const GridItemContainerWithDimension = ( + dimensions: number, + itemWidth: number, + gridLayout?: GridLayout, + maxColumns: number = 12, +) => { + const itemsPerRow = Math.ceil(dimensions / itemWidth); + const columnsPerItem = gridLayout === GridLayout.List ? maxColumns : maxColumns / itemsPerRow; - return ( - - {children} - - ); - }; + return ({ children, ...itemProps }: GridTypeMap['props'] & Partial) => ( + + {children} + + ); +}; const createMangaCard = (manga: IMangaCard, gridLayout?: GridLayout, inLibraryIndicator?: boolean) => ( @@ -188,7 +191,7 @@ const MangaGrid: React.FC = (props) => { }); }; - useLayoutEffect(updateGridWidth, []); + useLayoutEffect(() => updateGridWidth, [gridRef.current?.offsetWidth, gridRef.current?.offsetHeight]); useEffect(() => { let movementTimer: NodeJS.Timeout;