--- a/ui/cocoa/button.m Tue Apr 21 21:09:39 2026 +0200 +++ b/ui/cocoa/button.m Wed Apr 22 10:07:54 2026 +0200 @@ -47,12 +47,14 @@ button.image = ui_cocoa_named_icon(args->icon);; } - if(args->onclick) { + if(args->onclick || args->action) { EventData *event = [[EventData alloc] init:args->onclick userdata:args->onclickdata action:args->action]; event.obj = obj; button.target = event; button.action = @selector(handleEvent:); objc_setAssociatedObject(button, "eventdata", event, OBJC_ASSOCIATION_RETAIN); + + ui_cocoa_view_bind_action(obj->ctx, button, args->action); } UiLayout layout = UI_INIT_LAYOUT(args);