diff options
Diffstat (limited to 'src/sugar/graphics/palettewindow.py')
-rw-r--r-- | src/sugar/graphics/palettewindow.py | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/src/sugar/graphics/palettewindow.py b/src/sugar/graphics/palettewindow.py index 5281e54..f61faca 100644 --- a/src/sugar/graphics/palettewindow.py +++ b/src/sugar/graphics/palettewindow.py @@ -25,7 +25,6 @@ import logging import gtk import gobject -import hippo from sugar.graphics import palettegroup from sugar.graphics import animator @@ -793,7 +792,8 @@ class CanvasInvoker(Invoker): Invoker.__init__(self) self._position_hint = self.AT_CURSOR - self._motion_hid = None + self._motion_enter_hid = None + self._motion_leave_hid = None self._release_hid = None self._item = None @@ -804,14 +804,17 @@ class CanvasInvoker(Invoker): Invoker.attach(self, parent) self._item = parent - self._motion_hid = self._item.connect('motion-notify-event', - self.__motion_notify_event_cb) + self._motion_enter_hid = self._item.connect( + 'enter-notify-event', self.__enter_notify_event_cb) + self._motion_leave_hid = self._item.connect( + 'leave-notify-event', self.__leave_notify_event_cb) self._release_hid = self._item.connect('button-release-event', self.__button_release_event_cb) def detach(self): Invoker.detach(self) - self._item.disconnect(self._motion_hid) + self._item.disconnect(self._motion_enter_hid) + self._item.disconnect(self._motion_leave_hid) self._item.disconnect(self._release_hid) def get_default_position(self): @@ -826,12 +829,12 @@ class CanvasInvoker(Invoker): else: return gtk.gdk.Rectangle() - def __motion_notify_event_cb(self, button, event): - if event.detail == hippo.MOTION_DETAIL_ENTER: - self.notify_mouse_enter() - elif event.detail == hippo.MOTION_DETAIL_LEAVE: - self.notify_mouse_leave() + def __enter_notify_event_cb(self, button, event): + self.notify_mouse_enter() + return False + def __leave_notify_event_cb(self, button, event): + self.notify_mouse_leave() return False def __button_release_event_cb(self, button, event): @@ -842,7 +845,7 @@ class CanvasInvoker(Invoker): return False def get_toplevel(self): - return hippo.get_canvas_for_item(self._item).get_toplevel() + return self._item.get_toplevel() class ToolInvoker(WidgetInvoker): |