From 16a6fa946a9f245fa3347d3ff7107ae8dd79eb61 Mon Sep 17 00:00:00 2001 From: Sharon Stratsianis Date: Thu, 19 Mar 2026 17:51:55 +1100 Subject: [PATCH] set updating on click --- src/widgets/forms.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/widgets/forms.js b/src/widgets/forms.js index 4c69ecd0..7cfdc84a 100644 --- a/src/widgets/forms.js +++ b/src/widgets/forms.js @@ -1879,7 +1879,14 @@ export function buildCheckboxForm (dom, kb, lab, del, ins, form, dataDoc, trista refresh() if (!editable) return box + let isUpdating = false // Prevent concurrent updates on double-click + const boxHandler = function (_e) { + if (isUpdating) { + return // Ignore clicks while update is in progress + } + isUpdating = true + input.disabled = true // Disable button to provide user feedback colorCarrier.style.color = '#bbb' // grey -- not saved yet const toDelete = input.state === true ? ins : input.state === false ? del : [] input.newState = @@ -1900,6 +1907,8 @@ export function buildCheckboxForm (dom, kb, lab, del, ins, form, dataDoc, trista success, errorBody ) { + isUpdating = false + input.disabled = false if (!success) { if (toDelete.why) { const hmmm = kb.holds(