[READ-ONLY] Mirror of https://github.com/probablykasper/ferrum. Music library app for Mac, Linux and Windows ferrum.kasper.space
electron linux macos music music-library music-player napi windows
0

Configure Feed

Select the types of activity you want to include in your feed.

Refresh VirtualListBlock on resize

Kasper (Sep 12, 2024, 2:08 AM +0200) d7ad095c d6baf176

+11 -1
+11 -1
src/components/VirtualListBlock.svelte
··· 6 6 7 7 export let items: X[] 8 8 export let item_height: number 9 + /** Must be a positioned element, like `position: relative` */ 9 10 export let scroll_container: HTMLElement 10 - export let get_key: (item: X, i: number) => number | string 11 + export let get_key: (item: X, i: number) => number | string = (_, i) => i 11 12 export let buffer = 0 12 13 13 14 $: height = items.length * item_height ··· 21 22 $: { 22 23 items, item_height, buffer 23 24 if (scroll_container && main_element) refresh() 25 + } 26 + 27 + const resize_observer = new ResizeObserver(refresh) 28 + $: observe(scroll_container) 29 + function observe(scroll_container: HTMLElement | undefined) { 30 + resize_observer.disconnect() 31 + if (scroll_container) { 32 + resize_observer.observe(scroll_container) 33 + } 24 34 } 25 35 26 36 function refresh() {