* @since 1.2
*/
EAPI void ecore_wl_window_raise(Ecore_Wl_Window *win);
+EAPI void ecore_wl_window_activate(Ecore_Wl_Window *win);
EAPI void ecore_wl_window_maximized_set(Ecore_Wl_Window *win, Eina_Bool maximized);
EAPI Eina_Bool ecore_wl_window_maximized_get(Ecore_Wl_Window *win);
EAPI void ecore_wl_window_fullscreen_set(Ecore_Wl_Window *win, Eina_Bool fullscreen);
}
EAPI void
+ecore_wl_window_activate(Ecore_Wl_Window *win)
+{
+ LOGFN(__FILE__, __LINE__, __FUNCTION__);
+
+ if (!win) return;
+
+ if (_ecore_wl_disp->wl.tz_policy)
+ tizen_policy_activate(_ecore_wl_disp->wl.tz_policy, win->surface);
+}
+
+EAPI void
ecore_wl_window_maximized_set(Ecore_Wl_Window *win, Eina_Bool maximized)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
extern const struct wl_interface tizen_visibility_interface;
#define TIZEN_POLICY_GET_VISIBILITY 0
+#define TIZEN_POLICY_ACTIVATE 1
static inline void
tizen_policy_set_user_data(struct tizen_policy *tizen_policy, void *user_data)
return (struct tizen_visibility *) id;
}
+static inline void
+tizen_policy_activate(struct tizen_policy *tizen_policy, struct wl_surface *surface)
+{
+ wl_proxy_marshal((struct wl_proxy *) tizen_policy,
+ TIZEN_POLICY_ACTIVATE, surface);
+}
+
#ifndef TIZEN_VISIBILITY_VISIBILITY_ENUM
#define TIZEN_VISIBILITY_VISIBILITY_ENUM
enum tizen_visibility_visibility {
NULL,
&tizen_visibility_interface,
&wl_surface_interface,
+ &wl_surface_interface,
};
static const struct wl_message tizen_policy_requests[] = {
{ "get_visibility", "no", types + 1 },
+ { "activate", "o", types + 3 },
};
WL_EXPORT const struct wl_interface tizen_policy_interface = {
"tizen_policy", 1,
- 1, tizen_policy_requests,
+ 2, tizen_policy_requests,
0, NULL,
};
ecore_wl_window_raise(wdata->win);
}
+void
+_ecore_evas_wl_common_activate(Ecore_Evas *ee)
+{
+ Ecore_Evas_Engine_Wl_Data *wdata;
+
+ LOGFN(__FILE__, __LINE__, __FUNCTION__);
+
+ if (!ee) return;
+ wdata = ee->engine.data;
+ ecore_evas_show(ee);
+ ecore_wl_window_activate(wdata->win);
+}
+
void
_ecore_evas_wl_common_title_set(Ecore_Evas *ee, const char *title)
{
_ecore_evas_wl_hide,
_ecore_evas_wl_common_raise,
NULL, // lower
- NULL, // activate
+ _ecore_evas_wl_common_activate,
_ecore_evas_wl_common_title_set,
_ecore_evas_wl_common_name_class_set,
_ecore_evas_wl_common_size_min_set,
_ecore_evas_wl_hide,
_ecore_evas_wl_common_raise,
NULL, // lower
- NULL, // activate
+ _ecore_evas_wl_common_activate,
_ecore_evas_wl_common_title_set,
_ecore_evas_wl_common_name_class_set,
_ecore_evas_wl_common_size_min_set,