display: Fix coordinate calculations
https://bugzilla.gnome.org/show_bug.cgi?id=681475
This commit is contained in:
parent
bfca71076d
commit
a61f0654b9
1 changed files with 2 additions and 9 deletions
|
@ -1194,17 +1194,10 @@ user_to_device (double *x, double *y,
|
||||||
gdouble ox, oy;
|
gdouble ox, oy;
|
||||||
user_to_device_data* data = user_data;
|
user_to_device_data* data = user_data;
|
||||||
|
|
||||||
/* Required in case the user does transformations (eg. translates) */
|
/* The translations by the user */
|
||||||
cairo_user_to_device (data->cr, x, y);
|
cairo_user_to_device (data->cr, x, y);
|
||||||
|
|
||||||
/* The device offset is different for a full redraw.
|
/* The position of the widget on the window. */
|
||||||
* So we cannot make assumptions about it. */
|
|
||||||
cairo_surface_get_device_offset(cairo_get_target(data->cr), &ox, &oy);
|
|
||||||
|
|
||||||
*x -= ox;
|
|
||||||
*y -= oy;
|
|
||||||
|
|
||||||
/* The input_window does not of the allocation offset. */
|
|
||||||
*x -= data->allocation.x;
|
*x -= data->allocation.x;
|
||||||
*y -= data->allocation.y;
|
*y -= data->allocation.y;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue