diff --git a/src/lib/components/atoms/RowVirtualizer.svelte b/src/lib/components/atoms/RowVirtualizer.svelte index 444b9c7..5a6ba8d 100644 --- a/src/lib/components/atoms/RowVirtualizer.svelte +++ b/src/lib/components/atoms/RowVirtualizer.svelte @@ -34,27 +34,30 @@ if (!element) return; const observer = new ResizeObserver(() => { - scrollMargin = element!.getBoundingClientRect().top + window.scrollY; + scrollMargin = Math.round(element!.getBoundingClientRect().top + window.scrollY); }); observer.observe(element.parentElement!); return () => observer.disconnect(); }); -
-
- {#each $virtualizer.getVirtualItems() as virtualItem (virtualItem.key)} -
- {@render item(virtualItem.index)} -
- {/each} -
- {#if placeholder && $virtualizer.getVirtualItems().length === 0} - {@render placeholder()} - {/if} +
+ {#each $virtualizer.getVirtualItems() as virtualItem (virtualItem.key)} +
+ {@render item(virtualItem.index)} +
+ {/each}
+ +{#if placeholder && $virtualizer.getVirtualItems().length === 0} + {@render placeholder()} +{/if} diff --git a/src/lib/components/organisms/Gallery.svelte b/src/lib/components/organisms/Gallery.svelte index dc9f157..f1a7eb3 100644 --- a/src/lib/components/organisms/Gallery.svelte +++ b/src/lib/components/organisms/Gallery.svelte @@ -49,11 +49,7 @@ - rows[index]!.type === "header" - ? 28 - : Math.ceil(rows[index]!.files.length / 4) * 181 + - (Math.ceil(rows[index]!.files.length / 4) - 1) * 4 + - 16} + rows[index]!.type === "header" ? 28 : 181 + (rows[index]!.isLast ? 16 : 4)} class="flex flex-grow flex-col" > {#snippet item(index)}