Convert wl_fixed_t to int in weston_output_update_zoom().
authorScott Moreau <oreaus@gmail.com>
Wed, 16 May 2012 14:36:42 +0000 (08:36 -0600)
committerKristian Høgsberg <krh@bitplanet.net>
Wed, 16 May 2012 15:04:04 +0000 (11:04 -0400)
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.

src/compositor.c
src/shell.c

index 788b1de..f0d405d 100644 (file)
@@ -2356,13 +2356,17 @@ weston_output_destroy(struct weston_output *output)
 }
 
 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);
 
index fc49d70..95d08c6 100644 (file)
@@ -1642,9 +1642,7 @@ zoom_binding(struct wl_input_device *device, uint32_t time,
                        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);
                }
        }
 }