ELM_MAPBUF_DATA_GET(obj, sd);
Elm_Widget_Smart_Data *wd = eo_data_scope_get(obj, ELM_OBJ_WIDGET_CLASS);
- if (sd->enabled)
- {
- static Evas_Map *m = NULL;
-
- if (!m) m = evas_map_new(4);
- evas_object_geometry_get(wd->resize_obj, &x, &y, &w, &h);
- evas_map_util_points_populate_from_geometry(m, x, y, w, h, 0);
- evas_map_smooth_set(m, sd->smooth);
- evas_map_alpha_set(m, sd->alpha);
- evas_object_map_set(sd->content, m);
- evas_object_map_enable_set(sd->content, EINA_TRUE);
- }
- else
- {
- evas_object_map_set(sd->content, NULL);
- evas_object_map_enable_set(sd->content, EINA_FALSE);
- }
+ static Evas_Map *m = NULL;
+
+ if (!m) m = evas_map_new(4);
+ evas_object_geometry_get(wd->resize_obj, &x, &y, &w, &h);
+ evas_map_util_points_populate_from_geometry(m, x, y, w, h, 0);
+ evas_map_smooth_set(m, sd->smooth);
+ evas_map_alpha_set(m, sd->alpha);
+ evas_object_map_set(sd->content, m);
+ evas_object_map_enable_set(sd->content, EINA_TRUE);
}
static void
if ((update_force) || ((x != x2) || (y != y2) || (w != w2) || (h != h2)))
{
- if (!sd->enabled)
- evas_object_move(sd->content, x, y);
- else
+ if (sd->enabled)
{
Evas *e = evas_object_evas_get(obj);
/* This causes many side effects in calculating mapbuf objects.
evas_object_move(sd->content, x, y);
// evas_smart_objects_calculate(e);
evas_nochange_pop(e);
+
+ _mapbuf(obj);
}
- _mapbuf(obj);
+ else
+ evas_object_move(sd->content, x, y);
}
}
sd->enabled = enabled;
if (sd->content) evas_object_static_clip_set(sd->content, sd->enabled);
+
+ if (!sd->enabled && sd->content)
+ {
+ evas_object_map_set(sd->content, NULL);
+ evas_object_map_enable_set(sd->content, EINA_FALSE);
+ }
_configure(obj, EINA_TRUE);
}