[Recents] Fix for TSAM-11632 app icon is move to up only even though its dragged... 63/106663/2 tizen_3.0.m2 submit/tizen_3.0/20161222.134826 submit/tizen_3.0/20161228.074545 submit/tizen_3.0/20161229.001234
authorIrfan Abdul <irfan.abdul@samsung.com>
Thu, 22 Dec 2016 10:27:58 +0000 (15:57 +0530)
committerIrfan Abdul <irfan.abdul@samsung.com>
Thu, 22 Dec 2016 13:45:29 +0000 (19:15 +0530)
Change-Id: I83e9abf69bc73159928b8a44329da620a9b7d941
Signed-off-by: Irfan Abdul <irfan.abdul@samsung.com>
src/item.c
src/scroller.c

index 2b98b74..03a0c96 100644 (file)
@@ -62,8 +62,7 @@ static double _get_move(Evas_Coord x1, Evas_Coord y1, Evas_Coord x2, Evas_Coord
 void _mouse_up_cb_t(void *data, Evas * evas, Evas_Object * obj, void *event_info)
 {
        int i = 0;
-       _D("Vijay Mouse up reverse animation");
-
+       _D("");
        main_h main_info = data;
        ret_if(main_info == NULL);
 
@@ -153,10 +152,10 @@ void _mouse_move_cb_t(void *data, Evas * evas, Evas_Object * obj, void *event_in
        int color = 0;
        main_h main_info = data;
        ret_if(main_info == NULL);
-       if (main_info->reverse_animator) {
-               _D("reverse animation");
-               return;
-       }
+//     if (main_info->reverse_animator) {
+//             _D("reverse animation");
+//             return;
+//     }
        if (main_info->is_scrolled) {
                _D("horizontal scrolling~~~~ so skip move!!!!!");
                return;
@@ -211,6 +210,7 @@ void _mouse_move_cb_t(void *data, Evas * evas, Evas_Object * obj, void *event_in
                }
 
                main_info->icon_move = true;
+               evas_object_move(obj, (abs(distance)/2), distance + (abs(distance)/2));
                evas_object_resize(obj, TASKMGR_SIZE - abs(distance), TASKMGR_SIZE - abs(distance));
                /* color control */
                color = (int)(FACTOR_A * abs(distance) + FACTOR_B);
index 21bb9b4..1a35c29 100644 (file)
@@ -33,6 +33,8 @@
 #define REMOVING_VALUE 12
 #define VELOCITY_VALUE 0.45
 
+static int freeze = EINA_FALSE;
+
 static Eina_Bool _screen_reader_close_all_apps(void *data, Evas_Object *obj, Elm_Access_Action_Info *action_info);
 
 static inline int __get_msec(struct timeval *s, struct timeval *e)
@@ -68,6 +70,7 @@ void set_freeze_scroller()
        ret_if(main_info->box == NULL);
 
        elm_object_scroll_freeze_push(main_info->box);
+       freeze = EINA_TRUE;
 }
 
 static Eina_Bool _quit_cb(void *data)
@@ -171,6 +174,7 @@ void unset_freeze_scroller(void *data)
 
        while (elm_object_scroll_freeze_get(main_info->box))
                elm_object_scroll_freeze_pop(main_info->box);
+       freeze = EINA_FALSE;
 }
 
 void __set_layout_color(Evas_Object *obj, int color)
@@ -393,10 +397,17 @@ void _index_sync(void *data)
        Eina_List *list = elm_box_children_get(main_info->box);
        Evas_Object *curr_widget = NULL;
        curr_widget = eina_list_nth(list, cur_page);
-
-       Evas_Object *label = elm_object_part_content_get(curr_widget, "txt.app_name");
-       if (label)
-               elm_label_slide_go(label);
+       if(curr_widget) {
+               if(cur_page > 0) {
+                       Evas_Object* prev_widget = eina_list_nth(list, cur_page -1);
+                       elm_object_signal_emit(prev_widget, "hide,delete", "bg");
+               }
+               curr_widget = eina_list_nth(list, cur_page);
+               elm_object_signal_emit(curr_widget, "show,delete", "bg");
+               Evas_Object *label = elm_object_part_content_get(curr_widget, "txt.app_name");
+               if (label)
+                       elm_label_slide_go(label);
+       }
        eina_list_free(list);
 
        /* Screen Reader */
@@ -552,32 +563,13 @@ static void _box_layout_cb(Evas_Object *o, Evas_Object_Box_Data *priv, void *dat
 
        Eina_List *l = NULL;
        int order_children = 0;
-
-       EINA_LIST_FOREACH(priv->children, l, opt) {
-               evas_object_move(opt->obj, x + ((TASK_WIDGET_SIZE_W + TASK_PADDING_SIZE_W) * order_children++), y);
-       }
-}
-
-static void _hide_delete_icon(void *data, Evas_Object *scroller, void *event_info)
-{
-       int page_no = -1;
-       main_h main_info = data;
-       ret_if(!main_info);
-       elm_scroller_current_page_get(main_info->scroller, &page_no, NULL);
-       Eina_List *list = elm_box_children_get(main_info->box);
-       Evas_Object *curr_widget = NULL;
-       Evas_Object *prev_widget = NULL;
-       if(page_no > 0)
-       {
-               prev_widget = eina_list_nth(list, page_no -1);
-               elm_object_signal_emit(prev_widget, "hide,delete", "bg");
+       if(!freeze) {
+               EINA_LIST_FOREACH(priv->children, l, opt) {
+                       evas_object_move(opt->obj, x + ((TASK_WIDGET_SIZE_W + TASK_PADDING_SIZE_W) * order_children++), y);
+               }
        }
-       curr_widget = eina_list_nth(list, page_no);
-       elm_object_signal_emit(curr_widget, "show,delete", "bg");
-       eina_list_free(list);
 }
 
-
 Evas_Object *scroller_create(void *data)
 {
        main_h main_info = data;
@@ -596,11 +588,10 @@ Evas_Object *scroller_create(void *data)
        elm_object_scroll_lock_y_set(scroller, EINA_TRUE);
        elm_scroller_page_relative_set(scroller, 0.0, 0.0);
        elm_scroller_page_scroll_limit_set(scroller, 1, 0);
-       //evas_object_smart_callback_add(scroller, "scroll", _scroller_scroll_cb, main_info);
+
        evas_object_smart_callback_add(scroller, "scroll,drag,start", _br_scroller_drag_start_cb, main_info);
        evas_object_smart_callback_add(scroller, "scroll", _br_scroller_scrolled_cb, main_info);
        evas_object_smart_callback_add(scroller, "scroll,anim,start", _br_scroller_ani_start_cb, NULL);
-       evas_object_smart_callback_add(scroller, "scroll,page,changed", _hide_delete_icon, main_info);
 
        elm_object_style_set(scroller, "effect");
        elm_object_part_content_set(main_info->layout, "list", scroller);