From f859618fca14e72667563d7ee03a8abff1c35452 Mon Sep 17 00:00:00 2001 From: Yann Amsellem Date: Thu, 16 Jan 2025 13:10:09 +0100 Subject: [PATCH] fix(tabs): enable scrolling if too many tabs opened --- src/routes/+page.svelte | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) 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()}