From 2757e05a5914185e0b5e16ab39fa73cd3422abb7 Mon Sep 17 00:00:00 2001 From: Gustavo Sverzut Barbieri Date: Tue, 3 Apr 2012 17:03:47 +0000 Subject: [PATCH] evas box layout bugfix. Due typo the weight was being handled as an integer, not floating point. It worked with examples since they were usually being round to int after being sum (0.3 + 0.7 -> 1.0, 3 + 7 -> 10). SVN revision: 69910 --- legacy/evas/ChangeLog | 4 ++++ legacy/evas/src/lib/canvas/evas_object_box.c | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/legacy/evas/ChangeLog b/legacy/evas/ChangeLog index bc4ec30ab4..7bf3866102 100644 --- a/legacy/evas/ChangeLog +++ b/legacy/evas/ChangeLog @@ -681,3 +681,7 @@ * Add evas_object_ref_get() to be able to tell if others ref an object. +2012-04-03 Gustavo Sverzut Barbieri (k-s) + + * Box layouts: fix handling of weights that have decimal parts, + they were being handled as "int" where "double" was expected. diff --git a/legacy/evas/src/lib/canvas/evas_object_box.c b/legacy/evas/src/lib/canvas/evas_object_box.c index 228d37c45f..8dda42a7b0 100644 --- a/legacy/evas/src/lib/canvas/evas_object_box.c +++ b/legacy/evas/src/lib/canvas/evas_object_box.c @@ -691,7 +691,7 @@ _sizing_eval(Evas_Object *obj) } static int -_evas_object_box_layout_horizontal_weight_apply(Evas_Object_Box_Data *priv, Evas_Object_Box_Option **objects, int n_objects, int remaining, int weight_total) +_evas_object_box_layout_horizontal_weight_apply(Evas_Object_Box_Data *priv, Evas_Object_Box_Option **objects, int n_objects, int remaining, double weight_total) { int rem_diff = 0; int i; @@ -849,7 +849,7 @@ evas_object_box_layout_horizontal(Evas_Object *o, Evas_Object_Box_Data *priv, vo } static int -_evas_object_box_layout_vertical_weight_apply(Evas_Object_Box_Data *priv, Evas_Object_Box_Option **objects, int n_objects, int remaining, int weight_total) +_evas_object_box_layout_vertical_weight_apply(Evas_Object_Box_Data *priv, Evas_Object_Box_Option **objects, int n_objects, int remaining, double weight_total) { int rem_diff = 0; int i;