Fix gengrid usage of item class style.
authorGustavo Sverzut Barbieri <barbieri@gmail.com>
Thu, 8 Jul 2010 23:17:12 +0000 (23:17 +0000)
committerGustavo Sverzut Barbieri <barbieri@gmail.com>
Thu, 8 Jul 2010 23:17:12 +0000 (23:17 +0000)
By: Leandro "acidx" Pereira <leandro@profusion.mobi>

SVN revision: 50136

src/lib/elm_gengrid.c
src/lib/elm_layout.c

index 5a26bd5..af26d35 100644 (file)
@@ -439,6 +439,7 @@ static void
 _item_realize(Elm_Gengrid_Item *item)
 {
    char buf[1024];
+   char style[1024];
 
    if ((item->realized) || (item->delete_me)) return;
    item->base = edje_object_add(evas_object_evas_get(item->wd->self));
@@ -446,7 +447,9 @@ _item_realize(Elm_Gengrid_Item *item)
                         _elm_config->scale);
    evas_object_smart_member_add(item->base, item->wd->pan_smart);
    elm_widget_sub_object_add(item->wd->self, item->base);
-   _elm_theme_object_set(item->wd->self, item->base, "gengrid", "item/default",
+   snprintf(style, sizeof(style), "item/%s",
+           item->gic->item_style ? item->gic->item_style : "default");
+   _elm_theme_object_set(item->wd->self, item->base, "gengrid", style,
                          elm_widget_style_get(item->wd->self));
    item->spacer = evas_object_rectangle_add(evas_object_evas_get(item->wd->self));
    evas_object_color_set(item->spacer, 0, 0, 0, 0);
index 5b8da4f..3533063 100644 (file)
@@ -279,10 +279,9 @@ elm_layout_content_unset(Evas_Object *obj, const char *swallow)
          {
             Evas_Object *content;
             if (!si->obj) return NULL;
-            content = si->obj;
-            elm_widget_sub_object_del(obj, si->obj);
-            edje_object_part_unswallow(wd->lay, si->obj);
-            si->obj = NULL;
+            content = si->obj; /* si will die in _sub_del due elm_widget_sub_object_del() */
+            elm_widget_sub_object_del(obj, content);
+            edje_object_part_unswallow(wd->lay, content);
             return content;
          }
      }