This patch will fix this error.
ERR<4041>:evas_main lib/evas/canvas/evas_object_main.c:1418
_evas_object_efl_gfx_base_color_set() Evas only handles pre multiplied colors!
Change-Id: I97259f51e587dbabb97e9292cf9bf007b1cd887e
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
#include <media_content.h>
#include <app_media.h>
+void util_set_alpha_color(Evas_Object *obj, int alpha);
Evas_Object *util_add_box(Evas_Object *base);
Evas_Object *util_add_gengrid(Evas_Object *base,
int item_size_x, int item_size_y);
evas_object_show(image);
}
} else if (!strcmp(part, PART_ELM_SWALLOW_FAVORITE)) {
- int r, g, b, a;
-
if (!info->favorite)
return NULL;
return NULL;
}
- evas_object_color_get(image, &r, &g, &b, &a);
- evas_object_color_set(image, r, g, b, IMAGE_FAVORITE_ALPHA);
+ util_set_alpha_color(image, IMAGE_FAVORITE_ALPHA);
evas_object_show(image);
}
evas_object_show(image);
} else if (!strcmp(part, PART_ELM_SWALLOW_FAVORITE)) {
- int r, g, b, a;
-
if (!info->favorite)
return NULL;
return NULL;
}
- evas_object_color_get(image, &r, &g, &b, &a);
- evas_object_color_set(image, r, g, b, IMAGE_FAVORITE_ALPHA);
+ util_set_alpha_color(image, IMAGE_FAVORITE_ALPHA);
evas_object_show(image);
}
#include "util/util.h"
+void util_set_alpha_color(Evas_Object *obj, int alpha)
+{
+ int r, g, b, a;
+
+ evas_object_color_get(obj, &r, &g, &b, &a);
+
+ /* evas should use premultiplied alpha */
+ r = r * alpha / 255;
+ g = g * alpha / 255;
+ b = b * alpha / 255;
+
+ evas_object_color_set(obj, r, g, b, alpha);
+}
+
Evas_Object *util_add_box(Evas_Object *base)
{
Evas_Object *box;