Installs, for the default policy, a callback that allows it.
Bug-AGL: SPEC-3217
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: Ic0f1a7db93df480d263db8240592f65a8864ccd6
output = surf->desktop.pending_output;
if (!output) {
struct ivi_output *ivi_bg_output;
output = surf->desktop.pending_output;
if (!output) {
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;
- /* FIXME: This should be changed to determine if the policy
- * database allows that to happen */
if (!surf->ivi->quirks.activate_apps_by_default)
return;
if (!surf->ivi->quirks.activate_apps_by_default)
return;
ivi_bg_output = ivi_layout_find_bg_output(surf->ivi);
/* use the output of the bg to activate the app on start-up by
ivi_bg_output = ivi_layout_find_bg_output(surf->ivi);
/* use the output of the bg to activate the app on start-up by
+static bool
+ivi_policy_default_surface_activate_default(struct ivi_surface *surf, void *user_data)
+{
+ /* verify that the surface should be switched to */
+ return true;
+}
+
static bool
ivi_policy_default_allow_to_add(void *user_data)
{
static bool
ivi_policy_default_allow_to_add(void *user_data)
{
.surface_create = ivi_policy_default_surface_create,
.surface_commited = ivi_policy_default_surface_commmited,
.surface_activate = ivi_policy_default_surface_activate,
.surface_create = ivi_policy_default_surface_create,
.surface_commited = ivi_policy_default_surface_commmited,
.surface_activate = ivi_policy_default_surface_activate,
+ .surface_activate_by_default = ivi_policy_default_surface_activate_default,
.policy_rule_allow_to_add = ivi_policy_default_allow_to_add,
.policy_rule_try_event = ivi_policy_default_try_event,
};
.policy_rule_allow_to_add = ivi_policy_default_allow_to_add,
.policy_rule_try_event = ivi_policy_default_try_event,
};