Elementary migration revision 69448
authorJeonghyun Yun <jh0506.yun@samsung.com>
Fri, 16 Mar 2012 08:03:24 +0000 (17:03 +0900)
committerJeonghyun Yun <jh0506.yun@samsung.com>
Fri, 16 Mar 2012 08:03:24 +0000 (17:03 +0900)
Merge remote-tracking branch 'remotes/origin/upstream'

Conflicts:
doc/examples.dox
src/bin/test_genlist.c
src/lib/Makefile.am
src/lib/elc_multibuttonentry.c
src/lib/elm_colorselector.c
src/lib/elm_conform.c
src/lib/elm_deprecated.h
src/lib/elm_entry.c
src/lib/elm_flipselector.c
src/lib/elm_gen.h
src/lib/elm_genlist.c
src/lib/elm_main.c
src/lib/elm_map.c

20 files changed:
1  2 
src/bin/test_genlist.c
src/bin/test_tooltip.c
src/lib/Makefile.am
src/lib/elc_ctxpopup.c
src/lib/elc_multibuttonentry.c
src/lib/elm_colorselector.c
src/lib/elm_config.c
src/lib/elm_diskselector.c
src/lib/elm_entry.c
src/lib/elm_entry.h
src/lib/elm_genlist.c
src/lib/elm_genlist.h
src/lib/elm_index.c
src/lib/elm_index.h
src/lib/elm_map.c
src/lib/elm_removed.h
src/lib/elm_slider.c
src/lib/elm_toolbar.c
src/lib/elm_win.c
src/lib/els_scroller.c

Simple merge
Simple merge
Simple merge
Simple merge
@@@ -677,10 -701,14 +701,14 @@@ _button_clicked(void *data, Evas_Objec
     Elm_Multibuttonentry_Item *item = NULL;
     if (!wd || wd->view_state == MULTIBUTTONENTRY_VIEW_SHRINK) return;
  
 -   _change_current_button(data, obj);
 +   _select_button(data, obj);
  
-    if ((wd->current) && ((item = eina_list_data_get(wd->current)) != NULL))
-      evas_object_smart_callback_call(data, "item,clicked", item);
+    if (wd->current)
+      if ((item = eina_list_data_get(wd->current)) != NULL)
+        {
+           evas_object_smart_callback_call(data, SIG_ITEM_CLICKED, item);
+           _select_button(data, item->button);
+        }
  }
  
  static void
@@@ -1078,12 -1070,11 +1070,12 @@@ elm_colorselector_add(Evas_Object *pare
     _colors_load_apply(obj);
  
     /* load background edj */
-    wd->sel = edje_object_add(e);
-    _elm_theme_object_set(obj, wd->sel, "colorselector", "bg", "default");
-    edje_object_part_swallow(wd->base, "selector", wd->sel);
-    elm_widget_sub_object_add(obj, wd->sel);
+     wd->sel = edje_object_add(e);
+     _elm_theme_object_set(obj, wd->sel, "colorselector", "bg", "default");
+     edje_object_part_swallow(wd->base, "selector", wd->sel);
+     wd->mode = ELM_COLORSELECTOR_BOTH;
  
 +   wd->mode = ELM_COLORSELECTOR_BOTH;
     wd->er = 255;
     wd->eg = 0;
     wd->eb = 0;
Simple merge
Simple merge
@@@ -1869,186 -1588,6 +1869,185 @@@ _signal_entry_changed(void *data, Evas_
  }
  
  static void
-    Evas_Coord_Rectangle ret_rect;
 +_signal_handler_move_start(void *data, Evas_Object *obj __UNUSED__, const char *emission __UNUSED__, const char *source __UNUSED__)
 +{
 +   Widget_Data *wd = elm_widget_data_get(data);
 +   if (!wd) return;
 +
 +   elm_object_scroll_freeze_push(data);
 +
 +   if ((wd->api) && (wd->api->obj_hidemenu))
 +     wd->api->obj_hidemenu(data);
 +
 +   if (wd->magnifier_enabled)
 +     {
 +        _magnifier_create(data);
 +        _magnifier_move(data);
 +        _magnifier_show(data);
 +     }
 +}
 +
 +static void
 +_signal_handler_move_end(void *data, Evas_Object *obj __UNUSED__, const char *emission __UNUSED__, const char *source __UNUSED__)
 +{
 +   Widget_Data *wd = elm_widget_data_get(data);
 +   if (!wd) return;
 +
 +   elm_object_scroll_freeze_pop(data);
 +
 +   if (wd->have_selection)
 +     {
 +        _magnifier_hide(data);
 +        _menu_press(data);
 +     }
 +}
 +
 +static void
 +_signal_handler_moving(void *data, Evas_Object *obj __UNUSED__, const char *emission __UNUSED__, const char *source __UNUSED__)
 +{
 +   Widget_Data *wd = elm_widget_data_get(data);
 +   if (!wd) return;
 +
 +   if (wd->magnifier_enabled)
 +     {
 +        _magnifier_move(data);
 +        _magnifier_show(data);
 +     }
 +}
 +
 +static Evas_Coord_Rectangle
 +_intersection_region_get(Evas_Coord_Rectangle rect1, Evas_Coord_Rectangle rect2)
 +{
 +   Evas_Coord_Rectangle ret_rect;
 +   Evas_Coord_Point l1, l2, r1, r2, p1, p2;
 +
 +   l1.x = rect1.x;
 +   l1.y = rect1.y;
 +   r1.x = rect1.x + rect1.w;
 +   r1.y = rect1.y + rect1.h;
 +
 +   l2.x = rect2.x;
 +   l2.y = rect2.y;
 +   r2.x = rect2.x + rect2.w;
 +   r2.y = rect2.y + rect2.h;
 +
 +   p1.x = (l1.x > l2.x) ? l1.x : l2.x;
 +   p1.y = (l1.y > l2.y) ? l1.y : l2.y;
 +   p2.x = (r1.x < r2.x) ? r1.x : r2.x;
 +   p2.y = (r1.y < r2.y) ? r1.y : r2.y;
 +
 +   ret_rect.x = p1.x;
 +   ret_rect.y = p1.y;
 +   ret_rect.w = (p2.x > p1.x) ? p2.x - p1.x : -1;
 +   ret_rect.h = (p2.y > p1.y) ? p2.y - p1.y : -1;
 +
 +   return ret_rect;
 +}
 +
 +static Evas_Coord_Rectangle
 +_viewport_region_get(Evas_Object *data)
 +{
 +   Evas_Coord_Rectangle geometry, ret_rect;
 +   geometry.x = geometry.y = geometry.w = geometry.h = -1;
 +   ret_rect = geometry;
 +
 +   Widget_Data *wd = elm_widget_data_get(data);
 +   if (!wd) return geometry;
 +   if (!data || !strlen(elm_widget_type_get(data))) return geometry;
 +
 +   if (wd->scroll)
 +     {
 +        evas_object_geometry_get(wd->scroller, &geometry.x, &geometry.y, &geometry.w, &geometry.h);
 +        ret_rect = geometry;
 +     }
 +
 +   Evas_Object *parent_obj = data;
 +
 +   while ((parent_obj = elm_widget_parent_get(parent_obj)))
 +     {
 +        if (!strcmp(elm_widget_type_get(parent_obj), "scroller") ||
 +            !strcmp(elm_widget_type_get(parent_obj), "genlist"))
 +          {
 +             evas_object_geometry_get(parent_obj, &geometry.x, &geometry.y, &geometry.w, &geometry.h);
 +             if ((ret_rect.w == -1) && (ret_rect.h == -1)) ret_rect = geometry;
 +             ret_rect = _intersection_region_get(geometry, ret_rect);
 +          }
 +     }
 +
 +   return ret_rect;
 +}
 +
 +static Evas_Coord_Rectangle
 +_layout_region_get(Evas_Object *data)
 +{
 +   Evas_Coord_Rectangle geometry;
 +   geometry.x = geometry.y = geometry.w = geometry.h = -1;
 +
 +   Widget_Data *wd = elm_widget_data_get(data);
 +   if (!wd) return geometry;
 +   if (!data || !strlen(elm_widget_type_get(data))) return geometry;
 +
 +   Evas_Object *child_obj = data;
 +   Evas_Object *parent_obj;
 +
 +   while ((parent_obj = elm_widget_parent_get(child_obj)))
 +     {
 +        if (!strcmp(elm_widget_type_get(parent_obj), "conformant"))
 +          {
 +             evas_object_geometry_get(child_obj, &geometry.x, &geometry.y, &geometry.w, &geometry.h);
 +             return geometry;
 +          }
 +        child_obj = parent_obj;
 +     }
 +
 +   return geometry;
 +}
 +
 +static void
 +_region_get_job(void *data)
 +{
 +   Widget_Data *wd = elm_widget_data_get(data);
 +   if (!wd) return;
 +   wd->region_get_job = NULL;
 +
 +   if (!_elm_config->desktop_entry)
 +     {
 +        if (wd->region_recalc_job) ecore_job_del(wd->region_recalc_job);
 +        wd->region_recalc_job = ecore_job_add(_region_recalc_job, data);
 +
 +        evas_smart_objects_calculate(evas_object_evas_get(data));
 +     }
 +}
 +
 +static void
 +_region_recalc_job(void *data)
 +{
 +   Widget_Data *wd = elm_widget_data_get(data);
 +   Evas_Coord_Rectangle ret_rect;
 +   if (!wd) return;
 +   wd->region_recalc_job = NULL;
 +
 +   if (!_elm_config->desktop_entry)
 +     {
 +        ret_rect = _viewport_region_get(data);
 +        edje_object_part_text_viewport_region_set(wd->ent, "elm.text", ret_rect.x, ret_rect.y, ret_rect.w, ret_rect.h);
 +        ret_rect = _layout_region_get(data);
 +        edje_object_part_text_layout_region_set(wd->ent, "elm.text", ret_rect.x, ret_rect.y, ret_rect.w, ret_rect.h);
 +     }
 +}
 +
 +static void
 +_signal_selection_end(void *data, Evas_Object *obj __UNUSED__, const char *emission __UNUSED__, const char *source __UNUSED__)
 +{
 +   Widget_Data *wd = elm_widget_data_get(data);
 +   if (!wd) return;
 +
 +   if (wd->magnifier_enabled)
 +     _magnifier_hide(data);
 +   _menu_press(data);
 +}
 +
 +static void
  _signal_entry_changed_user(void *data, Evas_Object *obj __UNUSED__, const char *emission __UNUSED__, const char *source __UNUSED__)
  {
     Elm_Entry_Change_Info info;
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge