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);
+EAPI void ecore_wl_window_position_set(Ecore_Wl_Window *win, int x, int y);
/**
* Iconify a window
tizen_resource_add_listener(win->tz_resource,
&_ecore_tizen_resource_listener, win);
}
+ if ((win->surface) && (_ecore_wl_disp->wl.tz_policy))
+ {
+ tizen_policy_position_set(_ecore_wl_disp->wl.tz_policy, win->surface, win->allocation.x, win->allocation.y);
+ }
}
/* trap for valid shell surface */
win->parent = parent;
}
+EAPI void
+ecore_wl_window_position_set(Ecore_Wl_Window *win, int x, int y)
+{
+ if ((win->surface) && (_ecore_wl_disp->wl.tz_policy))
+ {
+ tizen_policy_position_set(_ecore_wl_disp->wl.tz_policy, win->surface, win->allocation.x, win->allocation.y);
+ }
+}
+
/* @since 1.12 */
EAPI void
ecore_wl_window_iconified_set(Ecore_Wl_Window *win, Eina_Bool iconified)
struct tizen_policy;
struct tizen_visibility;
+struct wl_surface;
extern const struct wl_interface tizen_policy_interface;
extern const struct wl_interface tizen_visibility_interface;
+extern const struct wl_interface wl_surface_interface;
#define TIZEN_POLICY_GET_VISIBILITY 0
#define TIZEN_POLICY_ACTIVATE 1
+#define TIZEN_POLICY_POSITION_SET 2
static inline void
tizen_policy_set_user_data(struct tizen_policy *tizen_policy, void *user_data)
TIZEN_POLICY_ACTIVATE, surface);
}
+static inline void
+tizen_policy_position_set(struct tizen_policy *tizen_policy, struct wl_surface *surface, int32_t x, int32_t y)
+{
+ wl_proxy_marshal((struct wl_proxy *) tizen_policy,
+ TIZEN_POLICY_POSITION_SET, surface, x, y);
+}
+
#ifndef TIZEN_VISIBILITY_VISIBILITY_ENUM
#define TIZEN_VISIBILITY_VISIBILITY_ENUM
enum tizen_visibility_visibility {
&tizen_visibility_interface,
&wl_surface_interface,
&wl_surface_interface,
+ &wl_surface_interface,
+ NULL,
+ NULL,
};
static const struct wl_message tizen_policy_requests[] = {
{ "get_visibility", "no", types + 1 },
{ "activate", "o", types + 3 },
+ { "position_set", "oii", types + 4 },
};
WL_EXPORT const struct wl_interface tizen_policy_interface = {
"tizen_policy", 1,
- 2, tizen_policy_requests,
+ 3, tizen_policy_requests,
0, NULL,
};
ecore_wl_window_update_location(wdata->win, x, y);
if (ee->func.fn_move) ee->func.fn_move(ee);
}
+ ecore_wl_window_position_set(wdata->win, x, y);
}
/* Frame border: