Don't update headings in an idle

It is not necessary since flow box invalidation is
all synchronous currently. If that ever changes,
this code will need adjustment.
This commit is contained in:
Matthias Clasen 2017-08-13 09:27:37 -04:00
parent 1efbcb0f82
commit f27d928e33

View File

@ -442,11 +442,9 @@ invalidate_section (EmojiSection *section)
gtk_flow_box_invalidate_filter (GTK_FLOW_BOX (section->box)); gtk_flow_box_invalidate_filter (GTK_FLOW_BOX (section->box));
} }
static gboolean static void
update_headings (gpointer data) update_headings (GtkEmojiChooser *chooser)
{ {
GtkEmojiChooser *chooser = data;
gtk_widget_set_visible (chooser->people.heading, !chooser->people.empty); gtk_widget_set_visible (chooser->people.heading, !chooser->people.empty);
gtk_widget_set_visible (chooser->body.heading, !chooser->body.empty); gtk_widget_set_visible (chooser->body.heading, !chooser->body.empty);
gtk_widget_set_visible (chooser->nature.heading, !chooser->nature.empty); gtk_widget_set_visible (chooser->nature.heading, !chooser->nature.empty);
@ -465,8 +463,6 @@ update_headings (gpointer data)
gtk_stack_set_visible_child_name (GTK_STACK (chooser->stack), "empty"); gtk_stack_set_visible_child_name (GTK_STACK (chooser->stack), "empty");
else else
gtk_stack_set_visible_child_name (GTK_STACK (chooser->stack), "list"); gtk_stack_set_visible_child_name (GTK_STACK (chooser->stack), "list");
return G_SOURCE_REMOVE;
} }
static void static void
@ -486,7 +482,7 @@ search_changed (GtkEntry *entry,
invalidate_section (&chooser->symbols); invalidate_section (&chooser->symbols);
invalidate_section (&chooser->flags); invalidate_section (&chooser->flags);
g_idle_add (update_headings, data); update_headings (chooser);
} }
static void static void