summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSoeren Sandmann <sandmann@daimi.au.dk>2002-12-09 21:07:27 +0000
committerSøren Sandmann Pedersen <ssp@src.gnome.org>2002-12-09 21:07:27 +0000
commitba18c630b7352bc0da3465255193fc7e0ff635d5 (patch)
tree96d43e5678eb1cee3b565bff2df308efc44d2117 /src
parenta70fc3259fcdd5ccea3a964f3957d6e34a4d6185 (diff)
downloadmetacity-ba18c630b7352bc0da3465255193fc7e0ff635d5.tar.gz
Handle crossing events during resizing. (#93384).
Mon Dec 9 22:09:56 2002 Soeren Sandmann <sandmann@daimi.au.dk> * src/display.c, src/window.c: Handle crossing events during resizing. (#93384).
Diffstat (limited to 'src')
-rw-r--r--src/display.c15
-rw-r--r--src/window.c4
2 files changed, 17 insertions, 2 deletions
diff --git a/src/display.c b/src/display.c
index 6d9b0343..48a1b779 100644
--- a/src/display.c
+++ b/src/display.c
@@ -1252,6 +1252,12 @@ event_callback (XEvent *event,
meta_window_handle_mouse_grab_op_event (window, event);
break;
case EnterNotify:
+ if (grab_op_is_mouse (display->grab_op) &&
+ display->grab_window == window)
+ {
+ meta_window_handle_mouse_grab_op_event (window, event);
+ break;
+ }
/* do this even if window->has_focus to avoid races */
if (window && !serial_is_ignored (display, event->xany.serial) &&
event->xcrossing.detail != NotifyInferior)
@@ -1311,6 +1317,12 @@ event_callback (XEvent *event,
}
break;
case LeaveNotify:
+ if (grab_op_is_mouse (display->grab_op) &&
+ display->grab_window == window)
+ {
+ meta_window_handle_mouse_grab_op_event (window, event);
+ break;
+ }
if (window)
{
switch (meta_prefs_get_focus_mode ())
@@ -2374,7 +2386,8 @@ meta_display_set_grab_op_cursor (MetaDisplay *display,
cursor = xcursor_for_op (display, op);
#define GRAB_MASK (PointerMotionMask | PointerMotionHintMask | \
- ButtonPressMask | ButtonReleaseMask)
+ ButtonPressMask | ButtonReleaseMask | \
+ EnterWindowMask | LeaveWindowMask)
if (change_pointer)
{
diff --git a/src/window.c b/src/window.c
index 20fc9749..b5ac0157 100644
--- a/src/window.c
+++ b/src/window.c
@@ -6289,7 +6289,9 @@ meta_window_handle_mouse_grab_op_event (MetaWindow *window,
meta_display_end_grab_op (window->display, event->xbutton.time);
break;
-
+
+ case EnterNotify:
+ case LeaveNotify:
case MotionNotify:
switch (window->display->grab_op)
{