From 1d2c158ebe15efe892c790aa7813db836869592e Mon Sep 17 00:00:00 2001 From: Alejandro Alonso Date: Tue, 19 May 2026 16:30:36 +0200 Subject: [PATCH] :bug: Fix commit pending numeric input on unmount without blur side effects --- .../src/app/main/ui/ds/controls/numeric_input.cljs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/frontend/src/app/main/ui/ds/controls/numeric_input.cljs b/frontend/src/app/main/ui/ds/controls/numeric_input.cljs index 74e6b9c95a..d0e135aa83 100644 --- a/frontend/src/app/main/ui/ds/controls/numeric_input.cljs +++ b/frontend/src/app/main/ui/ds/controls/numeric_input.cljs @@ -332,6 +332,7 @@ (fn [event] (let [text (dom/get-target-val event)] (mf/set-ref-val! raw-value* text) + (mf/set-ref-val! dirty-ref true) (reset! filter-id* text)))) on-token-apply @@ -389,12 +390,21 @@ (reset! is-open* false))) (when (mf/ref-val dirty-ref) - (apply-value (mf/ref-val raw-value*))) + (apply-value (mf/ref-val raw-value*)) + (mf/set-ref-val! dirty-ref false)) (when (fn? on-blur) (on-blur event)) (dom/blur! (mf/ref-val ref)))) - handle-unmount (h/use-ref-callback handle-blur) + commit-pending-on-unmount + (mf/use-fn + (mf/deps apply-value) + (fn [] + (when (mf/ref-val dirty-ref) + (apply-value (mf/ref-val raw-value*)) + (mf/set-ref-val! dirty-ref false)))) + + handle-unmount (h/use-ref-callback commit-pending-on-unmount) on-key-down (mf/use-fn