to handle that
With the policy hooks in place we no longer need this quirk to activate
surfaces by default when starting up, and was potentially seen as hole
to bypass the policy hooks. Remove it and just allow the policy hook to
control how that happens.
Bug-AGL: SPEC-3280
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: I4c28648f0805e5c593c082c644d2e126b1d9df6b
struct wl_global *agl_shell;
struct wl_global *agl_shell_desktop;
struct wl_global *agl_shell;
struct wl_global *agl_shell_desktop;
- struct {
- bool activate_apps_by_default; /* switches once xdg top level has been 'created' */
- } quirks;
struct {
struct wl_client *client;
struct {
struct wl_client *client;
struct ivi_output *ivi_bg_output;
struct ivi_policy *policy = surf->ivi->policy;
struct ivi_output *ivi_bg_output;
struct ivi_policy *policy = surf->ivi->policy;
- if (policy && policy->api.surface_activate_by_default)
- if (policy->api.surface_activate_by_default(surf, surf->ivi))
- goto skip_config_check;
-
- if (!surf->ivi->quirks.activate_apps_by_default)
+ if (policy && policy->api.surface_activate_by_default &&
+ !policy->api.surface_activate_by_default(surf, surf->ivi))
/* we can only activate it again by using the protocol */
if (surf->activated_by_default)
return;
/* we can only activate it again by using the protocol */
if (surf->activated_by_default)
return;
-static void
-ivi_compositor_get_quirks(struct ivi_compositor *ivi)
-{
- struct weston_config_section *section;
-
- if (!ivi->config)
- return;
-
- section = weston_config_get_section(ivi->config, "shell", NULL, NULL);
- weston_config_section_get_bool(section, "activate-by-default",
- &ivi->quirks.activate_apps_by_default, 0);
-
-}
-
int main(int argc, char *argv[])
{
struct ivi_compositor ivi = { 0 };
int main(int argc, char *argv[])
{
struct ivi_compositor ivi = { 0 };
backend = choose_default_backend();
}
backend = choose_default_backend();
}
- ivi_compositor_get_quirks(&ivi);
-
display = wl_display_create();
loop = wl_display_get_event_loop(display);
display = wl_display_create();
loop = wl_display_get_event_loop(display);