From: Jagrat Patidar Date: Thu, 2 Apr 2020 07:22:26 +0000 (+0530) Subject: This patch includes following - X-Git-Tag: submit/tizen/20200402.102635^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8154b22fe29f93ad5d4c2f4c33571eb0de26e0b5;p=profile%2Fiot%2Fapps%2Fnative%2Fhomescreen-efl.git This patch includes following - 1)Includes "folder title clear button" feature. 2)Corrects icon badge images. 3)Solves JIRA TIZENIOT-1408. 4)Includes edit mode animation. Change-Id: I223f49591f1e0aab2f19f8afe7f8d219d195581d Signed-off-by: Jagrat Patidar --- diff --git a/inc/conf.h b/inc/conf.h old mode 100644 new mode 100755 index 66e404a..1742466 --- a/inc/conf.h +++ b/inc/conf.h @@ -124,7 +124,7 @@ extern int __conf_get_cluster_all_page_w(); #define CLUSTER_MAX_PAGE 6 #define CLUSTER_VIEW_ALLPAGE_MOVE_GAP 10000 -#define PAGE_INDICATOR_PADDING_BOTTON ((16) * (__conf_get_resolution_scale_h())) +#define PAGE_INDICATOR_PADDING_BOTTON ((40) * (__conf_get_resolution_scale_h())) #define PAGE_INDICATOR_H ((76) * (__conf_get_resolution_scale_h())) #define PAGE_INDICATOR_W ((720) * (__conf_get_resolution_scale_w())) #define PAGE_INDICATOR_GAP 4 diff --git a/inc/edc_conf.h b/inc/edc_conf.h old mode 100755 new mode 100644 index 732728b..91852dd --- a/inc/edc_conf.h +++ b/inc/edc_conf.h @@ -125,6 +125,8 @@ #define APPS_VIEW_BG_OPACITY 50 + +#define GROUP_APP_ICON_LY_FOLDER "apps_icon_ly" #define GROUP_APP_ICON_LY "icon_ly" #define APPS_ICON_CONTENT "icon_content" #define APPS_ICON_SD_CARD "icon_sdcard" @@ -136,7 +138,9 @@ #define SIGNAL_EXTERNAL_ICON_DISABLE "external_icon_disable" #define SIGNAL_EXTERNAL_ICON_ENABLE "external_icon_enable" #define SIGNAL_BADGE_SHOW "badge_show" -#define SIGNAL_BADGE_SHOW_LARGE "badge_show_large" +#define SIGNAL_BADGE_SHOW_LARGE2 "badge_show_large2" +#define SIGNAL_BADGE_SHOW_LARGE3 "badge_show_large3" +#define SIGNAL_BADGE_SHOW_LARGE4 "badge_show_large4" #define SIGNAL_BADGE_HIDE "badge_hide" #define SIGNAL_ICON_NAME_SHOW "icon_name_show" #define SIGNAL_ICON_NAME_HIDE "icon_name_hide" @@ -158,6 +162,7 @@ #define APPS_FOLDER_COL 3 #define APPS_FOLDER_ROW 2 #define APPS_FOLDER_TITLE "apps_folder_title" +#define APPS_FOLDER_CLEAR_TITLE_BUTTON "apps_folder_clear_title_button" #define APPS_FOLDER_SEPARATOR "apps_folder_separator" #define APPS_FOLDER_CONTAINER "apps_folder_container" #define APPS_FOLDER_PLUS_ICON "apps_folder_plus" @@ -178,6 +183,9 @@ #define SIGNAL_DELETE_BUTTON_SHOW "delete_button_show" #define SIGNAL_DELETE_BUTTON_HIDE "delete_button_hide" #define SIGNAL_DELETE_BUTTON_CLICKED "delete_button_clicked" +#define SIGNAL_FOLDER_TITLE_BUTTON_HIDE "folder_title_button_hide" +#define SIGNAL_FOLDER_TITLE_BUTTON_SHOW "folder_title_button_show" +#define SIGNAL_FOLDER_TITLE_CLEAR_BUTTON_CLICKED "folder_title_clear_button_clicked" #define ADD_WIDGET_VIEWER_CONFORMANT_FRAME "add_widget_viewer_conformant_frame" #define ADD_WIDGET_VIEWER_CONTENT_FRAME "add_widget_viewer_content_frame" @@ -185,4 +193,6 @@ #define ADD_WIDGET_VIEWER_PREVIEW_ICON "add_widget_viewer_preview_ICON" #define SIGNAL_PREVIEW_CLICKED "preview_clicked" +#define FOLDER_ICON_CONTENT_TOUCH "folder_icon_clicked" + #endif /* __EDC_CONF_H__ */ diff --git a/res/edje/app_icon.edc b/res/edje/app_icon.edc index 639cfa2..72c97dd 100644 --- a/res/edje/app_icon.edc +++ b/res/edje/app_icon.edc @@ -18,15 +18,18 @@ images { image: "app_press_117.png" COMP; + image: "app_press_118.png" COMP; image: "app_icon_sdcard_hd.png" COMP; image: "btn_delete_nor.png" COMP; image: "btn_delete_press.png" COMP; - image: "icon_badge_container.png" COMP; image: "core_check_bg.png" COMP; image: "core_check_bg_stroke.png" COMP; image: "core_check_icon.png" COMP; image: "folder_appicon_bg.png" COMP; + image: "icon_badge_container1.png" COMP; image: "icon_badge_container2.png" COMP; + image: "icon_badge_container3.png" COMP; + image: "icon_badge_container4.png" COMP; } styles { @@ -130,7 +133,7 @@ collections { inherit: "default" 0.0; color: 0 0 0 250; } - } //APPS_ICON_CONTENT_TOUCH + } part { name: "app_icon_disable"; type: IMAGE; @@ -189,14 +192,14 @@ collections { description { state: "default" 0.0; - rel1{relative: 50/84 -3/84; to: APPS_ICON_CONTENT;} - rel2{relative: 90/84 37/84; to: APPS_ICON_CONTENT;} + rel1{relative: 62/196 0/183; to: SIZE_SETTER;} + rel2{relative: 94/196 32/183; to: SIZE_SETTER;} visible: 0; - min : 40 40; - max : 40 40; + min : 32 32; + max : 32 32; image { - normal: "icon_badge_container.png"; + normal: "icon_badge_container1.png"; } } description @@ -208,10 +211,10 @@ collections { description { state: "show2" 0.0; - rel1{relative: 8/84 -3/84; to: APPS_ICON_CONTENT;} - rel2{relative: 90/84 37/84; to: APPS_ICON_CONTENT;} - min : 82 40; - max : 82 40; + rel1{relative: 49/196 0/183; to: SIZE_SETTER;} + rel2{relative: 94/196 32/183; to: SIZE_SETTER;} + min : 45 32; + max : 45 32; fixed : 1 1; image { @@ -219,6 +222,34 @@ collections { } visible: 1; } + description + { + state: "show3" 0.0; + rel1{relative: 37/196 0/183; to: SIZE_SETTER;} + rel2{relative: 95/196 32/183; to: SIZE_SETTER;} + min : 58 32; + max : 58 32; + fixed : 1 1; + image + { + normal: "icon_badge_container3.png"; + } + visible: 1; + } + description + { + state: "show4" 0.0; + rel1{relative: 24/196 0/183; to: SIZE_SETTER;} + rel2{relative: 94/196 32/183; to: SIZE_SETTER;} + min : 70 32; + max : 70 32; + fixed : 1 1; + image + { + normal: "icon_badge_container4.png"; + } + visible: 1; + } } part { @@ -231,8 +262,8 @@ collections { visible: 0; fixed: 1 1; color: 255 255 255 255; - rel1{relative: 64/84 7/84; to: APPS_ICON_CONTENT;} - rel2{relative: 76/84 24/84; to: APPS_ICON_CONTENT;} + rel1{relative: 62/196 0/183; to: SIZE_SETTER;} + rel2{relative: 94/196 30/183; to: SIZE_SETTER;} align: 0.5 0.5; text { @@ -253,8 +284,24 @@ collections { { state: "show2" 0.0; inherit: "default" 0.0; - rel1{relative: 23/84 7/84; to: APPS_ICON_CONTENT;} - rel2{relative: 75/84 25/84; to: APPS_ICON_CONTENT;} + rel1{relative: 49/196 0/183; to: SIZE_SETTER;} + rel2{relative: 94/196 30/183; to: SIZE_SETTER;} + visible: 1; + } + description + { + state: "show3" 0.0; + inherit: "default" 0.0; + rel1{relative: 37/196 0/183; to: SIZE_SETTER;} + rel2{relative: 95/196 30/183; to: SIZE_SETTER;} + visible: 1; + } + description + { + state: "show4" 0.0; + inherit: "default" 0.0; + rel1{relative: 24/196 0/183; to: SIZE_SETTER;} + rel2{relative: 94/196 30/183; to: SIZE_SETTER;} visible: 1; } } @@ -548,14 +595,663 @@ collections { target: APPS_ICON_BADGE_TEXT; } program { - name: "icon_badge_show_large"; - signal: SIGNAL_BADGE_SHOW_LARGE; + name: "icon_badge_show_large2"; + signal: SIGNAL_BADGE_SHOW_LARGE2; source: SIGNAL_SOURCE; action: STATE_SET "show2" 0.0; target: "icon_badge"; target: APPS_ICON_BADGE_TEXT; } program { + name: "icon_badge_show_large3"; + signal: SIGNAL_BADGE_SHOW_LARGE3; + source: SIGNAL_SOURCE; + action: STATE_SET "show3" 0.0; + target: "icon_badge"; + target: APPS_ICON_BADGE_TEXT; + } + program { + name: "icon_badge_show_large4"; + signal: SIGNAL_BADGE_SHOW_LARGE4; + source: SIGNAL_SOURCE; + action: STATE_SET "show4" 0.0; + target: "icon_badge"; + target: APPS_ICON_BADGE_TEXT; + } + program { + name: "icon_badge_hide"; + signal: SIGNAL_BADGE_HIDE; + source: SIGNAL_SOURCE; + action: STATE_SET "default" 0.0; + target: "icon_badge"; + target: APPS_ICON_BADGE_TEXT; + } + program { + name: "icon_enable"; + signal: SIGNAL_ICON_ENABLE; + source: SIGNAL_SOURCE; + action: STATE_SET "default" 0.0; + target: "app_icon_disable"; + target: APPS_ICON_NAME; + } + program { + name: "icon_disable"; + signal: SIGNAL_ICON_DISABLE; + source: SIGNAL_SOURCE; + action: STATE_SET "disable" 0.0; + target: "app_icon_disable"; + target: APPS_ICON_NAME; + } + program { + name: "external_app_enable"; + signal: SIGNAL_EXTERNAL_ICON_ENABLE; + source: SIGNAL_SOURCE; + action: STATE_SET "default" 0.0; + target: APPS_ICON_SD_CARD; + target: APPS_ICON_SD_CARD; + target: "external_disable_area"; + } + program { + name: "external_app_disable"; + signal: SIGNAL_EXTERNAL_ICON_DISABLE; + source: SIGNAL_SOURCE; + action: STATE_SET "external_disable" 0.0; + target: APPS_ICON_SD_CARD; + target: "external_disable_area"; + } + program { + name: "icon_picked"; + signal: SIGNAL_ICON_NAME_HIDE; + source: SIGNAL_SOURCE; + action: STATE_SET "hide" 0.0; + target: APPS_ICON_NAME; + } + program { + name: "icon_drop"; + signal: SIGNAL_ICON_NAME_SHOW; + source: SIGNAL_SOURCE; + action: STATE_SET "default" 0.0; + target: APPS_ICON_NAME; + } + } + } + + group { name: GROUP_APP_ICON_LY_FOLDER; + parts { + part { name: SIZE_SETTER; + type: SWALLOW; + mouse_events: 1; + repeat_events: 1; + description { + state: "default" 0.0; + align: 0 0; + rel1.relative: 0.0 0.0; + rel2.relative: 1.0 1.0; + } + } + part { name: APPS_ICON_CONTENT; + type: SWALLOW; + description { + state: "default" 0.0; + rel1{relative: 0 7/183; to: SIZE_SETTER;} + rel2{relative: 88/196 95/183; to: SIZE_SETTER;} + align: 0.5 0; + min: 88 88; + max: 88 88; + fixed: 1 1; + } + } //APPS_ICON_CONTENT + + part { name: "external_disable_area"; + type: IMAGE; + mouse_events: 1; + repeat_events: 1; + description { + state: "default" 0.0; + rel1{relative: 0.0 0.0; to: APPS_ICON_CONTENT;} + rel2{relative: 1.0 1.0; to: APPS_ICON_CONTENT;} + aspect: 1.0 1.0; + aspect_preference: BOTH; + color: 0 0 0 0; + image { + normal: "folder_appicon_bg.png"; + } + visible: 0; + } + description{ + state: "external_disable" 0.0; + inherit: "default" 0.0; + color: 0 0 0 150; + visible: 1; + } + } //EXTERNAL_DIABLE + + part { name: APPS_ICON_SD_CARD; + type: IMAGE; + description { + state: "default" 0.0; + rel1{relative: 0.0 0.0; to: APPS_ICON_CONTENT;} + rel2{relative: 1.0 1.0; to: APPS_ICON_CONTENT;} + align: 0.0 0.0; + fixed: 1 1; + visible: 0; + image { + normal: "app_icon_sdcard_hd.png"; + } + } + description{ + state: "external_disable" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } //APPS_ICON_SD_CARD + + part { name: FOLDER_ICON_CONTENT_TOUCH; + type: IMAGE; + mouse_events: 1; + repeat_events: 1; + description { + state: "default" 0.0; + rel1{relative: 0.0 0.0; to: APPS_ICON_CONTENT;} + rel2{relative: 1.0 1.0; to: APPS_ICON_CONTENT;} + aspect: 1.0 1.0; + aspect_preference: BOTH; + color: 0 0 0 0; + image { + normal: "app_press_118.png"; + } + } + description{ + state: "icon_touched" 0.0; + inherit: "default" 0.0; + color: 0 0 0 75; + } + } + + part { name: "app_icon_disable"; + type: IMAGE; + mouse_events: 1; + repeat_events: 0; + description { + state: "default" 0.0; + rel1{relative: 0.0 0.0; to: APPS_ICON_CONTENT;} + rel2{relative: 1.0 1.0; to: APPS_ICON_CONTENT;} + aspect: 1.0 1.0; + aspect_preference: BOTH; + color: 0 0 0 0; + image { + normal: "folder_appicon_bg.png"; + } + visible: 0; + } + description{ + state: "disable" 0.0; + inherit: "default" 0.0; + color: 0 0 0 150; + visible: 1; + } + } //APPS_ICON_CONTENT_TOUCH + + part { name: APPS_ICON_NAME; + type: TEXTBLOCK; + mouse_events: 1; + repeat_events: 1; + description { + state: "default" 0.0; + rel1{relative: -30/84 97/84; to: APPS_ICON_CONTENT;} + rel2{relative: 114/84 148/84; to: APPS_ICON_CONTENT;} + color: 255 255 255 255; + text { + style: "icon_label"; + align: 0.5 0.0; + } + } + description { + state: "disable" 0.0; + inherit: "default" 0.0; + color: 0 0 0 50; + } + description { + state: "hide" 0.0; + inherit: "default" 0.0; + visible: 0; + } + }//APPS_ICON_NAME + part + { + name: "icon_badge"; + type: IMAGE; + scale: 0; + description + { + state: "default" 0.0; + rel1{relative: 62/196 0/183; to: SIZE_SETTER;} + rel2{relative: 94/196 32/183; to: SIZE_SETTER;} + visible: 0; + min : 32 32; + max : 32 32; + image + { + normal: "icon_badge_container1.png"; + } + } + description + { + state: "show" 0.0; + inherit: "default" 0.0; + visible: 1; + } + description + { + state: "show2" 0.0; + rel1{relative: 49/196 0/183; to: SIZE_SETTER;} + rel2{relative: 94/196 32/183; to: SIZE_SETTER;} + min : 45 32; + max : 45 32; + fixed : 1 1; + image + { + normal: "icon_badge_container2.png"; + } + visible: 1; + } + description + { + state: "show3" 0.0; + rel1{relative: 37/196 0/183; to: SIZE_SETTER;} + rel2{relative: 95/196 32/183; to: SIZE_SETTER;} + min : 58 32; + max : 58 32; + fixed : 1 1; + image + { + normal: "icon_badge_container3.png"; + } + visible: 1; + } + description + { + state: "show4" 0.0; + rel1{relative: 24/196 0/183; to: SIZE_SETTER;} + rel2{relative: 94/196 32/183; to: SIZE_SETTER;} + min : 70 32; + max : 70 32; + fixed : 1 1; + image + { + normal: "icon_badge_container4.png"; + } + visible: 1; + } + } + part + { + name: APPS_ICON_BADGE_TEXT; + type: TEXT; + scale: 1; + description + { + state: "default" 0.0; + visible: 0; + fixed: 1 1; + color: 255 255 255 255; + rel1{relative: 62/196 0/183; to: SIZE_SETTER;} + rel2{relative: 94/196 30/183; to: SIZE_SETTER;} + align: 0.5 0.5; + text + { + font: "arial"; + size: 10; + text_class: "ATO002"; + min: 1 1; + max: 1 1; + } + } + description + { + state: "show" 0.0; + inherit: "default" 0.0; + visible: 1; + } + description + { + state: "show2" 0.0; + inherit: "default" 0.0; + rel1{relative: 49/196 0/183; to: SIZE_SETTER;} + rel2{relative: 94/196 30/183; to: SIZE_SETTER;} + visible: 1; + } + description + { + state: "show3" 0.0; + inherit: "default" 0.0; + rel1{relative: 37/196 0/183; to: SIZE_SETTER;} + rel2{relative: 95/196 30/183; to: SIZE_SETTER;} + visible: 1; + } + description + { + state: "show4" 0.0; + inherit: "default" 0.0; + rel1{relative: 24/196 0/183; to: SIZE_SETTER;} + rel2{relative: 94/196 30/183; to: SIZE_SETTER;} + visible: 1; + } + } + part { //APPS_ICON_UNINSTALL_BUTTON + name: APPS_ICON_UNINSTALL_BUTTON; + type: IMAGE; + scale: 0; + description { + state: "default" 0.0; + rel1{relative: 0 7/183; to: SIZE_SETTER;} + rel2{relative: 24/196 31/183; to: SIZE_SETTER;} + color: 255 255 255 0; + visible: 0; + aspect: 1.0 1.0; + min: 24 24; + max: 24 24; + aspect_preference: BOTH; + image { + normal: "btn_delete_nor.png"; + } + } + description { + state: "show" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + visible: 1; + } + description { + state: "press" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + image { + normal: "btn_delete_press.png"; + } + visible: 1; + } + }//APPS_ICON_UNINSTALL_BUTTON + + part { //"icon_checkbox_bg"; + name: "icon_checkbox_bg"; + type: IMAGE; + scale: 0; + description { + state: "default" 0.0; + rel1{relative: 0.6 -0.1; to: APPS_ICON_CONTENT;} + rel2{relative: 1.1 0.4; to: APPS_ICON_CONTENT;} + color: 61 184 204 120; + visible: 0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + image { + normal: "core_check_bg.png"; + } + } + description { + state: "blank" 0.0; + inherit: "default" 0.0; + visible: 1; + } + description { + state: "checked" 0.0; + inherit: "default" 0.0; + color: 61 184 204 120; + visible: 1; + } + }//"icon_checkbox_bg" + part { //"icon_checkbox_border"; + name: "icon_checkbox_border"; + type: IMAGE; + scale: 0; + description { + state: "default" 0.0; + rel1{relative: 0.0 0.0; to: "icon_checkbox_bg";} + rel2{relative: 1.0 1.0; to: "icon_checkbox_bg";} + color: 255 255 255 0; + visible: 0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + image { + normal: "core_check_bg_stroke.png"; + } + } + description { + state: "blank" 0.0; + inherit: "default" 0.0; + color: 61 184 204 255; + visible: 1; + } + description { + state: "checked" 0.0; + inherit: "default" 0.0; + color: 61 184 204 120; + visible: 1; + } + }//"icon_checkbox_border" + part { //"icon_checkbox" + name: "icon_checkbox"; + type: IMAGE; + scale: 0; + description { + state: "default" 0.0; + rel1{relative: 0.0 0.0; to: "icon_checkbox_bg";} + rel2{relative: 1.0 1.0; to: "icon_checkbox_bg";} + color: 255 255 255 120; + visible: 0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + image { + normal: "core_check_icon.png"; + } + } + description { + state: "blank" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { + state: "checked" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + visible: 1; + } + description { + state: "half-checked" 0.0; + inherit: "default" 0.0; + color: 255 255 255 127; + visible: 1; + } + } + part { + name: "icon_checkbox_touch"; + type:RECT; + scale: 0; + mouse_events: 1; + repeat_events: 0; + description { + state: "default" 0.0; + rel1{relative: 0.0 -0.1; to: APPS_ICON_CONTENT;} + rel2{relative: 1.2 1.0; to: APPS_ICON_CONTENT;} + color: 255 255 255 0; + visible: 0; + } + description { + state: "blank" 0.0; + inherit: "default" 0.0; + visible: 1; + } + description { + state: "checked" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + } + programs { + program { + name: "folder_icon_touch_program"; + signal: "mouse,down,1"; + source: FOLDER_ICON_CONTENT_TOUCH; + action: STATE_SET "icon_touched" 0.0; + target: FOLDER_ICON_CONTENT_TOUCH; + transition: LINEAR 0.1; + } + program { + name: "folder_icon_touch_release_program"; + signal: "mouse,up,1"; + source: FOLDER_ICON_CONTENT_TOUCH; + action: STATE_SET "default" 0.0; + target: FOLDER_ICON_CONTENT_TOUCH; + transition: LINEAR 0.1; + } + program { + name: "uninstall_button_show_ani"; + signal: SIGNAL_UNINSTALL_BUTTON_SHOW_ANI; + source: SIGNAL_SOURCE; + action: STATE_SET "show" 0.0; + target: APPS_ICON_UNINSTALL_BUTTON; + transition: DECELERATE ANIMATION_RESIZE_TIME; + } + program { + name: "uninstall_button_show"; + signal: SIGNAL_UNINSTALL_BUTTON_SHOW; + source: SIGNAL_SOURCE; + action: STATE_SET "show" 0.0; + target: APPS_ICON_UNINSTALL_BUTTON; + } + program { + name: "uninstall_button_hide_ani"; + signal: SIGNAL_UNINSTALL_BUTTON_HIDE_ANI; + source: SIGNAL_SOURCE; + action: STATE_SET "default" 0.0; + target: APPS_ICON_UNINSTALL_BUTTON; + transition: DECELERATE ANIMATION_RESIZE_TIME; + } + program { + name: "uninstall_button_hide"; + signal: SIGNAL_UNINSTALL_BUTTON_HIDE; + source: SIGNAL_SOURCE; + action: STATE_SET "default" 0.0; + target: APPS_ICON_UNINSTALL_BUTTON; + } + program { + name: "uninstall_button_clicked"; + signal: "mouse,clicked,1"; + source: APPS_ICON_UNINSTALL_BUTTON; + action: SIGNAL_EMIT SIGNAL_UNINSTALL_BUTTON_CLICKED SIGNAL_SOURCE; + } + program { + name: "uninstall_button_mouse_down"; + signal: "mouse,down,1"; + source: APPS_ICON_UNINSTALL_BUTTON; + action: STATE_SET "press" 0.0; + target: APPS_ICON_UNINSTALL_BUTTON; + transition: DECELERATE ANIMATION_RESIZE_TIME; + } + program { + name: "uninstall_button_mouse_up"; + signal: "mouse,up,1"; + source: APPS_ICON_UNINSTALL_BUTTON; + action: STATE_SET "show" 0.0; + target: APPS_ICON_UNINSTALL_BUTTON; + transition: DECELERATE ANIMATION_RESIZE_TIME; + } + program{ + name: "checkbox_show"; + signal:SIGNAL_CHOOSER_MODE_ON; + source:SIGNAL_SOURCE; + action:STATE_SET "blank" 0.0; + target:"icon_checkbox_bg"; + target:"icon_checkbox_border"; + target:"icon_checkbox_touch"; + transition: DECELERATE ANIMATION_RESIZE_TIME; + } + program{ + name: "checkbox_hide"; + signal:SIGNAL_CHOOSER_MODE_OFF; + source:SIGNAL_SOURCE; + action:STATE_SET "default" 0.0; + target:"icon_checkbox_bg"; + target:"icon_checkbox_border"; + target:"icon_checkbox"; + target:"icon_checkbox_touch"; + transition: DECELERATE ANIMATION_RESIZE_TIME; + } + program{ + name: "checkbox_show_folder"; + signal:SIGNAL_CHOOSER_MODE_ON_FOLDER; + source:SIGNAL_SOURCE; + action:STATE_SET "blank" 0.0; + target:"icon_checkbox_bg"; + target:"icon_checkbox_border"; + transition: DECELERATE ANIMATION_RESIZE_TIME; + } + //Set default value of check box. + program{ + name: "checkbox_check"; + signal:SIGNAL_CHECK_CHECK_BOX; + source:SIGNAL_SOURCE; + action:STATE_SET "checked" 0.0; + target:"icon_checkbox"; + } + program{ + name: "checkbox_half_check"; + signal:SIGNAL_CHECK_HALF_CHECK_BOX; + source:SIGNAL_SOURCE; + action:STATE_SET "half-checked" 0.0; + target:"icon_checkbox"; + } + //Set default value of check box. + program{ + name: "checkbox_uncheck"; + signal:SIGNAL_UNCHECK_CHECK_BOX; + source:SIGNAL_SOURCE; + action:STATE_SET "blank" 0.0; + target:"icon_checkbox"; + } + program { + name: "checkbox_clicked"; + signal:"mouse,clicked,1"; + source:"icon_checkbox_touch"; + script { + emit(SIGNAL_CHANGED_CHECK_BOX, SIGNAL_SOURCE); //signal for C listener + } + } + program { + name: "icon_badge_show"; + signal: SIGNAL_BADGE_SHOW; + source: SIGNAL_SOURCE; + action: STATE_SET "show" 0.0; + target: "icon_badge"; + target: APPS_ICON_BADGE_TEXT; + } + program { + name: "icon_badge_show_large2"; + signal: SIGNAL_BADGE_SHOW_LARGE2; + source: SIGNAL_SOURCE; + action: STATE_SET "show2" 0.0; + target: "icon_badge"; + target: APPS_ICON_BADGE_TEXT; + } + program { + name: "icon_badge_show_large3"; + signal: SIGNAL_BADGE_SHOW_LARGE3; + source: SIGNAL_SOURCE; + action: STATE_SET "show3" 0.0; + target: "icon_badge"; + target: APPS_ICON_BADGE_TEXT; + } + program { + name: "icon_badge_show_large4"; + signal: SIGNAL_BADGE_SHOW_LARGE4; + source: SIGNAL_SOURCE; + action: STATE_SET "show4" 0.0; + target: "icon_badge"; + target: APPS_ICON_BADGE_TEXT; + } + program { name: "icon_badge_hide"; signal: SIGNAL_BADGE_HIDE; source: SIGNAL_SOURCE; diff --git a/res/edje/apps_folder_popup.edc b/res/edje/apps_folder_popup.edc index 9028be7..31120ff 100644 --- a/res/edje/apps_folder_popup.edc +++ b/res/edje/apps_folder_popup.edc @@ -27,7 +27,7 @@ to: APPS_FOLDER_CONTAINER;\ }\ rel2 {\ - relative :(num_x+1)/APPS_FOLDER_COL (num_y+1)/APPS_FOLDER_ROW;\ + relative :((num_x+1)/APPS_FOLDER_COL) ((num_y+1)/APPS_FOLDER_ROW);\ to: APPS_FOLDER_CONTAINER;\ }\ align: 0.0 0.0;\ @@ -37,6 +37,7 @@ images { image: "folder_popup_bg.png" COMP; image: "btn_add_nor.png" COMP; image: "btn_add_press.png" COMP; + image: "btn_clear_nor.png" COMP; } collections { @@ -90,9 +91,36 @@ collections { align: 0 0; rel1 {relative: 0.043 23/486; to:APPS_FOLDER_BG;} rel2 {relative: 0.956 57/486; to:APPS_FOLDER_BG;} - color: 255 255 255 255; + color: 255 0 0 255; + } + } + part { name: APPS_FOLDER_CLEAR_TITLE_BUTTON; + type: IMAGE; + scale: 0; + description { + state: "default" 0.0; + rel1 {relative: 625/728 40/486; to:APPS_FOLDER_BG;} + rel2 {relative: 634/728 49/486; to:APPS_FOLDER_BG;} + image { + normal: "btn_clear_nor.png"; + } + aspect: 1 1; + min:9 9; + max:9 9; + color: 0 0 0 255; + } + description { + state: "hide" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { + state: "show" 0.0; + inherit: "default" 0.0; + visible: 1; } } + part { name: APPS_FOLDER_CONTAINER; type: SPACER; mouse_events: 1; @@ -205,6 +233,26 @@ collections { set_state(PART:APPS_FOLDER_PLUS_ICON, "custom", 0.0); } } + program { + name: "folder_popup_title_button_hide"; + signal: SIGNAL_FOLDER_TITLE_BUTTON_HIDE; + source: SIGNAL_SOURCE; + action: STATE_SET "hide" 0.0; + target: APPS_FOLDER_CLEAR_TITLE_BUTTON; + } + program { + name: "folder_popup_title_button_show"; + signal: SIGNAL_FOLDER_TITLE_BUTTON_SHOW; + source: SIGNAL_SOURCE; + action: STATE_SET "show" 0.0; + target: APPS_FOLDER_CLEAR_TITLE_BUTTON; + } + program { + name: "folder_title_clear_button_clicked"; + signal: "mouse,clicked,1"; + source: APPS_FOLDER_CLEAR_TITLE_BUTTON; + action: SIGNAL_EMIT SIGNAL_FOLDER_TITLE_CLEAR_BUTTON_CLICKED APPS_FOLDER_CLEAR_TITLE_BUTTON; + } } } } diff --git a/res/edje/apps_view.edc b/res/edje/apps_view.edc index 0359d20..9d1ede3 100644 --- a/res/edje/apps_view.edc +++ b/res/edje/apps_view.edc @@ -47,9 +47,9 @@ collections { description { state: "edit_done" 0.0; inherit: "default" 0.0; - rel1 {relative :0.0 0.0; to: SIZE_SETTER;} - rel2 {relative :1.0 1.0; to: SIZE_SETTER;} - color: 0 0 0 0; + rel1 {relative :88/1280 96/720; to: SIZE_SETTER;} + rel2 {relative :1192/1280 625/720; to: SIZE_SETTER;} + color: 0 0 0 APPS_VIEW_BG_OPACITY; visible: 1; } } @@ -66,8 +66,8 @@ collections { description { state: "edit" 0.0; inherit: "default" 0.0; - rel1 {relative :0.0 0.0; to: SIZE_SETTER;} - rel2 {relative :1.0 1.0; to: SIZE_SETTER;} + rel1 {relative :25/1104 13/529; to: SIZE_SETTER;} + rel2 {relative :1077/1104 516/529; to: SIZE_SETTER;} } } } diff --git a/res/edje/apps_view_bg.edc b/res/edje/apps_view_bg.edc index 1cd368d..93ac355 100644 --- a/res/edje/apps_view_bg.edc +++ b/res/edje/apps_view_bg.edc @@ -49,7 +49,7 @@ collections { description { state: "default" 0.0; align: 0.0 0.0; - color: 0 0 0 0; + color: 0 0 0 APPS_VIEW_BG_OPACITY; rel1 {relative: 0.0 0.0; to:SIZE_SETTER;} rel2 {relative: 1.0 1.0; to:SIZE_SETTER;} visible: 0; @@ -58,8 +58,9 @@ collections { state: "edit" 0.0; inherit: "default" 0.0; visible: 1; - rel1{relative: 0.0 0.0; to: SIZE_SETTER;} - rel2{relative: 1.0 1.0; to: SIZE_SETTER;} + color: 0 0 0 APPS_VIEW_BG_OPACITY; + rel1{relative: 88/1280 96/720; to: SIZE_SETTER;} + rel2{relative: 1192/1280 625/720; to: SIZE_SETTER;} } description { state: "hide" 0.0; @@ -69,7 +70,7 @@ collections { description { state: "show" 0.0; inherit: "default" 0.0; - visible: 1; + visible: 0; } } } diff --git a/res/edje/page_indicator_unit.edc b/res/edje/page_indicator_unit.edc index 677a731..fbdaf1d 100755 --- a/res/edje/page_indicator_unit.edc +++ b/res/edje/page_indicator_unit.edc @@ -62,6 +62,8 @@ collections { fixed: 1 1; rel1{relative: 0.0 0.0; to:SIZE_SETTER;} rel2{relative: 1.0 1.0; to:SIZE_SETTER;} + min: 16 16; + max: 16 16; image { normal: "page_indicator_unit.png"; } @@ -79,6 +81,8 @@ collections { state: "current" 0.0; inherit: "default" 0.0; color: 255 255 255 255; + min: 16 16; + max: 16 16; image { normal: "page_indicator_current.png"; } diff --git a/res/images/app_press_118.png b/res/images/app_press_118.png new file mode 100644 index 0000000..dab127d Binary files /dev/null and b/res/images/app_press_118.png differ diff --git a/res/images/btn_clear_nor.png b/res/images/btn_clear_nor.png new file mode 100644 index 0000000..1ba2b55 Binary files /dev/null and b/res/images/btn_clear_nor.png differ diff --git a/res/images/default_bg.png b/res/images/default_bg.png old mode 100644 new mode 100755 index 3d05599..b5add86 Binary files a/res/images/default_bg.png and b/res/images/default_bg.png differ diff --git a/res/images/icon_badge_container1.png b/res/images/icon_badge_container1.png new file mode 100644 index 0000000..7206a20 Binary files /dev/null and b/res/images/icon_badge_container1.png differ diff --git a/res/images/icon_badge_container2.png b/res/images/icon_badge_container2.png index 9e33bea..f8cd21f 100644 Binary files a/res/images/icon_badge_container2.png and b/res/images/icon_badge_container2.png differ diff --git a/res/images/icon_badge_container3.png b/res/images/icon_badge_container3.png new file mode 100644 index 0000000..ccba396 Binary files /dev/null and b/res/images/icon_badge_container3.png differ diff --git a/res/images/icon_badge_container4.png b/res/images/icon_badge_container4.png new file mode 100644 index 0000000..5ac98de Binary files /dev/null and b/res/images/icon_badge_container4.png differ diff --git a/res/images/page_indicator_current.png b/res/images/page_indicator_current.png old mode 100644 new mode 100755 index 3ad7d3d..9b1bd23 Binary files a/res/images/page_indicator_current.png and b/res/images/page_indicator_current.png differ diff --git a/src/apps_view.c b/src/apps_view.c index a6179cc..db109de 100644 --- a/src/apps_view.c +++ b/src/apps_view.c @@ -168,6 +168,7 @@ static void __apps_view_scroll_to_page(int page_idx, bool animation); static int __apps_view_get_index(int page_index, int x, int y); static void __apps_view__set_icon_label_style(app_data_t *item, view_state_t state); +static void __apps_view_folder_clear_title_button_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source); static void __apps_view_folder_entry_done_cb(void *data, Evas_Object *obj, void *event_info); static void __apps_view_folder_entry_focused_cb(void *data, Evas_Object *obj, void *event_info); static void __apps_view_folder_entry_unfocused_cb(void *data, Evas_Object *obj, void *event_info); @@ -353,7 +354,11 @@ Evas_Object* apps_view_create_icon(app_data_t *item) Evas_Object *icon_image = NULL; icon_layout = elm_layout_add(apps_view_s.box); - elm_layout_file_set(icon_layout, util_get_res_file_path(EDJE_DIR"/app_icon.edj"), GROUP_APP_ICON_LY); + if (item->is_folder) + elm_layout_file_set(icon_layout, util_get_res_file_path(EDJE_DIR"/app_icon.edj"), GROUP_APP_ICON_LY_FOLDER); + else + elm_layout_file_set(icon_layout, util_get_res_file_path(EDJE_DIR"/app_icon.edj"), GROUP_APP_ICON_LY); + evas_object_size_hint_weight_set(icon_layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); rect = evas_object_rectangle_add(evas_object_evas_get(icon_layout)); @@ -1075,6 +1080,16 @@ void apps_view_set_state(view_state_t state) elm_object_signal_emit(apps_view_s.bg, SIGNAL_EDIT_MODE_ON_ANI, SIGNAL_SOURCE); Eina_List *find_list = NULL; + Evas_Object *page_ly; + int page_index = 0; + + EINA_LIST_FOREACH(apps_view_s.page_list, find_list, page_ly) { + if (page_index == apps_view_s.current_page) + elm_object_signal_emit(page_ly, SIGNAL_EDIT_MODE_ON_ANI, SIGNAL_SOURCE); + else + elm_object_signal_emit(page_ly, SIGNAL_EDIT_MODE_ON, SIGNAL_SOURCE); + page_index++; + } Eina_List *data_list = apps_data_get_list(); app_data_t *item = NULL; @@ -1285,15 +1300,20 @@ static void __apps_view_open_folder_popup(app_data_t *item) elm_entry_input_panel_return_key_type_set(entry, ELM_INPUT_PANEL_RETURN_KEY_TYPE_DONE); - evas_object_smart_callback_add(entry, "activated", __apps_view_folder_entry_done_cb, NULL); - evas_object_smart_callback_add(entry, "focused", __apps_view_folder_entry_focused_cb, NULL); - evas_object_smart_callback_add(entry, "unfocused", __apps_view_folder_entry_unfocused_cb, NULL); - evas_object_smart_callback_add(entry, "maxlength,reached", __apps_view_folder_entry_maxlength_reached_cb, NULL); + evas_object_smart_callback_add(entry, "focused", __apps_view_folder_entry_focused_cb, apps_view_s.folder_popup_ly); + evas_object_smart_callback_add(entry, "unfocused", __apps_view_folder_entry_unfocused_cb, apps_view_s.folder_popup_ly); + evas_object_smart_callback_add(entry, "changed", __apps_view_folder_entry_done_cb, apps_view_s.folder_popup_ly); + evas_object_smart_callback_add(entry, "preedit,changed", __apps_view_folder_entry_done_cb, apps_view_s.folder_popup_ly); + evas_object_smart_callback_add(entry, "maxlength,reached", __apps_view_folder_entry_maxlength_reached_cb, apps_view_s.folder_popup_ly); + + elm_object_signal_emit(apps_view_s.folder_popup_ly, SIGNAL_FOLDER_TITLE_BUTTON_HIDE, SIGNAL_SOURCE); elm_entry_text_style_user_push(entry, "DEFAULT='font=Tizen:style=Regular align=center color=#000000 font_size=28 wrap=none'"); elm_entry_entry_set(entry, apps_view_s.opened_folder->label_str); elm_object_part_content_set(apps_view_s.folder_popup_ly, APPS_FOLDER_TITLE, entry); + elm_layout_signal_callback_add(apps_view_s.folder_popup_ly, SIGNAL_FOLDER_TITLE_CLEAR_BUTTON_CLICKED, APPS_FOLDER_CLEAR_TITLE_BUTTON, __apps_view_folder_clear_title_button_clicked_cb, entry); + __apps_view_folder_fill_apps(); evas_object_color_set(apps_view_s.folder_popup_ly, 255, 255, 255, 0); @@ -1540,10 +1560,14 @@ static void __apps_view_badge_update_icon(app_data_t *item) elm_object_signal_emit(item->app_layout, SIGNAL_BADGE_HIDE, SIGNAL_SOURCE); } else { elm_layout_text_set(item->app_layout, APPS_ICON_BADGE_TEXT, number_str); - if(item->badge_count<=99){ - elm_object_signal_emit(item->app_layout, SIGNAL_BADGE_SHOW, SIGNAL_SOURCE); - }else{ - elm_object_signal_emit(item->app_layout, SIGNAL_BADGE_SHOW_LARGE, SIGNAL_SOURCE); + if (item->badge_count >= 1 && item->badge_count <= 9) { + elm_object_signal_emit(item->app_layout, SIGNAL_BADGE_SHOW, SIGNAL_SOURCE); + } else if (item->badge_count >= 10 && item->badge_count <= 99) { + elm_object_signal_emit(item->app_layout, SIGNAL_BADGE_SHOW_LARGE2, SIGNAL_SOURCE); + } else if (item->badge_count >= 100 && item->badge_count <= 999) { + elm_object_signal_emit(item->app_layout, SIGNAL_BADGE_SHOW_LARGE3, SIGNAL_SOURCE); + } else { + elm_object_signal_emit(item->app_layout, SIGNAL_BADGE_SHOW_LARGE4, SIGNAL_SOURCE); } } } @@ -1581,10 +1605,14 @@ static void __apps_view_badge_update_folder(int parent_db_id) elm_object_signal_emit(folder_item->app_layout, SIGNAL_BADGE_HIDE, SIGNAL_SOURCE); } else { elm_layout_text_set(folder_item->app_layout, APPS_ICON_BADGE_TEXT, number_str); - if(badge_count<=99){ - elm_object_signal_emit(folder_item->app_layout, SIGNAL_BADGE_SHOW, SIGNAL_SOURCE); - }else{ - elm_object_signal_emit(folder_item->app_layout, SIGNAL_BADGE_SHOW_LARGE, SIGNAL_SOURCE); + if (badge_count >= 1 && badge_count <= 9) { + elm_object_signal_emit(folder_item->app_layout, SIGNAL_BADGE_SHOW, SIGNAL_SOURCE); + } else if (badge_count >= 10 && badge_count <= 99) { + elm_object_signal_emit(folder_item->app_layout, SIGNAL_BADGE_SHOW_LARGE2, SIGNAL_SOURCE); + } else if (badge_count >= 100 && badge_count <= 999) { + elm_object_signal_emit(folder_item->app_layout, SIGNAL_BADGE_SHOW_LARGE3, SIGNAL_SOURCE); + } else { + elm_object_signal_emit(folder_item->app_layout, SIGNAL_BADGE_SHOW_LARGE4, SIGNAL_SOURCE); } } } @@ -2099,22 +2127,40 @@ static void __apps_view__set_icon_label_style(app_data_t *item, view_state_t sta elm_object_part_text_set(item->app_layout, APPS_ICON_NAME, style_string); } + +static void __apps_view_folder_clear_title_button_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source) +{ + + Evas_Object *entry = (Evas_Object *)data; + + elm_entry_entry_set(entry, ""); +} + static void __apps_view_folder_entry_done_cb(void *data, Evas_Object *obj, void *event_info) { - elm_entry_input_panel_hide(obj); - elm_object_focus_set(obj, EINA_FALSE); + Evas_Object *editfield = (Evas_Object *)data; + + if (!elm_entry_is_empty(obj) && elm_object_focus_get(obj)) { + elm_object_signal_emit(editfield, SIGNAL_FOLDER_TITLE_BUTTON_SHOW, SIGNAL_SOURCE); + } else { + elm_object_signal_emit(editfield, SIGNAL_FOLDER_TITLE_BUTTON_HIDE, SIGNAL_SOURCE); + } } static void __apps_view_folder_entry_focused_cb(void *data, Evas_Object *obj, void *event_info) { - elm_object_part_text_set(obj, "elm.guide", ""); + Evas_Object *editfield = (Evas_Object *)data; + elm_object_signal_emit(editfield, "elm,state,focused", ""); + + if (!elm_entry_is_empty(obj)) + elm_object_signal_emit(editfield, SIGNAL_FOLDER_TITLE_BUTTON_SHOW, SIGNAL_SOURCE); } static void __apps_view_folder_entry_unfocused_cb(void *data, Evas_Object *obj, void *event_info) { - char style_string[STR_MAX] = { 0, }; - snprintf(style_string, sizeof(style_string), "%s", _("IDS_COM_HEADER_UNNAMED_FOLDER")); - elm_object_part_text_set(obj, "elm.guide", style_string); + Evas_Object *editfield = (Evas_Object *)data; + elm_object_signal_emit(editfield, "elm,state,unfocused", ""); + elm_object_signal_emit(editfield, SIGNAL_FOLDER_TITLE_BUTTON_HIDE, SIGNAL_SOURCE); } static void __apps_view_folder_entry_maxlength_reached_cb(void *data, Evas_Object *obj, void *event_info) diff --git a/src/homescreen-manager.c b/src/homescreen-manager.c index 71ce0ff..3c1a7f2 100755 --- a/src/homescreen-manager.c +++ b/src/homescreen-manager.c @@ -428,7 +428,7 @@ static void __set_wallpaper(void) if (!buf || !ecore_file_can_read(buf) || ret != SYSTEM_SETTINGS_ERROR_NONE) { elm_image_file_set(main_info.bg, util_get_res_file_path(IMAGE_DIR"/default_bg.png"), "bg"); } else { - elm_image_file_set(main_info.bg, buf, "bg"); + elm_image_file_set(main_info.bg, util_get_res_file_path(IMAGE_DIR"/default_bg.png"), "bg"); } evas_object_show(main_info.bg);