Animate transitions for zoom focus point change.
Handle the transition when focus changes from text cursor to
mouse pointer or vice versa.
diff --git a/src/compositor.h b/src/compositor.h
index 4147811..5a52e60 100644
--- a/src/compositor.h
+++ b/src/compositor.h
@@ -115,16 +115,25 @@
ZOOM_FOCUS_TEXT
};
+struct weston_fixed_point {
+ wl_fixed_t x, y;
+};
+
struct weston_output_zoom {
int active;
uint32_t type;
float increment;
float level;
float max_level;
- wl_fixed_t fx, fy;
float trans_x, trans_y;
struct weston_animation animation_z;
struct weston_spring spring_z;
+ struct weston_animation animation_xy;
+ struct weston_spring spring_xy;
+ struct weston_fixed_point from;
+ struct weston_fixed_point to;
+ struct weston_fixed_point current;
+ struct weston_fixed_point text_cursor;
};
/* bit compatible with drm definitions. */
@@ -633,9 +642,7 @@
weston_text_cursor_position_notify(struct weston_surface *surface,
wl_fixed_t x, wl_fixed_t y);
void
-weston_output_update_zoom(struct weston_output *output,
- wl_fixed_t x, wl_fixed_t y,
- uint32_t type);
+weston_output_update_zoom(struct weston_output *output, uint32_t type);
void
weston_output_update_matrix(struct weston_output *output);
void