diff -r 4bed9458d355 -r 83bb0dd7123f ui/gtk/toolkit.c --- a/ui/gtk/toolkit.c Sun Oct 19 21:17:21 2025 +0200 +++ b/ui/gtk/toolkit.c Mon Oct 20 21:16:53 2025 +0200 @@ -544,3 +544,19 @@ ui_set_enabled(widget, FALSE); } } + +void ui_set_widget_visibility_states(UiContext *ctx, GtkWidget *widget, const int *states) { + if(!states) { + return; + } + size_t nstates = uic_group_array_size(states); + ui_set_widget_ngroups(ctx, widget, states, nstates); +} + + +void ui_set_widget_nvisibility_states(UiContext *ctx, GtkWidget *widget, const int *states, size_t ngroups) { + if(ngroups > 0) { + uic_add_group_widget_i(ctx, widget, (ui_enablefunc)ui_set_visible, states, ngroups); + ui_set_visible(widget, FALSE); + } +}