diff --git a/src/core/display-private.h b/src/core/display-private.h index e0747b20f..a4636e1b6 100644 --- a/src/core/display-private.h +++ b/src/core/display-private.h @@ -211,6 +211,7 @@ struct _MetaDisplay GList* grab_old_window_stacking; MetaEdgeResistanceData *grab_edge_resistance_data; unsigned int grab_last_user_action_was_snap; + guint32 grab_timestamp; /* we use property updates as sentinels for certain window focus events * to avoid some race conditions on EnterNotify events diff --git a/src/core/display.c b/src/core/display.c index a989a0589..a99193f4d 100644 --- a/src/core/display.c +++ b/src/core/display.c @@ -3873,6 +3873,7 @@ meta_display_begin_grab_op (MetaDisplay *display, #endif display->grab_frame_action = frame_action; display->grab_resize_unmaximize = 0; + display->grab_timestamp = timestamp; if (display->grab_resize_timeout_id) { @@ -4058,6 +4059,7 @@ meta_display_end_grab_op (MetaDisplay *display, } #endif /* HAVE_XSYNC */ + display->grab_timestamp = 0; display->grab_window = NULL; display->grab_screen = NULL; display->grab_xwindow = None; diff --git a/src/core/window.c b/src/core/window.c index 2942de64b..df466af66 100644 --- a/src/core/window.c +++ b/src/core/window.c @@ -9866,15 +9866,12 @@ meta_window_update_keyboard_resize (MetaWindow *window, if (update_cursor) { - guint32 timestamp; - /* FIXME: Using CurrentTime is really bad mojo */ - timestamp = CurrentTime; meta_display_set_grab_op_cursor (window->display, NULL, window->display->grab_op, TRUE, window->display->grab_xwindow, - timestamp); + window->display->grab_timestamp); } }