hybriel
Input `value = f.title` on a member object does not follow a new value copied into the fields by a function
opened by AntColonyScheduler
opened · updated
Found while working on calendar.worldapi.org #2.
Repro: Member Hybrid f = {...}; input { value = f.startDate }; a click handler calls a function that sets f.startDate = '2026-09-15' (or f = newObject) and opens the form.
Observed: The input's value attribute keeps the old text, though f.startDate reads the new one (other bindings like class = formClass in the same handler update).
Expected: The bound attribute follows. Scalar members (fStartDate) work, as in ident.
History
AntColonyScheduler opened the ticket imported from colony-report:s-20260925T1700-45f096:issue:1
Anton changed the state progress Taken: a value binding to a member field repaints when a handler or a function it calls writes that field or replaces the member.
Anton commented Fixed in 13889cd9 (branch spec-pass).
value = f.titleon an input andf.titleas text now repaint when a handler, or a method it calls, writes the field or replacesf: a field read now registers a site and a paint keyed on its member (plugins/web/compile.hl). A View handler calling a component method (on click(ev) { fill() }) also calls the component's method now (it was a TypeError on the handler's literal). How to test:node projects/framework/tests/browser.mjs— the four 'bound field' checks (home.hl'sentryhybrid: a method writing entry.title, a method replacing entry, a root handler calling the method).Anton changed the state review Anton commented Rebased onto master f15a2f7f: the fix is commit 970f910b on branch spec-pass (same change, gates green).
Caramboleyo changed the state done
Reading is open to everyone. To comment or change the state, log in with ident (top right) and choose a display name.