Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <mpg@redhat.com>2007-09-24 21:37:26 (GMT)
committer Marco Pesenti Gritti <mpg@redhat.com>2007-09-24 21:37:26 (GMT)
commit4f72fd1c274b8d493defc6707aa3c40cec411495 (patch)
treeea4088c2c0aa40a20052b48c744d0b8278518a7e
parent0ef5c4b8917bade623681cf8fa5ff040aca12279 (diff)
Cleanups of the frame activation code.
Do not hide the frame on clicks.
-rw-r--r--shell/view/frame/frame.py17
-rw-r--r--shell/view/frame/framewindow.py6
2 files changed, 7 insertions, 16 deletions
diff --git a/shell/view/frame/frame.py b/shell/view/frame/frame.py
index 62047ad..3fe2ef6 100644
--- a/shell/view/frame/frame.py
+++ b/shell/view/frame/frame.py
@@ -138,7 +138,6 @@ class Frame(object):
self._shell = shell
self._current_position = 0.0
self._animator = None
- self._hover = False
self._event_area = EventArea()
self._event_area.connect('enter', self._enter_corner_cb)
@@ -289,24 +288,14 @@ class Frame(object):
gobject.timeout_add(2000, lambda: self.hide())
def _enter_notify_cb(self, window, event):
- # FIXME clicks cause leave/notify, ignore
- if event.state == gtk.gdk.BUTTON1_MASK:
- return
- if self._hover:
- return
-
- self._hover = True
- self._mouse_listener.mouse_enter()
+ if event.detail != gtk.gdk.NOTIFY_INFERIOR:
+ self._mouse_listener.mouse_enter()
def _leave_notify_cb(self, window, event):
- # FIXME clicks cause leave/notify, ignore
- if event.state == gtk.gdk.BUTTON1_MASK:
- return
- if not self._hover:
+ if event.detail == gtk.gdk.NOTIFY_INFERIOR:
return
if not self._is_hover() and not self._palette_group.is_up():
- self._hover = False
self._mouse_listener.mouse_leave()
def _palette_group_popdown_cb(self, group):
diff --git a/shell/view/frame/framewindow.py b/shell/view/frame/framewindow.py
index 6738bf2..623d162 100644
--- a/shell/view/frame/framewindow.py
+++ b/shell/view/frame/framewindow.py
@@ -93,10 +93,12 @@ class FrameWindow(gtk.Window):
self.window.set_accept_focus(False)
def _enter_notify_cb(self, window, event):
- self.hover = True
+ if event.detail != gtk.gdk.NOTIFY_INFERIOR:
+ self.hover = True
def _leave_notify_cb(self, window, event):
- self.hover = False
+ if event.detail != gtk.gdk.NOTIFY_INFERIOR:
+ self.hover = False
def _size_changed_cb(self, screen):
self._update_size()