15945 Changing the view in PM while the package list is being populated can result in a hang
authorPadraig O'Briain <padraig.obriain@oracle.com>
Mon, 24 May 2010 10:47:55 +0100
changeset 1914 cb789fa96e0f
parent 1913 b9558971b1a8
child 1915 1ed4662777fc
15945 Changing the view in PM while the package list is being populated can result in a hang
src/packagemanager.py
--- a/src/packagemanager.py	Fri May 21 18:22:35 2010 -0700
+++ b/src/packagemanager.py	Mon May 24 10:47:55 2010 +0100
@@ -451,7 +451,6 @@
                 self.application_list_filter = None
                 self.application_list_sort = None
                 self.application_refilter_id = 0
-                self.application_refilter_idle_id = 0
                 self.last_status_id = 0
                 self.last_show_info_id = 0
                 self.show_info_id = 0
@@ -1785,10 +1784,9 @@
         def __application_refilter(self):
                 ''' Disconnecting the model from the treeview improves
                 performance when assistive technologies are enabled'''
+                self.application_refilter_id = 0
                 if self.in_setup:
                         return
-                self.application_refilter_id = 0
-                self.application_refilter_idle_id = 0
                 model = self.w_application_treeview.get_model()
                 self.w_application_treeview.set_model(None)
                 app_id, order = self.application_list_sort.get_sort_column_id()
@@ -2065,8 +2063,8 @@
                 if self.application_refilter_id != 0:
                         gobject.source_remove(self.application_refilter_id)
                         self.application_refilter_id = 0
-                if self.application_refilter_idle_id == 0:
-                        self.application_refilter_idle_id = gobject.idle_add(
+                if self.application_refilter_id == 0:
+                        self.application_refilter_id = gobject.idle_add(
                             self.__application_refilter)
 
         def __on_category_focus_in(self, widget, event, user):