diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 1e84124..28c7e3f 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -22,7 +22,7 @@ import { tabRepository, type Tab } from '$lib/repositories/tabs'; import { SplitPane } from '@rich_harris/svelte-split-pane'; import debounce from 'p-debounce'; - import type { ComponentProps } from 'svelte'; + import { tick, type ComponentProps } from 'svelte'; let response = $state.raw(); let loading = $state(false); @@ -179,6 +179,7 @@ 2_000 ); + let tabContainer: HTMLDivElement; let selectedTabIndex = $state(0); const currentTab = $derived(tabs[selectedTabIndex]); const canSave = $derived.by(() => { @@ -193,6 +194,7 @@ function addNewTab() { selectedTabIndex = tabs.push({ id: crypto.randomUUID(), name: 'Untitled', contents: '' }) - 1; + tick().then(() => tabContainer.scroll({ left: tabContainer.scrollWidth })); } function closeTab(index: number) { @@ -254,7 +256,7 @@ {#snippet a()}