#11201 NORM 11.3.0: Activity icon remains active on home screen
Zarro Boogs per Child
bugtracker at laptop.org
Thu Sep 1 07:07:22 EDT 2011
#11201: Activity icon remains active on home screen
--------------------------------+-------------------------------------------
Reporter: bert | Owner: erikos
Type: defect | Status: new
Priority: normal | Milestone: 11.3.0
Component: sugar | Version: not specified
Resolution: | Keywords:
Next_action: diagnose | Verified: 0
Deployment_affected: | Blockedby:
Blocking: |
--------------------------------+-------------------------------------------
Comment(by erikos):
Yes, looks good:
To be consistent with code in other places that does disconnect the
handler I would recommend the following:
{{{
diff --git a/src/sugar/graphics/toolbarbox.py
b/src/sugar/graphics/toolbarbox.py
index 2f455f5..b90d41a 100644
--- a/src/sugar/graphics/toolbarbox.py
+++ b/src/sugar/graphics/toolbarbox.py
@@ -30,13 +30,14 @@ class ToolbarButton(ToolButton):
ToolButton.__init__(self, **kwargs)
self.page_widget = None
-
+ self._hierarchy_changed_hid = None
self.set_page(page)
self.connect('clicked',
lambda widget: self.set_expanded(not self.is_expanded()))
- self.connect('hierarchy-changed', self.__hierarchy_changed_cb)
+ self._hierarchy_changed_hid = self.connect('hierarchy-changed',
+
self.__hierarchy_changed_cb)
def __hierarchy_changed_cb(self, tool_button, previous_toplevel):
if hasattr(self.parent, 'owner'):
@@ -122,6 +123,10 @@ class ToolbarButton(ToolButton):
self.page_widget.parent.remove(self.page_widget)
def do_expose_event(self, event):
+ if self._hierarchy_changed_hid is not None:
+ self.disconnect(self._hierarchy_changed_hid)
+ self._hierarchy_changed_hid = None
+
if not self.is_expanded() or self.props.palette is not None and \
self.props.palette.is_up():
ToolButton.do_expose_event(self, event)
}}}
--
Ticket URL: <http://dev.laptop.org/ticket/11201#comment:3>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system
More information about the Bugs
mailing list