Add action menu show/hide animation 96/48196/1
authorjinwoo.shin <jw0227.shin@samsung.com>
Wed, 16 Sep 2015 04:54:21 +0000 (13:54 +0900)
committerjinwoo.shin <jw0227.shin@samsung.com>
Wed, 16 Sep 2015 04:54:21 +0000 (13:54 +0900)
Change-Id: I15c3de46050f0635811b89ccc51d0934459f6a1a
Signed-off-by: jinwoo.shin <jw0227.shin@samsung.com>
data/view/action_menu.edc
data/view/channelinfo.edc
include/define.h
src/view_action_menu.c

index 1905e50..5d02e59 100644 (file)
@@ -35,9 +35,14 @@ group {
                                color, 255 255 255 255;
                                rel1.relative, 1.0 0.0;
                                min, 500 0;
-                               align, 1.0 0.0;
+                               align, 0.0 0.0;
                                fixed, 1 1;
                        }
+                       description {
+                               state, "show" 0.0;
+                               inherit, "default" 0.0;
+                               align, 1.0 0.0;
+                       }
                }
 
                part {
@@ -367,6 +372,24 @@ group {
 
        programs {
                program {
+                       signal, SIGNAL_SHOW;
+                       action, STATE_SET "show" 0.0;
+                       target, "menu_area";
+                       transition, CUBIC_BEZIER 0.667 TRANSITION_EASE_IN_OUT;
+        }
+               program {
+                       signal, SIGNAL_HIDE;
+                       source, SOURCE_ELM;
+                       action, STATE_SET "default" 0.0;
+                       target, "menu_area";
+                       transition, CUBIC_BEZIER 0.334 TRANSITION_EASE_OUT;
+                       after, "hide_finished";
+               }
+               program {
+                       name, "hide_finished";
+                       action, SIGNAL_EMIT SIGNAL_HIDE_FINISHED SOURCE_ELM;
+               }
+               program {
                        name, "no_favorite";
                        signal, SIGNAL_NO_FAVORITE;
                        source, SOURCE_ELM;
index 8b7ece3..f9ce6a8 100644 (file)
@@ -64,14 +64,14 @@ group {
                        signal, SIGNAL_SHOW;
                        action, STATE_SET "show" 0.0;
                        target, PART_CONTENT;
-                       transition, CUBIC_BEZIER 0.5 0.45 0.03 0.41 1.0;
+                       transition, CUBIC_BEZIER 0.5 TRANSITION_EASE_IN_OUT;
                }
                program {
                        signal, SIGNAL_HIDE;
                        source, SOURCE_ELM;
                        action, STATE_SET "default" 0.0;
                        target, PART_CONTENT;
-                       transition, CUBIC_BEZIER 0.167 0.25 0.46 0.45 1.0;
+                       transition, CUBIC_BEZIER 0.167 TRANSITION_EASE_OUT;
                        after, "hide_finished";
                }
                program {
@@ -359,7 +359,7 @@ group {
                        name, "show_current";
                        action, STATE_SET "show" 0.0;
                        target, "clip_current";
-                       transition, CUBIC_BEZIER 0.334 0.45 0.03 0.41 1.0;
+                       transition, CUBIC_BEZIER 0.334 TRANSITION_EASE_IN_OUT;
                }
                program {
                        name, "show_other";
@@ -368,14 +368,14 @@ group {
                        target, PART_CHANNELINFO_LIST_NEXT;
                        target, "clip_prev";
                        target, PART_CHANNELINFO_LIST_PREV;
-                       transition, CUBIC_BEZIER 0.401 0.45 0.03 0.41 1.0;
+                       transition, CUBIC_BEZIER 0.401 TRANSITION_EASE_IN_OUT;
                }
                program {
                        signal, SIGNAL_HIDE;
                        source, SOURCE_ELM;
                        action, STATE_SET "default" 0.0;
                        target, "bg";
-                       transition, CUBIC_BEZIER 0.167 0.25 0.46 0.45 1.0;
+                       transition, CUBIC_BEZIER 0.167 TRANSITION_EASE_OUT;
                        sequence {
                                action, STATE_SET "default" 0.0;
                                target, "clip_next";
index ac98f3d..b919392 100644 (file)
@@ -66,6 +66,9 @@
 #define COLOR_NOFAVORITE_BG 229 229 229 255
 #define COLOR_NOFAVORITE_TEXT 0 0 0 178
 
+#define TRANSITION_EASE_IN_OUT 0.45 0.03 0.41 1.0
+#define TRANSITION_EASE_OUT 0.25 0.46 0.45 1.0
+
 #define IMAGE_FAV_NOR IMAGEDIR"/btn_menu_favorite_nor.png"
 #define IMAGE_FAV_FOC IMAGEDIR"/btn_menu_favorite_foc.png"
 #define IMAGE_FAV_SEL IMAGEDIR"/btn_menu_favorite_sel.png"
index 6c21921..119708b 100644 (file)
@@ -605,6 +605,19 @@ static void _draw_view_content(struct _priv *priv)
                _ERR("Draw bottom area failed.");
 }
 
+static void _hide_finished_cb(void *data, Evas_Object *obj,
+               const char *emission, const char *source)
+{
+       struct _priv *priv;
+
+       if (!data)
+               return;
+
+       priv = data;
+
+       evas_object_hide(priv->base);
+}
+
 static Evas_Object *_create(Evas_Object *win, void *data)
 {
        struct _priv *priv;
@@ -645,6 +658,8 @@ static Evas_Object *_create(Evas_Object *win, void *data)
        _draw_view_content(priv);
 
        inputmgr_add_callback(priv->base, 0, &key_handler, priv);
+       elm_layout_signal_callback_add(priv->base, SIGNAL_HIDE_FINISHED,
+                       SOURCE_ELM, _hide_finished_cb, priv);
 
        return base;
 }
@@ -678,7 +693,7 @@ static void _hide(void *data)
        }
        priv = data;
 
-       evas_object_hide(priv->base);
+       elm_layout_signal_emit(priv->base, SIGNAL_HIDE, SOURCE_ELM);
 }
 
 static void _destroy(void *data)