Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWalter Bender <walter.bender@gmail.com>2011-07-10 16:51:58 (GMT)
committer Walter Bender <walter.bender@gmail.com>2011-07-10 16:51:58 (GMT)
commit1429092b4b38d7e7ef4ffe53d3692a433c637156 (patch)
treed3bd71cea23da027db08983a1d6cde2e725f1674
parentaca1a40bf9b870f772c5642226858b87cd7c2a90 (diff)
remove hippo and make separate callbacks for enter- and leave-notify-events
-rw-r--r--src/sugar/graphics/palettewindow.py25
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):