iconview: Don't queue redraws when nothing changes

We were queueing redraws for the old and the new prelit item, even when
they were the same item.
This commit is contained in:
Benjamin Otte 2014-09-15 16:06:41 +02:00
parent 45ab4ae09b
commit 86607c0f21

View File

@ -2038,21 +2038,23 @@ gtk_icon_view_motion (GtkWidget *widget,
FALSE, FALSE,
&cell); &cell);
if (item != NULL) if (item != last_prelight_item)
{ {
item->prelight = TRUE; if (item != NULL)
gtk_icon_view_queue_draw_item (icon_view, item); {
} item->prelight = TRUE;
gtk_icon_view_queue_draw_item (icon_view, item);
}
if (last_prelight_item != NULL && if (last_prelight_item != NULL)
last_prelight_item != item) {
{ last_prelight_item->prelight = FALSE;
last_prelight_item->prelight = FALSE; gtk_icon_view_queue_draw_item (icon_view,
gtk_icon_view_queue_draw_item (icon_view, icon_view->priv->last_prelight);
icon_view->priv->last_prelight); }
}
icon_view->priv->last_prelight = item; icon_view->priv->last_prelight = item;
}
} }
return TRUE; return TRUE;