{
// FIXME: Only the default zone(screen) update the focus.
// Multi-zones(Multi-screens) are not supported yet.
- if (zone->id > 0) continue;
+ if (!zone->focus) continue;
e_focus_update(zone->focus);
}
zone->display_state = E_ZONE_DISPLAY_STATE_ON;
#ifdef REFACTOR_FOCUS_POLICY
- if (e_config->focus_policy_ext == E_FOCUS_EXT_TOP_STACK)
- {
- zone->focus = e_focus_new(zone, E_FOCUS_EXT_TOP_STACK);
- }
- else if (e_config->focus_policy_ext == E_FOCUS_EXT_HISTORY)
- {
- zone->focus = e_focus_new(zone, E_FOCUS_EXT_HISTORY);
- }
- else
- {
- // default focus policy is E_FOCUS_EXT_TOP_STACK
- zone->focus = e_focus_new(zone, E_FOCUS_EXT_TOP_STACK);
- }
- if (!zone->focus)
+ // Create E_Focus at only default zone which the zone num is 0
+ if (zone->num == 0)
{
- e_object_del(E_OBJECT(zone));
- ERR("Fail to create focus object at zone %d", zone->num);
- return NULL;
+ if (e_config->focus_policy_ext == E_FOCUS_EXT_TOP_STACK)
+ zone->focus = e_focus_new(zone, E_FOCUS_EXT_TOP_STACK);
+ else if (e_config->focus_policy_ext == E_FOCUS_EXT_HISTORY)
+ zone->focus = e_focus_new(zone, E_FOCUS_EXT_HISTORY);
+ else
+ // default focus policy is E_FOCUS_EXT_TOP_STACK
+ zone->focus = e_focus_new(zone, E_FOCUS_EXT_TOP_STACK);
+ if (!zone->focus)
+ {
+ e_object_del(E_OBJECT(zone));
+ ERR("Fail to create focus object at zone %d", zone->num);
+ return NULL;
+ }
}
#endif