diff options
author | Thierry Vignaud <thierry.vignaud@gmail.com> | 2013-12-28 18:05:00 +0100 |
---|---|---|
committer | Thierry Vignaud <thierry.vignaud@gmail.com> | 2013-12-28 18:05:00 +0100 |
commit | 6dd904fd6ed78449c5607c77c0563ab7a823c1e8 (patch) | |
tree | c7c38cea5398b8eec4d9b4b324d0e9928d114855 | |
parent | bb13e368a7976f1b34073b468585008ed66bd86e (diff) | |
download | rpmdrake-6dd904fd6ed78449c5607c77c0563ab7a823c1e8.tar rpmdrake-6dd904fd6ed78449c5607c77c0563ab7a823c1e8.tar.gz rpmdrake-6dd904fd6ed78449c5607c77c0563ab7a823c1e8.tar.bz2 rpmdrake-6dd904fd6ed78449c5607c77c0563ab7a823c1e8.tar.xz rpmdrake-6dd904fd6ed78449c5607c77c0563ab7a823c1e8.zip |
(add_nodes) fix slow update of pkgs list (mga#12000)
we freeze the tree updates & detach the model while updating it
(from PyGtk FAQ: http://faq.pygtk.org/index.py?req=show&file=faq13.043.htp)
-rw-r--r-- | NEWS | 1 | ||||
-rw-r--r-- | Rpmdrake/gui.pm | 5 |
2 files changed, 6 insertions, 0 deletions
@@ -1,3 +1,4 @@ +- fix slow update of pkgs list (mga#12000) - --merge-all-rpmnew mode: o fix a warning diff --git a/Rpmdrake/gui.pm b/Rpmdrake/gui.pm index 4e287455..e10629ac 100644 --- a/Rpmdrake/gui.pm +++ b/Rpmdrake/gui.pm @@ -539,10 +539,15 @@ sub ask_browse_tree_given_widgets_for_rpmdrake { }; $common->{add_nodes} = sub { my (@nodes) = @_; + $w->{detail_list}->freeze_child_notify; + my $model = $w->{detail_list}->get_model; + $w->{detail_list}->set_model; $w->{detail_list_model}->clear; $w->{detail_list}->scroll_to_point(0, 0); add_node($_->[0], $_->[1], $_->[2]) foreach @nodes; update_size($common); + $w->{detail_list}->set_model($model); + $w->{detail_list}->thaw_child_notify; }; $common->{display_info} = sub { |