This way, we don't have to use wl_fixed_to_int() for each
call to weston_output_update_zoom(). It accepts wl_fixed_t
types and converts internally.
}
WL_EXPORT void
-weston_output_update_zoom(struct weston_output *output, int x, int y)
+weston_output_update_zoom(struct weston_output *output, wl_fixed_t fx, wl_fixed_t fy)
{
float ratio;
+ int32_t x, y;
if (output->zoom.level <= 0)
return;
+ x = wl_fixed_to_int(fx);
+ y = wl_fixed_to_int(fy);
+
output->zoom.magnification = 1 / output->zoom.level;
ratio = 1 - (1 / output->zoom.magnification);
if (output->zoom.level < output->zoom.increment)
output->zoom.level = output->zoom.increment;
- weston_output_update_zoom(output,
- wl_fixed_to_int(device->x),
- wl_fixed_to_int(device->y));
+ weston_output_update_zoom(output, device->x, device->y);
}
}
}