(open = detail)} on:naturalWidth type="Dropdown" windowEdgeMargin={0} escapeCloses={false} {direction} {minWidth} scrollableY={scrollableY && virtualScrollingEntryHeight === 0} bind:this={self} > {#if search.length > 0} (search = detail)} bind:this={searchTextInput}> {/if} {#if virtualScrollingEntryHeight} {/if} {#each reactiveEntries as section, sectionIndex (sectionIndex)} {#if includeSeparator(reactiveEntries, section, sectionIndex, search)} {/if} {#each currentEntries(section, virtualScrollingEntryHeight, virtualScrollingStartIndex, virtualScrollingEndIndex, search) as entry, entryIndex (entryIndex + startIndex)} !entry.disabled && onEntryClick(entry)} on:pointerenter={() => !entry.disabled && onEntryPointerEnter(entry)} on:pointerleave={() => !entry.disabled && onEntryPointerLeave(entry)} > {#if entry.icon && drawIcon} {:else if drawIcon}
{/if} {#if entry.font} { document.fonts.load(`16px "${entry.value}"`).then(() => { loadedFonts.add(entry.value); loadedFontsGeneration += 1; // Modify the dirty trigger }); }} /> {/if} {#if entry.tooltipShortcut?.shortcut.length} {/if} {#if entry.children?.length} {:else}
{/if} {#if entry.children} { // We do a manual dispatch here instead of just `on:naturalWidth` as a workaround for the