View: Fix the Web Browser thumbnail to be displayed first 39/44139/1
authorHyojung Jo <hj903.jo@samsung.com>
Fri, 17 Jul 2015 05:52:03 +0000 (14:52 +0900)
committerHyojung Jo <hj903.jo@samsung.com>
Fri, 17 Jul 2015 05:52:03 +0000 (14:52 +0900)
Change-Id: I0724160561e0057fe37bca901802a9a414238be4
Signed-off-by: Hyojung Jo <hj903.jo@samsung.com>
CMakeLists.txt
include/define.h
res/images/ic_apps_web.png [new file with mode: 0644]
res/widget/gengrid.edc
src/data/app.c
src/grid/grid_myapps.c
src/view/view_base.c

index 817b886..faff52b 100644 (file)
@@ -82,5 +82,7 @@ CONFIGURE_FILE(${PACKAGE_NAME}.xml.in ${PACKAGE_NAME}.xml)
 
 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR})
 INSTALL(FILES ${PACKAGE_NAME}.xml DESTINATION ${PACKAGEDIR})
+INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/res/images/ DESTINATION
+               ${IMGDIR})
 
 ADD_SUBDIRECTORY(res)
index 0c74e61..37ba809 100644 (file)
@@ -41,6 +41,9 @@
 #define PART_THUMB_ICON "part.thumb.icon"
 #define PART_THUMB_ICON_BG "part.thumb.icon.bg"
 #define PART_THUMB_TEXT_BG "part.thumb.text.bg"
+#define PART_THUMB_TEXT "part.thumb.text"
+#define PART_THUMB_TEXT_BROWSER "part.thumb.text.browser"
+#define PART_INSIDE_LINE "part.inside.line"
 
 /* Style */
 #define STYLE_MENU_BTN "style.menu.button"
@@ -76,6 +79,8 @@
 #define STR_Z_TO_A "Z-A"
 #define STR_NULL "(NULL)"
 #define STR_NO_CONTENTS "No Contents"
+#define STR_BROWSER_ID "org.tizen.browser"
+#define STR_BROWSER "Web Browser"
 
 /* Count */
 #define MENU_COUNT 2
@@ -92,5 +97,6 @@
 
 /* Image */
 #define FAVORITE_ICON_PNG "ic_thumbnail_favorite_01.png"
+#define BROWSER_ICON_PNG IMGDIR"/ic_apps_web.png"
 
 #endif /* __AIR_APPS_DEFINE_H__ */
diff --git a/res/images/ic_apps_web.png b/res/images/ic_apps_web.png
new file mode 100644 (file)
index 0000000..652575a
Binary files /dev/null and b/res/images/ic_apps_web.png differ
index 80e4e23..433bd3a 100644 (file)
@@ -17,7 +17,7 @@
 group {
        name, "elm/gengrid/item/style.app/default";
        data.item, "focus_highlight" "on";
-       data.item, "texts" "elm.text";
+       data.item, "texts" "part.thumb.text part.thumb.text.browser";
        data.item, "contents" "part.thumb.icon part.thumb.bg";
        images {
                image, FAVORITE_ICON_PNG COMP;
@@ -25,140 +25,142 @@ group {
 
        parts {
                part {
-                       name, "padding.bottom.right";
-                       type, SPACER;
+                       name, PART_THUMB_BG;
+                       type, SWALLOW;
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               min, 26 26;
-                               rel1.relative, 1.0 1.0;
+                               min, 212 294;
+                               rel2.relative, 0.0 0.0;
+                               align, 0.0 0.0;
                                fixed, 1 1;
-                               align, 1.0 1.0;
                        }
                }
 
                part {
-                       name, PART_THUMB_BG;
-                       type, SWALLOW;
+                       name, "padding.elm.icon";
+                       type, SPACER;
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               min, 212 294;
-                               rel2 {
-                                       to, "padding.bottom.right";
-                                       relative, 0.0 0.0;
-                               }
+                               min, 56 56;
+                               rel2.relative, 0.0 0.0;
+                               align, 0.0 0.0;
                                fixed, 1 1;
                        }
                }
 
                part {
-                       name, "part.focus.text";
-                       type, RECT;
+                       name, PART_THUMB_ICON;
+                       type, SWALLOW;
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               color, 0 119 246 255;
-                               min, 212 82;
-                               rel1.to, "padding.bottom.right";
-                               rel2 {
-                                       to, "padding.bottom.right";
-                                       relative, 0.0 0.0;
+                               min, 100 100;
+                               rel1 {
+                                       to, "padding.elm.icon";
+                                       relative, 1.0 1.0;
                                }
-                               align, 1.0 1.0;
+                               rel2.to, "padding.elm.icon";
+                               align, 0.0 0.0;
                                fixed, 1 1;
-                               visible, 0;
-                       }
-                       description {
-                               state, "focused" 0.0;
-                               inherit, "default" 0.0;
-                               visible, 1;
                        }
                }
 
                part {
-                       name, "padding.elm.text";
+                       name, "padding.favorite";
                        type, SPACER;
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               min, 18 0;
-                               rel1.to, "part.focus.text";
-                               rel2 {
-                                       to, "part.focus.text";
-                                       relative, 0.0 1.0;
-                               }
-                               align, 0.0 0.5;
-                               fixed, 1 0;
+                               min, 164 12;
+                               rel2.relative, 0.0 0.0;
+                               align, 0.0 0.0;
+                               fixed, 1 1;
                        }
                }
 
                part {
-                       name, "elm.text";
-                       type, TEXT;
+                       name, PART_FAVORITE_ICON;
+                       type, IMAGE;
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               color, 255 255 255 255;
-                               min, 176 82;
+                               min, 40 40;
+                               image.normal, FAVORITE_ICON_PNG;
                                rel1 {
-                                       to, "padding.elm.text";
-                                       relative, 1.0 0.0;
-                               }
-                               rel2 {
-                                       to, "padding.elm.text";
-                                       relative, 1.0 0.0;
+                                       to, "padding.favorite";
+                                       relative, 1.0 1.0;
                                }
+                               rel2.to, "padding.favorite";
                                align, 0.0 0.0;
                                fixed, 1 1;
-                               text {
-                                       font, FONT_TIZENSANS_LIGHT;
-                                       size, 28;
-                                       align, 0.0 0.5;
-                               }
+                               visible, 0;
+                       }
+                       description {
+                               state, "visible" 0.0;
+                               inherit, "default" 0.0;
+                               visible, 1;
                        }
                }
 
                part {
-                       name, "padding.elm.icon";
-                       type, SPACER;
+                       name, "part.inside.line.up";
+                       type, RECT;
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               min, 56 56;
+                               color, 194 194 194 255;
+                               min, 212 1;
                                rel2.relative, 0.0 0.0;
                                align, 0.0 0.0;
                                fixed, 1 1;
+                               visible, 0;
+                       }
+                       description {
+                               state, "visible" 0.0;
+                               inherit, "default" 0.0;
+                               visible, 1;
                        }
                }
 
                part {
-                       name, "padding.favorite";
-                       type, SPACER;
+                       name, "part.inside.line.left";
+                       type, RECT;
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               min, 164 12;
+                               color, 194 194 194 255;
+                               min, 1 294;
                                rel2.relative, 0.0 0.0;
                                align, 0.0 0.0;
                                fixed, 1 1;
+                               visible, 0;
+                       }
+                       description {
+                               state, "visible" 0.0;
+                               inherit, "default" 0.0;
+                               visible, 1;
                        }
                }
 
                part {
-                       name, PART_FAVORITE_ICON;
-                       type, IMAGE;
+                       name, "part.inside.line.down";
+                       type, RECT;
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               min, 40 40;
-                               image.normal, FAVORITE_ICON_PNG;
+                               color, 194 194 194 255;
+                               min, 212 1;
                                rel1 {
-                                       to, "padding.favorite";
-                                       relative, 1.0 1.0;
+                                       to, "part.inside.line.left";
+                                       relative, 0.0 1.0;
                                }
-                               rel2.to, "padding.favorite";
-                               align, 0.0 0.0;
+                               rel2 {
+                                       to, "part.inside.line.left";
+                                       relative, 0.0 1.0;
+                               }
+                               align, 0.0 1.0;
                                fixed, 1 1;
                                visible, 0;
                        }
@@ -170,19 +172,53 @@ group {
                }
 
                part {
-                       name, PART_THUMB_ICON;
-                       type, SWALLOW;
+                       name, "part.inside.line.right";
+                       type, RECT;
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               min, 100 100;
+                               color, 194 194 194 255;
+                               min, 1 294;
                                rel1 {
-                                       to, "padding.elm.icon";
-                                       relative, 1.0 1.0;
+                                       to, "part.inside.line.up";
+                                       relative, 1.0 0.0;
+                               }
+                               rel2 {
+                                       to, "part.inside.line.up";
+                                       relative, 1.0 0.0;
+                               }
+                               align, 1.0 0.0;
+                               fixed, 1 1;
+                               visible, 0;
+                       }
+                       description {
+                               state, "visible" 0.0;
+                               inherit, "default" 0.0;
+                               visible, 1;
+                       }
+               }
+
+               part {
+                       name, "part.divide.line";
+                       type, RECT;
+                       scale, 1;
+                       description {
+                               state, "default" 0.0;
+                               color, 194 194 194 255;
+                               min, 212 1;
+                               rel1.to, "part.focus.down";
+                               rel2 {
+                                       to, "part.focus.down";
+                                       relative, 0.0 0.0;
                                }
-                               rel2.to, "padding.elm.icon";
                                align, 0.0 0.0;
                                fixed, 1 1;
+                               visible, 0;
+                       }
+                       description {
+                               state, "visible" 0.0;
+                               inherit, "default" 0.0;
+                               visible, 1;
                        }
                }
 
@@ -213,7 +249,7 @@ group {
                        description {
                                state, "default" 0.0;
                                color, 0 119 246 255;
-                               min, 3 212;
+                               min, 3 294;
                                rel2.relative, 0.0 0.0;
                                align, 0.0 0.0;
                                fixed, 1 1;
@@ -233,7 +269,7 @@ group {
                        description {
                                state, "default" 0.0;
                                color, 0 119 246 255;
-                               min, 212 3;
+                               min, 212 82;
                                rel1 {
                                        to, "part.focus.left";
                                        relative, 0.0 1.0;
@@ -279,6 +315,80 @@ group {
                                visible, 1;
                        }
                }
+
+               part {
+                       name, "padding.thumb.text";
+                       type, SPACER;
+                       scale, 1;
+                       description {
+                               state, "default" 0.0;
+                               min, 18 0;
+                               rel1.to, "part.focus.down";
+                               rel2 {
+                                       to, "part.focus.down";
+                                       relative, 0.0 1.0;
+                               }
+                               align, 0.0 0.5;
+                               fixed, 1 0;
+                       }
+               }
+
+               part {
+                       name, PART_THUMB_TEXT;
+                       type, TEXT;
+                       scale, 1;
+                       description {
+                               state, "default" 0.0;
+                               color, 255 255 255 255;
+                               min, 176 82;
+                               rel1 {
+                                       to, "padding.thumb.text";
+                                       relative, 1.0 0.0;
+                               }
+                               rel2 {
+                                       to, "padding.thumb.text";
+                                       relative, 1.0 0.0;
+                               }
+                               align, 0.0 0.0;
+                               fixed, 1 1;
+                               text {
+                                       font, FONT_TIZENSANS_LIGHT;
+                                       size, 28;
+                                       align, 0.0 0.5;
+                               }
+                       }
+               }
+
+               part {
+                       name, PART_THUMB_TEXT_BROWSER;
+                       type, TEXT;
+                       scale, 1;
+                       description {
+                               state, "default" 0.0;
+                               color, 92 92 92 255;
+                               min, 176 82;
+                               rel1 {
+                                       to, "padding.thumb.text";
+                                       relative, 1.0 0.0;
+                               }
+                               rel2 {
+                                       to, "padding.thumb.text";
+                                       relative, 1.0 0.0;
+                               }
+                               align, 0.0 0.0;
+                               fixed, 1 1;
+                               text {
+                                       font, FONT_TIZENSANS_LIGHT;
+                                       size, 28;
+                                       align, 0.0 0.5;
+                               }
+                       }
+                       description {
+                               state, "focused" 0.0;
+                               inherit, "default" 0.0;
+                               color, 255 255 255 255;
+                       }
+               }
        }
 
        programs{
@@ -291,7 +401,7 @@ group {
                        target, "part.focus.left";
                        target, "part.focus.down";
                        target, "part.focus.right";
-                       target, "part.focus.text";
+                       target, PART_THUMB_TEXT_BROWSER;
                        after, "item_focused";
                }
 
@@ -304,7 +414,7 @@ group {
                        target, "part.focus.left";
                        target, "part.focus.down";
                        target, "part.focus.right";
-                       target, "part.focus.text";
+                       target, PART_THUMB_TEXT_BROWSER;
                }
 
                program {
@@ -338,5 +448,17 @@ group {
                        action, STATE_SET "visible" 0.0;
                        target, PART_FAVORITE_ICON;
                }
+
+               program {
+                       name, "visible";
+                       signal, "visible";
+                       source, PART_INSIDE_LINE;
+                       action, STATE_SET "visible" 0.0;
+                       target, "part.inside.line.up";
+                       target, "part.inside.line.left";
+                       target, "part.inside.line.down";
+                       target, "part.inside.line.right";
+                       target, "part.divide.line";
+               }
        }
 }
index 031a7d0..d93c036 100644 (file)
@@ -18,6 +18,7 @@
 #include <app_contents.h>
 #include <app_debug.h>
 
+#include "define.h"
 #include "data/app.h"
 
 struct app_data {
@@ -75,6 +76,11 @@ static int _get_app_data_foreach(pkgmgrinfo_appinfo_h handle, void *data)
 
        adata->is_favorite = is_favorite;
 
+       if (!strcmp(appid, STR_BROWSER_ID)) {
+               *list = eina_list_prepend(*list, adata);
+               return 0;
+       }
+
        *list = eina_list_append(*list, adata);
 
        return 0;
index 32506f8..b146480 100644 (file)
@@ -38,7 +38,8 @@ static struct color color_icon[] = {
        {79, 187, 165, 255},
        {97, 109, 124, 255},
        {169, 54, 54, 255},
-       {206, 118, 70, 255}
+       {206, 118, 70, 255},
+       {255, 255, 255, 255}
 };
 
 static struct color color_text[] =
@@ -49,7 +50,8 @@ static struct color color_text[] =
        {47, 175, 149, 255},
        {86, 98, 113, 255},
        {155, 46, 46, 255},
-       {200, 99, 45, 255}
+       {200, 99, 45, 255},
+       {255, 255, 255, 255}
 };
 
 static char *_text_get(void *data, Evas_Object *obj, const char *part)
@@ -62,7 +64,14 @@ static char *_text_get(void *data, Evas_Object *obj, const char *part)
        }
        adata = data;
 
-       return strdup(get_app_name(adata));
+       if (!strcmp(get_app_id(adata), STR_BROWSER_ID) &&
+                       !strcmp(part, PART_THUMB_TEXT_BROWSER))
+               return strdup(STR_BROWSER);
+       else if (strcmp(get_app_id(adata), STR_BROWSER_ID) &&
+                       !strcmp(part, PART_THUMB_TEXT))
+               return strdup(get_app_name(adata));
+
+       return NULL;
 }
 
 static Evas_Object *_content_get(void *data, Evas_Object *obj, const char *part)
@@ -90,6 +99,8 @@ static Evas_Object *_content_get(void *data, Evas_Object *obj, const char *part)
                if (!icon || !strcmp(icon, STR_NULL))
                        /* FIXME: The default icon image should be registerd. */
                        elm_image_file_set(img, NULL, NULL);
+               else if (!strcmp(get_app_id(adata), STR_BROWSER_ID))
+                       elm_image_file_set(img, BROWSER_ICON_PNG, NULL);
                else
                        elm_image_file_set(img, icon, NULL);
 
@@ -119,7 +130,10 @@ 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;
+               if (!strcmp(get_app_id(adata), STR_BROWSER_ID))
+                       idx = COUNT_COLOR;
+               else
+                       idx = rand() % (COUNT_COLOR - 1);
 
                evas_object_color_set(icon_bg,
                                color_icon[idx].r, color_icon[idx].g,
index 4017d6e..d901ddc 100644 (file)
@@ -431,6 +431,10 @@ static void _grid_realized_cb(int id, void *data, Evas_Object *obj,
        if (isfavorite)
                elm_object_item_signal_emit(item, SIG_FAVORITE,
                                PART_FAVORITE_ICON);
+
+       if (!strcmp(get_app_id(adata), STR_BROWSER_ID))
+               elm_object_item_signal_emit(item, SIG_VISIBLE,
+                               PART_INSIDE_LINE);
 }
 
 static void _grid_unrealized_cb(int id, void *data, Evas_Object *obj,