Updating branch refs/heads/master to 1e23b9a0675d4eaa2b75e7e7dadab293b456f7ac (commit) from 62b1d1000c420d3dc5af9667e73148fd5e410a30 (commit)
commit 1e23b9a0675d4eaa2b75e7e7dadab293b456f7ac Author: Nick Schermer <n...@xfce.org> Date: Mon Sep 24 18:36:38 2012 +0200 Don't request thumbnails twice when entering a folder. Both in set_dir and size_allocate the images were requested, resuling in doubling the traffic between tumbler and thunar. thunar/thunar-standard-view.c | 14 +++++++++++--- 1 files changed, 11 insertions(+), 3 deletions(-) diff --git a/thunar/thunar-standard-view.c b/thunar/thunar-standard-view.c index 451fa6f..c60d508 100644 --- a/thunar/thunar-standard-view.c +++ b/thunar/thunar-standard-view.c @@ -1240,7 +1240,7 @@ thunar_standard_view_set_current_directory (ThunarNavigator *navigator, gtk_action_set_visible (standard_view->priv->action_restore, trashed); /* schedule a thumbnail timeout */ - thunar_standard_view_schedule_thumbnail_timeout (standard_view); + /* NOTE: quickly after this we always trigger a size allocate wich will handle this */ /* notify all listeners about the new/old current directory */ g_object_notify (G_OBJECT (standard_view), "current-directory"); @@ -3592,8 +3592,16 @@ thunar_standard_view_size_allocate (ThunarStandardView *standard_view, { _thunar_return_if_fail (THUNAR_IS_STANDARD_VIEW (standard_view)); - /* reschedule a thumbnail request timeout */ - thunar_standard_view_schedule_thumbnail_timeout (standard_view); + /* ignore size changes when the view is still loading */ + if (thunar_view_get_loading (THUNAR_VIEW (standard_view))) + return; + + /* to avoid a flow of updates, don't update if there is already a request pending */ + if (standard_view->priv->thumbnail_source_id == 0) + { + /* reschedule a thumbnail request timeout */ + thunar_standard_view_schedule_thumbnail_timeout (standard_view); + } } _______________________________________________ Xfce4-commits mailing list Xfce4-commits@xfce.org https://mail.xfce.org/mailman/listinfo/xfce4-commits