{
dragging = tab.id;
event.dataTransfer?.setData('text/plain', tab.name);
}}
ondragover={(event) => {
if (!dragging) return;
event.preventDefault();
boards.move(dragging, tab.id);
}}
ondragend={() => (dragging = null)}
onclick={() => (boards.active = tab.id)}
ondblclick={() => (boards.renaming = tab.id)}
onauxclick={(event) => event.button === 1 && boards.close(tab.id)}
onkeydown={(event) => {
if (event.key === 'Enter' || event.key === ' ') boards.active = tab.id;
else if (event.key === 'F2') boards.renaming = tab.id;
}}
>
{#if boards.renaming === tab.id}
finish(event, true)}
onkeydown={(event) => {
event.stopPropagation();
if (event.key === 'Enter') event.currentTarget.blur();
else if (event.key === 'Escape') finish(event, false);
}}
/>
{:else}
{tab.name}
{/if}
{#if boards.tabs.length > 1}
{/if}