fix transitions.

SVN revision: 32225
This commit is contained in:
Carsten Haitzler 2007-10-31 04:18:20 +00:00
parent 288e110240
commit 67d9f11185
1 changed files with 11 additions and 3 deletions

View File

@ -209,6 +209,7 @@ e_bg_zone_update(E_Zone *zone, E_Bg_Transition transition)
}
o = edje_object_add(zone->container->bg_evas);
zone->transition_object = o;
/* FIXME: segv if zone is deleted while up??? */
evas_object_data_set(o, "e_zone", zone);
snprintf(buf, sizeof(buf), "e/transitions/%s", trans);
e_theme_edje_object_set(o, "base/theme/transitions", buf);
@ -222,17 +223,24 @@ e_bg_zone_update(E_Zone *zone, E_Bg_Transition transition)
o = edje_object_add(zone->container->bg_evas);
zone->bg_object = o;
evas_object_data_set(o, "e_zone", zone);
evas_object_move(o, zone->x, zone->y);
evas_object_resize(o, zone->w, zone->h);
edje_object_file_set(o, bgfile, "e/desktop/background");
evas_object_layer_set(o, -1);
if (transition == E_BG_TRANSITION_NONE)
{
evas_object_move(o, zone->x, zone->y);
evas_object_resize(o, zone->w, zone->h);
evas_object_layer_set(o, -1);
}
evas_object_clip_set(o, zone->bg_clip_object);
evas_object_show(o);
if (transition != E_BG_TRANSITION_NONE)
{
edje_extern_object_max_size_set(zone->prev_bg_object, 65536, 65536);
edje_extern_object_min_size_set(zone->prev_bg_object, 0, 0);
edje_object_part_swallow(zone->transition_object, "e.swallow.bg.old",
zone->prev_bg_object);
edje_extern_object_max_size_set(zone->bg_object, 65536, 65536);
edje_extern_object_min_size_set(zone->bg_object, 0, 0);
edje_object_part_swallow(zone->transition_object, "e.swallow.bg.new",
zone->bg_object);
edje_object_signal_emit(zone->transition_object, "e,action,start", "e");