From 4d8ac0717d921b71c343bbfb5e7faba5d9bb82f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Ml=C3=A1dek?= Date: Sun, 31 Mar 2024 16:24:05 +0200 Subject: [PATCH] fix(webui): don't disappear selectors while adding entries if input has been made --- webui/src/lib/components/utils/Selector.svelte | 1 + webui/src/lib/components/widgets/EntryList.svelte | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/webui/src/lib/components/utils/Selector.svelte b/webui/src/lib/components/utils/Selector.svelte index 0c0bf75..484ba07 100644 --- a/webui/src/lib/components/utils/Selector.svelte +++ b/webui/src/lib/components/utils/Selector.svelte @@ -145,6 +145,7 @@ current = undefined; dispatch('input', current); } + $: if (!inputValue) reset(); let options: SelectorOption[] = []; let searchResult: UpListing | undefined = undefined; diff --git a/webui/src/lib/components/widgets/EntryList.svelte b/webui/src/lib/components/widgets/EntryList.svelte index e1c4b37..785b32d 100644 --- a/webui/src/lib/components/widgets/EntryList.svelte +++ b/webui/src/lib/components/widgets/EntryList.svelte @@ -56,7 +56,7 @@ let newEntryValue: SelectorValue | undefined; $: if (adding && newAttrSelector) newAttrSelector.focus(); - $: if (!addFocus && !addHover) adding = false; + $: if (!addFocus && !addHover && !newEntryAttribute && !newEntryValue) adding = false; async function addEntry(attribute: string, value: SelectorValue) { dispatch('change', { @@ -352,7 +352,7 @@
(newEntryAttribute = ev.detail.name)} + on:input={(ev) => (newEntryAttribute = ev.detail?.name)} on:focus={(ev) => (addFocus = ev.detail)} keepFocusOnSet bind:this={newAttrSelector}