summaryrefslogtreecommitdiff
path: root/src/grid
diff options
context:
space:
mode:
authorHyojung Jo <hj903.jo@samsung.com>2015-07-31 18:01:49 +0900
committerHyojung Jo <hj903.jo@samsung.com>2015-07-31 18:01:49 +0900
commite9544055b5e31044316b4abce81529a8ca8172b9 (patch)
treea1055672018e2b21f18f10cc0c1fb3475c95abc7 /src/grid
parent001329f936e7ab1eaf61a5ffdf2c4a7bba01e0a4 (diff)
downloadair_favorite-e9544055b5e31044316b4abce81529a8ca8172b9.tar.gz
air_favorite-e9544055b5e31044316b4abce81529a8ca8172b9.tar.bz2
air_favorite-e9544055b5e31044316b4abce81529a8ca8172b9.zip
Fixed the apps grid for animation effect
Change-Id: I67c80db9e3bd15b109acee6d6984965318c93b6c Signed-off-by: Hyojung Jo <hj903.jo@samsung.com>
Diffstat (limited to 'src/grid')
-rw-r--r--src/grid/grid_apps.c61
1 files changed, 42 insertions, 19 deletions
diff --git a/src/grid/grid_apps.c b/src/grid/grid_apps.c
index 57de251..bcd0489 100644
--- a/src/grid/grid_apps.c
+++ b/src/grid/grid_apps.c
@@ -41,24 +41,24 @@ struct color {
};
static struct color color_icon[] = {
- {84, 79, 73, 255},
- {92, 122, 190, 255},
+ {104, 99, 93, 255},
{73, 155, 173, 255},
- {79, 187, 165, 255},
+ {92, 122, 190, 255},
{97, 109, 124, 255},
- {169, 54, 54, 255},
- {206, 118, 70, 255}
+ {219, 162, 96, 255},
+ {79, 187, 165, 255},
+ {169, 54, 54, 255}
};
static struct color color_text[] =
{
- {73, 68, 62, 255},
- {75, 102, 163, 255},
+ {93, 88, 82, 255},
{55, 143, 162, 255},
- {47, 175, 149, 255},
+ {75, 102, 163, 255},
{86, 98, 113, 255},
- {155, 46, 46, 255},
- {200, 99, 45, 255}
+ {194, 133, 62, 255},
+ {47, 175, 149, 255},
+ {155, 46, 46, 255}
};
static char *_text_get(void *data, Evas_Object *obj, const char *part)
@@ -82,23 +82,36 @@ static char *_text_get(void *data, Evas_Object *obj, const char *part)
return strdup(name);
}
+static int _get_color_index(const char *str)
+{
+ int i, value = 0;
+
+ if (!str)
+ return 0;
+
+ for (i = 0; i < strlen(str); i++)
+ value += *str;
+
+ return value % COUNT_COLOR;
+}
+
static Evas_Object *_content_get(void *data, Evas_Object *obj, const char *part)
{
struct datamgr *dmgr;
Evas_Object *img, *ly, *icon_bg, *text_bg = NULL;
- char *icon;
- int idx;
+ char *icon, *name, *img_path;
+ int idx, w, h;
if (!data || !obj) {
_ERR("Data is NULL.");
return NULL;
}
- if (!strcmp(part, PART_THUMB_ICON)) {
- dmgr = get_apps_datamgr();
- if (!dmgr || !dmgr->get_data)
- return NULL;
+ dmgr = get_apps_datamgr();
+ if (!dmgr || !dmgr->get_data)
+ return NULL;
+ if (!strcmp(part, PART_THUMB_ICON)) {
icon = dmgr->get_data(data, DATA_THUMBNAIL);
img = elm_image_add(obj);
@@ -108,12 +121,22 @@ static Evas_Object *_content_get(void *data, Evas_Object *obj, const char *part)
}
if (!icon || !strcmp(icon, STR_NULL))
- elm_image_file_set(img, DEFAULT_APP_PNG, NULL);
+ img_path = DEFAULT_APP_ICON_PNG;
else
- elm_image_file_set(img, icon, NULL);
+ img_path = icon;
+
+ if (!elm_image_file_set(img, img_path, NULL))
+ elm_image_file_set(img, DEFAULT_APP_ICON_PNG, NULL);
+
+ elm_image_object_size_get(img, &w, &h);
+
+ if (w <= SIZE_APP_ICON_MAX && h <= SIZE_APP_ICON_MAX)
+ elm_image_resizable_set(img, EINA_FALSE, EINA_FALSE);
return img;
} else if (!strcmp(part, PART_THUMB_BG)) {
+ name = dmgr->get_data(data, DATA_NAME);
+
ly = elm_layout_add(obj);
if (!ly) {
_ERR("elm_bg_add failed.");
@@ -138,7 +161,7 @@ static Evas_Object *_content_get(void *data, Evas_Object *obj, const char *part)
}
/* FIXME: The color will be changed as GUI later. */
- idx = rand() % COUNT_COLOR;
+ idx = _get_color_index(name);
evas_object_color_set(icon_bg,
color_icon[idx].r, color_icon[idx].g,