discomfitor pushed a commit to branch master.

http://git.enlightenment.org/enlightenment/modules/desksanity.git/commit/?id=09f508c2edbbdb596066716d37bd2bdc71cd28b5

commit 09f508c2edbbdb596066716d37bd2bdc71cd28b5
Author: Mike Blumenkrantz <[email protected]>
Date:   Tue Mar 31 19:00:29 2015 -0400

    maybe fix zoom animation geometries?
---
 src/zoom.c | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/src/zoom.c b/src/zoom.c
index 7dab6be..a92446c 100644
--- a/src/zoom.c
+++ b/src/zoom.c
@@ -256,7 +256,8 @@ _zoomobj_position_client(Evas_Object *m)
 
    e = evas_object_smart_parent_get(m);
    ec = evas_object_data_get(m, "E_Client");
-   evas_object_geometry_get(e, &x, &y, &w, &h);
+   evas_object_geometry_get(e, &x, &y, NULL, NULL);
+   evas_object_size_hint_min_get(e, &w, &h);
    _edje_custom_setup(e, ec, x, y, w, h);
    edje_object_signal_emit(e, "e,action,show", "e");
 }
@@ -309,23 +310,23 @@ _relayout(Evas_Object *zoom_obj, Evas_Object *scr, 
Evas_Object *tb)
 {
    Eina_List *l, *clients;
    Evas_Object *m;
-   int tw, th;
    unsigned int id = 1;
 
    clients = evas_object_data_get(zoom_obj, "__DSCLIENTS");
    e_comp_object_util_del_list_remove(zoom_obj, tb);
    evas_object_del(tb);
    tb = elm_table_add(e_comp->elm);
+   E_EXPAND(tb);
+   E_FILL(tb);
    e_comp_object_util_del_list_append(zoom_obj, tb);
    elm_table_homogeneous_set(tb, 1);
    EINA_LIST_FOREACH(clients, l, m)
      _zoomobj_pack_client(evas_object_data_get(m, "E_Client"),
      e_comp_object_util_zone_get(zoom_obj), tb, m, id++,
      _cols_calc(eina_list_count(clients)));
-   evas_object_smart_calculate(tb);
-   evas_object_size_hint_min_get(tb, &tw, &th);
-   evas_object_resize(tb, tw, th);
    elm_object_content_set(scr, tb);
+   evas_object_smart_need_recalculate_set(tb, 1);
+   evas_object_smart_calculate(tb);
    E_LIST_FOREACH(clients, _zoomobj_position_client);
 }
 
@@ -517,6 +518,8 @@ zoom(Eina_List *clients, E_Zone *zone)
      }
 
    elm_object_content_set(scr, tb);
+   evas_object_smart_need_recalculate_set(tb, 1);
+   evas_object_smart_calculate(tb);
    elm_layout_signal_emit(zoom_obj, "e,state,active", "e");
 
    E_LIST_FOREACH(clients, _zoomobj_position_client);

-- 


Reply via email to