if ((win->surface) && (_ecore_wl_disp->wl.tz_policy))
tizen_policy_focus_skip_set(_ecore_wl_disp->wl.tz_policy, win->surface);
}
+ else
+ {
+ if ((win->surface) && (_ecore_wl_disp->wl.tz_policy))
+ tizen_policy_focus_skip_unset(_ecore_wl_disp->wl.tz_policy, win->surface);
+ }
}
/* @since 1.12 */
#define TIZEN_POLICY_ACTIVATE 1
#define TIZEN_POLICY_POSITION_SET 2
#define TIZEN_POLICY_FOCUS_SKIP_SET 3
+#define TIZEN_POLICY_FOCUS_SKIP_UNSET 4
static inline void
tizen_policy_set_user_data(struct tizen_policy *tizen_policy, void *user_data)
TIZEN_POLICY_FOCUS_SKIP_SET, surface);
}
+static inline void
+tizen_policy_focus_skip_unset(struct tizen_policy *tizen_policy, struct wl_surface *surface)
+{
+ wl_proxy_marshal((struct wl_proxy *) tizen_policy,
+ TIZEN_POLICY_FOCUS_SKIP_UNSET, surface);
+}
+
#ifndef TIZEN_VISIBILITY_VISIBILITY_ENUM
#define TIZEN_VISIBILITY_VISIBILITY_ENUM
enum tizen_visibility_visibility {
NULL,
NULL,
&wl_surface_interface,
+ &wl_surface_interface,
};
static const struct wl_message tizen_policy_requests[] = {
{ "activate", "o", types + 3 },
{ "position_set", "oii", types + 4 },
{ "focus_skip_set", "o", types + 7 },
+ { "focus_skip_unset", "o", types + 8 },
};
WL_EXPORT const struct wl_interface tizen_policy_interface = {
"tizen_policy", 1,
- 4, tizen_policy_requests,
+ 5, tizen_policy_requests,
0, NULL,
};