static void gtk_menu_section_box_sync_item (GtkWidget *widget, gpointer user_data) { gint *n_items = user_data; if (GTK_IS_MENU_SECTION_BOX (widget)) gtk_menu_section_box_sync_separators (GTK_MENU_SECTION_BOX (widget), n_items); else (*n_items)++; }
static void gtk_menu_section_box_sync_item (GtkWidget *widget, gpointer user_data) { MenuData *data = (MenuData *)user_data; if (GTK_IS_MENU_SECTION_BOX (widget)) gtk_menu_section_box_sync_separators (GTK_MENU_SECTION_BOX (widget), data); else data->n_items++; }
static gboolean gtk_menu_section_box_handle_sync_separators (gpointer user_data) { GtkMenuSectionBox *box = user_data; gint n_items = 0; gtk_menu_section_box_sync_separators (box, &n_items); box->separator_sync_idle = 0; return G_SOURCE_REMOVE; }
static gboolean gtk_menu_section_box_handle_sync_separators (gpointer user_data) { GtkMenuSectionBox *box = user_data; MenuData data; data.n_items = 0; data.previous_is_iconic = FALSE; gtk_menu_section_box_sync_separators (box, &data); box->separator_sync_idle = 0; return G_SOURCE_REMOVE; }