EAPI Ecore_Wl_Window_Type ecore_wl_window_type_get(Ecore_Wl_Window *win);
EAPI void ecore_wl_window_type_set(Ecore_Wl_Window *win, Ecore_Wl_Window_Type type);
EAPI void ecore_wl_window_pointer_set(Ecore_Wl_Window *win, struct wl_surface *surface, int hot_x, int hot_y);
+EAPI Eina_Bool ecore_wl_window_pointer_warp(Ecore_Wl_Window *win, int x, int y);
EAPI void ecore_wl_window_cursor_from_name_set(Ecore_Wl_Window *win, const char *cursor_name);
EAPI void ecore_wl_window_cursor_default_restore(Ecore_Wl_Window *win);
EAPI void ecore_wl_window_parent_set(Ecore_Wl_Window *win, Ecore_Wl_Window *parent);
ecore_wl_input_pointer_set(input, surface, hot_x, hot_y);
}
+EAPI Eina_Bool
+ecore_wl_window_pointer_warp(Ecore_Wl_Window *win, int x, int y)
+{
+ LOGFN(__FILE__, __LINE__, __FUNCTION__);
+
+ if (!win || !win->surface || !win->visible) return EINA_FALSE;
+ if (!_ecore_wl_disp->wl.tz_input_device_manager) return EINA_FALSE;
+
+ tizen_input_device_manager_pointer_warp(_ecore_wl_disp->wl.tz_input_device_manager,
+ win->surface, wl_fixed_from_int(x), wl_fixed_from_int(y));
+
+ return EINA_TRUE;
+}
+
EAPI void
ecore_wl_window_cursor_from_name_set(Ecore_Wl_Window *win, const char *cursor_name)
{
ecore_wl_pointer_xy_get(x, y);
}
+Eina_Bool
+_ecore_evas_wl_common_pointer_warp(const Ecore_Evas *ee, Evas_Coord x, Evas_Coord y)
+{
+ Ecore_Evas_Engine_Wl_Data *wdata;
+ Eina_Bool ret;
+
+ LOGFN(__FILE__, __LINE__, __FUNCTION__);
+
+ if ((!ee) || (!ee->visible)) return EINA_FALSE;
+ wdata = ee->engine.data;
+ if(!wdata) return EINA_FALSE;
+
+ ret = ecore_wl_window_pointer_warp(wdata->win, x, y);
+ return ret;
+}
+
void
_ecore_evas_wl_common_wm_rot_preferred_rotation_set(Ecore_Evas *ee, int rot)
{
NULL, // msg_send
_ecore_evas_wl_common_pointer_xy_get,
- NULL, // pointer warp
+ _ecore_evas_wl_common_pointer_warp,
_ecore_evas_wl_common_wm_rot_preferred_rotation_set,
_ecore_evas_wl_common_wm_rot_available_rotations_set,
void _ecore_evas_wl_common_frame_border_size_set(Evas_Object *obj, int fx, int fy, int fw, int fh);
void _ecore_evas_wl_common_pointer_xy_get(const Ecore_Evas *ee, Evas_Coord *x, Evas_Coord *y);
+Eina_Bool _ecore_evas_wl_common_pointer_warp(const Ecore_Evas *ee, Evas_Coord x, Evas_Coord y);
void _ecore_evas_wl_common_wm_rot_preferred_rotation_set(Ecore_Evas *ee, int rot);
void _ecore_evas_wl_common_wm_rot_available_rotations_set(Ecore_Evas *ee, const int *rots, unsigned int count);
NULL, // func msg send
_ecore_evas_wl_common_pointer_xy_get,
- NULL, // pointer_warp
+ _ecore_evas_wl_common_pointer_warp,
_ecore_evas_wl_common_wm_rot_preferred_rotation_set,
_ecore_evas_wl_common_wm_rot_available_rotations_set,