From 01386aef295e71588153759929713c71d0d9f92d Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Sat, 29 Sep 2018 22:38:09 +0200 Subject: [PATCH] listview: Reset listitems' CSS animations when rebinding This way, newly displayed rows don't play an unselect animation (text fading in) when they are unselected, but the row was previously used for a selected item. --- gtk/gtklistitem.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gtk/gtklistitem.c b/gtk/gtklistitem.c index a11b8b3cc8..411d187b89 100644 --- a/gtk/gtklistitem.c +++ b/gtk/gtklistitem.c @@ -22,8 +22,10 @@ #include "gtklistitemprivate.h" #include "gtkbinlayout.h" +#include "gtkcssnodeprivate.h" #include "gtkintl.h" #include "gtkwidget.h" +#include "gtkwidgetprivate.h" /** * SECTION:gtklistitem @@ -325,6 +327,8 @@ gtk_list_item_set_item (GtkListItem *self, if (item) self->item = g_object_ref (item); + gtk_css_node_invalidate (gtk_widget_get_css_node (GTK_WIDGET (self)), GTK_CSS_CHANGE_ANIMATIONS); + g_object_notify_by_pspec (G_OBJECT (self), properties[PROP_ITEM]); }