[mutter/wip/multitouch: 10/73] display: get button event coordinates with the helper functions
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter/wip/multitouch: 10/73] display: get button event coordinates with the helper functions
- Date: Mon, 31 Oct 2011 00:17:29 +0000 (UTC)
commit cc4f66bc8aa0e12b5059a15b1a7970ba4c3b4d97
Author: Carlos Garnacho <carlosg gnome org>
Date: Wed Jun 8 19:44:40 2011 +0200
display: get button event coordinates with the helper functions
src/core/display.c | 25 +++++++++++++++----------
1 files changed, 15 insertions(+), 10 deletions(-)
---
diff --git a/src/core/display.c b/src/core/display.c
index 06a14bf..576f089 100644
--- a/src/core/display.c
+++ b/src/core/display.c
@@ -1730,6 +1730,7 @@ event_callback (XEvent *event,
{
Window xwindow = meta_input_event_get_window (display, event);
Time evtime = meta_input_event_get_time (display, event);
+ gdouble ev_root_x, ev_root_y;
guint n_button, state;
if (window && !window->override_redirect &&
@@ -1771,6 +1772,10 @@ event_callback (XEvent *event,
case ButtonPress:
meta_input_event_get_button (display, event, &n_button);
meta_input_event_get_state (display, event, &state);
+ meta_input_event_get_coordinates (display, event,
+ NULL, NULL,
+ &ev_root_x,
+ &ev_root_y);
if (display->grab_op == META_GRAB_OP_COMPOSITOR)
break;
@@ -1870,10 +1875,10 @@ event_callback (XEvent *event,
meta_window_get_position (window, &root_x, &root_y);
- west = event->xbutton.x_root < (root_x + 1 * window->rect.width / 3);
- east = event->xbutton.x_root > (root_x + 2 * window->rect.width / 3);
- north = event->xbutton.y_root < (root_y + 1 * window->rect.height / 3);
- south = event->xbutton.y_root > (root_y + 2 * window->rect.height / 3);
+ west = ev_root_x < (root_x + 1 * window->rect.width / 3);
+ east = ev_root_x > (root_x + 2 * window->rect.width / 3);
+ north = ev_root_y < (root_y + 1 * window->rect.height / 3);
+ south = ev_root_y > (root_y + 2 * window->rect.height / 3);
if (north && west)
op = META_GRAB_OP_RESIZING_NW;
@@ -1904,8 +1909,8 @@ event_callback (XEvent *event,
n_button,
0,
evtime,
- event->xbutton.x_root,
- event->xbutton.y_root);
+ ev_root_x,
+ ev_root_y);
}
}
else if (n_button == meta_prefs_get_mouse_button_menu())
@@ -1913,8 +1918,8 @@ event_callback (XEvent *event,
if (meta_prefs_get_raise_on_click ())
meta_window_raise (window);
meta_window_show_menu (window,
- event->xbutton.x_root,
- event->xbutton.y_root,
+ ev_root_x,
+ ev_root_y,
n_button,
evtime);
}
@@ -1961,8 +1966,8 @@ event_callback (XEvent *event,
n_button,
0,
evtime,
- event->xbutton.x_root,
- event->xbutton.y_root);
+ ev_root_x,
+ ev_root_y);
}
}
break;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]