summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChunEon Park <hermet@hermet.pe.kr>2013-09-27 02:05:00 +0900
committerChunEon Park <hermet@hermet.pe.kr>2013-09-27 02:05:00 +0900
commitef94c9a6f1588e7ec6711ae4dd57a506a87353e2 (patch)
treec1e6e34956dccb289b3b97dbf540571da90d02c5
parent1eb541ffe663347c247168eca067602a3f928ef4 (diff)
elementary/layout - fix the layout to swallow contents again when theme is changed.
-rw-r--r--ChangeLog4
-rw-r--r--NEWS1
-rw-r--r--src/lib/elm_layout.c22
3 files changed, 26 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 947f1beba..884807c8a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1648,3 +1648,7 @@
16482013-09-21 Daniel Juyung Seo (SeoZ) 16482013-09-21 Daniel Juyung Seo (SeoZ)
1649 1649
1650 * menu: added elm_menu_item_subitems_clear. 1650 * menu: added elm_menu_item_subitems_clear.
1651
16522013-09-27 ChunEon Park (Hermet)
1653
1654 * layout: fixed the layout to swallow the contents again when theme is changed.
diff --git a/NEWS b/NEWS
index e7747edd2..a974127fb 100644
--- a/NEWS
+++ b/NEWS
@@ -287,6 +287,7 @@ Fixes:
287 * Spinner : change part name to access.text from access_text on default style. 287 * Spinner : change part name to access.text from access_text on default style.
288 * Fix fileselector only send "selected" signal without selection when file path is typed on the path entry. 288 * Fix fileselector only send "selected" signal without selection when file path is typed on the path entry.
289 * Fix spinner arrow key focus movement bug. 289 * Fix spinner arrow key focus movement bug.
290 * Fix the layout to swallow the contents again when theme is changed.
290 291
291Removals: 292Removals:
292 293
diff --git a/src/lib/elm_layout.c b/src/lib/elm_layout.c
index 6c0351117..b28704c15 100644
--- a/src/lib/elm_layout.c
+++ b/src/lib/elm_layout.c
@@ -185,6 +185,23 @@ _parts_signals_emit(Elm_Layout_Smart_Data *sd)
185} 185}
186 186
187static void 187static void
188_parts_swallow_fix(Elm_Layout_Smart_Data *sd, Elm_Widget_Smart_Data *wd)
189{
190 Eina_List *l;
191 Elm_Layout_Sub_Object_Data *sub_d;
192
193 EINA_LIST_FOREACH(sd->subs, l, sub_d)
194 {
195 if (sub_d->type == SWALLOW)
196 {
197 if (sub_d->part)
198 edje_object_part_swallow(wd->resize_obj,
199 sub_d->part, sub_d->obj);
200 }
201 }
202}
203
204static void
188_parts_text_fix(Elm_Layout_Smart_Data *sd) 205_parts_text_fix(Elm_Layout_Smart_Data *sd)
189{ 206{
190 const Eina_List *l; 207 const Eina_List *l;
@@ -263,13 +280,16 @@ static void
263_visuals_refresh(Evas_Object *obj, 280_visuals_refresh(Evas_Object *obj,
264 Elm_Layout_Smart_Data *sd) 281 Elm_Layout_Smart_Data *sd)
265{ 282{
283
284 Elm_Widget_Smart_Data *wd = eo_data_scope_get(obj, ELM_OBJ_WIDGET_CLASS);
285
286 _parts_swallow_fix(sd, wd);
266 _parts_text_fix(sd); 287 _parts_text_fix(sd);
267 _parts_signals_emit(sd); 288 _parts_signals_emit(sd);
268 _parts_cursors_apply(sd); 289 _parts_cursors_apply(sd);
269 290
270 eo_do(obj, elm_obj_layout_sizing_eval()); 291 eo_do(obj, elm_obj_layout_sizing_eval());
271 292
272 Elm_Widget_Smart_Data *wd = eo_data_scope_get(sd->obj, ELM_OBJ_WIDGET_CLASS);
273 edje_object_signal_callback_del(wd->resize_obj, 293 edje_object_signal_callback_del(wd->resize_obj,
274 "edje,change,file", "edje", 294 "edje,change,file", "edje",
275 _reload_theme); 295 _reload_theme);