diff --git a/opal-web/src/lib/components/TaskDetail.svelte b/opal-web/src/lib/components/TaskDetail.svelte index d8dd6d4..986817f 100644 --- a/opal-web/src/lib/components/TaskDetail.svelte +++ b/opal-web/src/lib/components/TaskDetail.svelte @@ -402,6 +402,12 @@ {/if} + {:else} + +
startEdit('scheduled')}> + Scheduled + Set... +
{/if} @@ -425,6 +431,12 @@ {/if} + {:else} + +
startEdit('wait')}> + Wait + Set... +
{/if} @@ -448,6 +460,12 @@ {/if} + {:else} + +
startEdit('until')}> + Until + Set... +
{/if} diff --git a/opal-web/src/routes/+page.svelte b/opal-web/src/routes/+page.svelte index 1bbb41e..ec20157 100644 --- a/opal-web/src/routes/+page.svelte +++ b/opal-web/src/routes/+page.svelte @@ -37,6 +37,11 @@ // Subscribe to store const unsubscribe = tasksStore.subscribe(value => { tasks = value; + // Keep selectedTask in sync with store changes + if (selectedTask) { + const updated = value.find(t => t.uuid === selectedTask.uuid); + if (updated) selectedTask = updated; + } }); onMount(() => { @@ -197,10 +202,6 @@ async function handleUpdate(uuid, updates) { try { await tasksStore.updateTask(uuid, updates); - // Keep selectedTask fresh - if (selectedTask?.uuid === uuid) { - selectedTask = { ...selectedTask, ...updates }; - } } catch (error) { console.error('Failed to update task:', error); }