--- a/ui/server/window.c Thu Dec 11 21:05:40 2025 +0100 +++ b/ui/server/window.c Fri Dec 12 11:38:47 2025 +0100 @@ -97,19 +97,7 @@ cxBufferPutString(&buf, "\""); } - size_t numchildren = cxListSize(w->widget.children); - if(numchildren > 0) { - cxBufferPutString(&buf, ",\"children\":["); - CxIterator i = cxListIterator(w->widget.children); - cx_foreach(UiWidget *, child, i) { - cxmutstr child_str = child->serialize(child); - cxBufferWrite(child_str.ptr, 1, child_str.length, &buf); - if(i.index+1 < numchildren) { - cxBufferPut(&buf, ','); - } - } - cxBufferPutString(&buf, "]"); - } + ui_serialize_children(&w->widget, &buf); cxBufferPutString(&buf, "}\n");