Fix for migration missing code (2f007f7a08 ~ 1e750ddfde) #2 submit/tizen/20190314.062257
authorJunsuChoi <jsuya.choi@samsung.com>
Thu, 14 Mar 2019 05:35:01 +0000 (14:35 +0900)
committerJunsuChoi <jsuya.choi@samsung.com>
Thu, 14 Mar 2019 05:46:29 +0000 (14:46 +0900)
Add missing tizen only code.
This code is a method and signal that disappears after the eo class has been deleted.

Change-Id: Icbee3a531d44f920a1322003822c80ecb0b1e788

17 files changed:
src/lib/edje/efl_canvas_layout_eo.legacy.c
src/lib/edje/efl_canvas_layout_eo.legacy.h
src/lib/elementary/efl_ui_widget.c
src/lib/elementary/efl_ui_widget_eo.legacy.c
src/lib/elementary/efl_ui_widget_eo.legacy.h
src/lib/elementary/efl_ui_win.c
src/lib/elementary/elm_gengrid_pan_eo.c
src/lib/elementary/elm_genlist_pan_eo.c
src/lib/elementary/elm_pan_eo.c
src/lib/elementary/elm_pan_eo.h
src/lib/elementary/elm_pan_eo.legacy.c
src/lib/elementary/elm_pan_eo.legacy.h
src/lib/elementary/elm_widget.h
src/lib/evas/canvas/evas_box_eo.c
src/lib/evas/canvas/evas_object_box.c
src/lib/evas/canvas/evas_object_table.c
src/lib/evas/canvas/evas_table_eo.c

index f55e5d5..c0e37f0 100644 (file)
@@ -34,3 +34,135 @@ edje_object_content_remove(Efl_Canvas_Layout *obj, Efl_Gfx_Entity *content)
 {
    return efl_canvas_layout_content_remove(obj, content);
 }
+
+/***********************************************************************************
+ * TIZEN_ONLY_FEATURE: API for handling text properties of Edje                    *
+ ***********************************************************************************/
+EAPI Eina_Bool
+edje_object_part_text_min_policy_set(Efl_Canvas_Layout *obj, const char *part, const char *state_name, Eina_Bool min_x, Eina_Bool min_y)
+{
+   return efl_canvas_layout_part_text_min_policy_set(obj, part, state_name, min_x, min_y);
+}
+
+EAPI Eina_Bool
+edje_object_part_text_min_policy_get(const Efl_Canvas_Layout *obj, const char *part, const char *state_name, Eina_Bool *min_x, Eina_Bool *min_y)
+{
+   return efl_canvas_layout_part_text_min_policy_get(obj, part, state_name, min_x, min_y);
+}
+
+EAPI Eina_Bool
+edje_object_part_text_valign_set(Efl_Canvas_Layout *obj, const char *part, double valign)
+{
+   return efl_canvas_layout_part_text_valign_set(obj, part, valign);
+}
+
+EAPI double
+edje_object_part_text_valign_get(const Efl_Canvas_Layout *obj, const char *part)
+{
+   return efl_canvas_layout_part_text_valign_get(obj, part);
+}
+/*******
+ * END *
+ *******/
+
+/***********************************************************************************
+ * TIZEN_ONLY_FEATURE: ellipsize.marquee, ellipsize.fade for TEXTBLOCK, TEXT part. *
+ ***********************************************************************************/
+EAPI Eina_Bool
+edje_object_part_text_marquee_duration_set(Efl_Canvas_Layout *obj, const char *part, double duration)
+{
+   return efl_canvas_layout_part_text_marquee_duration_set(obj, part, duration);
+}
+
+EAPI double
+edje_object_part_text_marquee_duration_get(const Efl_Canvas_Layout *obj, const char *part)
+{
+   return efl_canvas_layout_part_text_marquee_duration_get(obj, part);
+}
+
+EAPI Eina_Bool
+edje_object_part_text_marquee_speed_set(Efl_Canvas_Layout *obj, const char *part, double speed)
+{
+   return efl_canvas_layout_part_text_marquee_speed_set(obj, part, speed);
+}
+
+EAPI double
+edje_object_part_text_marquee_speed_get(const Efl_Canvas_Layout *obj, const char *part)
+{
+   return efl_canvas_layout_part_text_marquee_speed_get(obj, part);
+}
+
+EAPI Eina_Bool
+edje_object_part_text_marquee_always_set(Efl_Canvas_Layout *obj, const char *part, Eina_Bool always)
+{
+   return efl_canvas_layout_part_text_marquee_always_set(obj, part, always);
+}
+
+EAPI Eina_Bool
+edje_object_part_text_marquee_always_get(const Efl_Canvas_Layout *obj, const char *part)
+{
+   return efl_canvas_layout_part_text_marquee_always_get(obj, part);
+}
+/*******
+ * END *
+ *******/
+
+/***********************************************************************************
+ * TIZEN_ONLY_FEATURE: apply Tizen's color_class features.                         *
+ ***********************************************************************************/
+EAPI void
+edje_object_color_class_parent_set(Efl_Canvas_Layout *obj, Efl_Object *parent)
+{
+   efl_canvas_layout_color_class_parent_set(obj, parent);
+}
+
+EAPI void
+edje_object_color_class_parent_unset(Efl_Canvas_Layout *obj)
+{
+   efl_canvas_layout_color_class_parent_unset(obj);
+}
+/*******
+ * END *
+ *******/
+
+/***********************************************************************************
+ * TIZEN_ONLY_FEATURE: API for handling common properties of Edje                  *
+ ***********************************************************************************/
+EAPI Eina_Bool
+edje_object_part_valign_set(Efl_Canvas_Layout *obj, const char *part, double valign)
+{
+   return efl_canvas_layout_part_valign_set(obj, part, valign);
+}
+
+EAPI double
+edje_object_part_valign_get(const Efl_Canvas_Layout *obj, const char *part)
+{
+   return efl_canvas_layout_part_valign_get(obj, part);
+}
+
+EAPI void
+edje_object_part_text_cursor_coord_get(Efl_Canvas_Layout *obj, const char *part, Edje_Cursor cur, int *x, int *y)
+{
+   efl_canvas_layout_part_text_cursor_coord_get(obj, part, cur, x, y);
+}
+
+EAPI void
+edje_object_part_text_cursor_size_get(Efl_Canvas_Layout *obj, const char *part, Edje_Cursor cur, int *w, int *h)
+{
+   efl_canvas_layout_part_text_cursor_size_get(obj, part, cur, w, h);
+}
+/*******
+ * END *
+ *******/
+
+/**********************************************************************************
+ * TIZEN_ONLY(20171128): add additional cursor function for improving performance *
+ **********************************************************************************/
+EAPI void
+edje_object_part_text_cursor_on_mouse_geometry_get(const Efl_Canvas_Layout *obj, const char *part, int *x, int *y, int *w, int *h)
+{
+   efl_canvas_layout_part_text_cursor_on_mouse_geometry_get(obj, part, x, y, w, h);
+}
+/*******
+ * END *
+ *******/
index 0155eb9..7e560a2 100644 (file)
@@ -112,4 +112,322 @@ EAPI Eina_Error edje_object_layout_load_error_get(const Efl_Canvas_Layout *obj);
  */
 EAPI Eina_Bool edje_object_content_remove(Efl_Canvas_Layout *obj, Efl_Gfx_Entity *content);
 
+/***********************************************************************************
+* TIZEN_ONLY_FEATURE: API for handling text properties of Edje                    *
+***********************************************************************************/
+/**
+ * @brief Sets the object text min calculation policy.
+ *
+ * Do not use this API without understanding whats going on. It is made for
+ * internal usage.
+ *
+ * @if MOBILE @since_tizen 3.0 @elseif WEARABLE @since_tizen 3.0 @endif
+ * @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ * @param[in] state_name The state name
+ * @param[in] min_x The min width policy
+ * @param[in] min_y The min height policy
+ *
+ * @return @c true on success, or @c false on error
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI Eina_Bool edje_object_part_text_min_policy_set(Efl_Canvas_Layout *obj, const char *part, const char *state_name, Eina_Bool min_x, Eina_Bool min_y);
+
+/**
+ * @brief Gets the object text min calculation policy.
+ *
+ * Do not use this API without understanding whats going on. It is made for
+ * internal usage.
+ *
+ * @if MOBILE @since_tizen 3.0 @elseif WEARABLE @since_tizen 3.0 @endif
+ * @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ * @param[in] state_name The state name
+ * @param[out] min_x The min width policy
+ * @param[out] min_y The min height policy
+ *
+ * @return @c true on success, or @c false on error
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI Eina_Bool edje_object_part_text_min_policy_get(const Efl_Canvas_Layout *obj, const char *part, const char *state_name, Eina_Bool *min_x, Eina_Bool *min_y);
+
+/**
+ * @brief Sets the valign for text.
+ *
+ * Do not use this API without understanding whats going on. It is made for
+ * internal usage. @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ * @param[in] valign The valign 0.0~1.0. -1.0 for respect EDC's align value.
+ *
+ * @return @c true, on success or @c false, on error
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI Eina_Bool edje_object_part_text_valign_set(Efl_Canvas_Layout *obj, const char *part, double valign);
+
+/**
+ * @brief Gets the valign for text.
+ *
+ * Do not use this API without understanding whats going on. It is made for
+ * internal usage. @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ *
+ * @return The valign 0.0~1.0. -1.0 for respect EDC's align value.
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI double edje_object_part_text_valign_get(const Efl_Canvas_Layout *obj, const char *part);
+
+/**
+ * @brief Sets the duration for text's marquee.
+ *
+ * Do not use this API without understanding whats going on. It is made for
+ * internal usage. @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ * @param[in] duration The duration. 0.0 for respect EDC's duration value.
+ *
+ * @return @c true, on success or @c false, on error
+ *
+ * @ingroup Edje_Object_Group
+ */
+/*******
+* END *
+*******/
+
+/***********************************************************************************
+* TIZEN_ONLY_FEATURE: ellipsize.marquee, ellipsize.fade for TEXTBLOCK, TEXT part. *
+***********************************************************************************/
+/**
+ * @brief Sets the duration for text's marquee.
+ *
+ * Do not use this API without understanding whats going on. It is made for
+ * internal usage. @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ * @param[in] duration The duration. 0.0 for respect EDC's duration value.
+ *
+ * @return @c true, on success or @c false, on error
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI Eina_Bool edje_object_part_text_marquee_duration_set(Efl_Canvas_Layout *obj, const char *part, double duration);
+
+/**
+ * @brief Gets the duration for text's marquee.
+ *
+ * Do not use this API without understanding whats going on. It is made for
+ * internal usage. @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ *
+ * @return The duration. 0.0 for respect EDC's duration value.
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI double edje_object_part_text_marquee_duration_get(const Efl_Canvas_Layout *obj, const char *part);
+
+/**
+ * @brief Sets the speed for text's marquee.
+ *
+ * Do not use this API without understanding whats going on. It is made for
+ * internal usage. @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ * @param[in] speed The speed. 0.0 for respect EDC's speed value.
+ *
+ * @return @c true, on success or @c false, on error
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI Eina_Bool edje_object_part_text_marquee_speed_set(Efl_Canvas_Layout *obj, const char *part, double speed);
+
+/**
+ * @brief Gets the speed for text's marquee.
+ *
+ * Do not use this API without understanding whats going on. It is made for
+ * internal usage. @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ *
+ * @return The speed. 0.0 for respect EDC's speed value.
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI double edje_object_part_text_marquee_speed_get(const Efl_Canvas_Layout *obj, const char *part);
+
+/**
+ * @brief Sets the always mode for text's marquee.
+ *
+ * Do not use this API without understanding whats going on. It is made for
+ * internal usage. @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ * @param[in] always The always mode
+ *
+ * @return @c true, on success or @c false, on error
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI Eina_Bool edje_object_part_text_marquee_always_set(Efl_Canvas_Layout *obj, const char *part, Eina_Bool always);
+
+/**
+ * @brief Gets the always mode for text's marquee.
+ *
+ * Do not use this API without understanding whats going on. It is made for
+ * internal usage. @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ *
+ * @return The always mode
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI Eina_Bool edje_object_part_text_marquee_always_get(const Efl_Canvas_Layout *obj, const char *part);
+/*******
+* END *
+*******/
+/***********************************************************************************
+ * TIZEN_ONLY_FEATURE: apply Tizen's color_class features.                         *
+ ***********************************************************************************/
+/**
+ * @brief Sets the parent object for color class.
+ *
+ * @if MOBILE @since_tizen 3.0 @elseif WEARABLE @since_tizen 3.0 @endif
+ * @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] parent The parent object for color class
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI void edje_object_color_class_parent_set(Efl_Canvas_Layout *obj, Efl_Object *parent) EINA_ARG_NONNULL(2);
+
+/**
+ * @brief Unsets the parent object for color class.
+ *
+ * @if MOBILE @since_tizen 3.0 @elseif WEARABLE @since_tizen 3.0 @endif
+ * @internal
+ * @param[in] obj The object.
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI void edje_object_color_class_parent_unset(Efl_Canvas_Layout *obj);
+/*******
+* END *
+*******/
+/***********************************************************************************
+ * TIZEN_ONLY_FEATURE: API for handling common properties of Edje                  *
+ ***********************************************************************************/
+/**
+ * @brief Sets the valign for a common description.
+ *
+ * Do not use this API without understanding whats going on. It is made for
+ * internal usage. @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ * @param[in] valign The valign 0.0~1.0. -1.0 for respect EDC's align value.
+ *
+ * @return @c true, on success or @c false, on error
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI Eina_Bool edje_object_part_valign_set(Efl_Canvas_Layout *obj, const char *part, double valign);
+
+/**
+ * @brief Gets the valign for a common description.
+ *
+ * Do not use this API without understanding whats going on. It is made for
+ * internal usage. @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ *
+ * @return The valign 0.0~1.0. -1.0 for respect EDC's align value.
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI double edje_object_part_valign_get(const Efl_Canvas_Layout *obj, const char *part);
+
+/*******
+ * END *
+ *******/
+/**********************************************************************************
+ * TIZEN_ONLY(20171128): add additional cursor function for improving performance *
+ **********************************************************************************/
+/**
+ * @brief Get a position of the given cursor
+ *
+ * @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ * @param[in] cur cursor type
+ * @param[out] x w
+ * @param[out] y h
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI void edje_object_part_text_cursor_coord_get(Efl_Canvas_Layout *obj, const char *part, Edje_Cursor cur, int *x, int *y);
+
+/**
+ * @brief Get a size of the given cursor
+ *
+ * @internal
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ * @param[in] cur cursor type
+ * @param[out] w w
+ * @param[out] h h
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI void edje_object_part_text_cursor_size_get(Efl_Canvas_Layout *obj, const char *part, Edje_Cursor cur, int *w, int *h);
+/*******
+ * END *
+ *******/
+/*********************************************************************
+ * TIZEN_ONLY(20161110): keep cursor position on mouse down and move *
+ *********************************************************************/
+/**
+ * @brief Returns the cursor geometry of the part relative to the edje object.
+ * The cursor geometry is kept in mouse down and move.
+ *
+ * @internal @if MOBILE @since_tizen 3.0 @elseif WEARABLE @since_tizen 3.0
+ * @endif
+ *
+ * @param[in] obj The object.
+ * @param[in] part The part name
+ * @param[out] x Cursor X position
+ * @param[out] y Cursor Y position
+ * @param[out] w Cursor width
+ * @param[out] h Cursor height
+ *
+ * @ingroup Edje_Object_Group
+ */
+EAPI void edje_object_part_text_cursor_on_mouse_geometry_get(const Efl_Canvas_Layout *obj, const char *part, int *x, int *y, int *w, int *h);
+/*******
+ * END *
+ *******/
+
+
 #endif
index f945ee4..eac485b 100644 (file)
@@ -104,7 +104,7 @@ static Eina_List *_lines_split(Eina_List *children);
 static int _sort_vertically(const void *data1, const void *data2);
 static int _sort_horizontally(const void *data1, const void *data2);
 
-Eo * plug_type_proxy_get(Eo *obj, Evas_Object *widget);
+Eo * plug_type_proxy_get(const Eo *obj, Evas_Object *widget);
 
 static Eina_Bool _elm_widget_can_highlight_get_by_class(Eo *obj);
 static Eina_Bool _accessible_object_on_scroll_is(Eo* obj);
@@ -6925,7 +6925,7 @@ _on_ewk_del(void *data, const Efl_Event *desc EINA_UNUSED)
 
 //TIZEN_ONLY(20170621) handle atspi proxy connection at runtime
 Eo *
-plug_type_proxy_get(Eo *obj, Evas_Object *widget)
+plug_type_proxy_get(const Eo *obj, Evas_Object *widget)
 {
    Eo *proxy = NULL;
    const char *plug_id;
@@ -6984,7 +6984,7 @@ elm_widget_atspi_plug_type_proxy_get(Evas_Object *obj)
 
 //TIZEN_ONLY(20161107): enhance elm_atspi_accessible_can_highlight_set to set can_hihglight property to its children
 EAPI Eina_Bool
-_elm_widget_highlightable(Evas_Object *obj)
+_elm_widget_highlightable(const Evas_Object *obj)
 {
    Eo *parent;
 
@@ -9119,34 +9119,34 @@ _efl_ui_widget_focus_next_get(const Eo *obj, Elm_Widget_Smart_Data *sd, Efl_Ui_F
         if (!int_ret && _is_focused((Eo *)obj))
           {
              Evas_Object *o = NULL;
-             if (dir == ELM_FOCUS_PREVIOUS)
+             if (dir == EFL_UI_FOCUS_DIRECTION_PREVIOUS)
                *next_item = sd->item_focus_previous;
-             else if (dir == ELM_FOCUS_NEXT)
+             else if (dir == EFL_UI_FOCUS_DIRECTION_NEXT)
                *next_item = sd->item_focus_next;
-             else if (dir == ELM_FOCUS_UP)
+             else if (dir == EFL_UI_FOCUS_DIRECTION_UP)
                *next_item = sd->item_focus_up;
-             else if (dir == ELM_FOCUS_DOWN)
+             else if (dir == EFL_UI_FOCUS_DIRECTION_DOWN)
                *next_item = sd->item_focus_down;
-             else if (dir == ELM_FOCUS_RIGHT)
+             else if (dir == EFL_UI_FOCUS_DIRECTION_RIGHT)
                *next_item = sd->item_focus_right;
-             else if (dir == ELM_FOCUS_LEFT)
+             else if (dir == EFL_UI_FOCUS_DIRECTION_LEFT)
                *next_item = sd->item_focus_left;
              if (*next_item)
                o = elm_object_item_widget_get(*next_item);
 
              if (!o)
                {
-                  if (dir == ELM_FOCUS_PREVIOUS)
+                  if (dir == EFL_UI_FOCUS_DIRECTION_PREVIOUS)
                     o = sd->focus_previous;
-                  else if (dir == ELM_FOCUS_NEXT)
+                  else if (dir == EFL_UI_FOCUS_DIRECTION_NEXT)
                     o = sd->focus_next;
-                  else if (dir == ELM_FOCUS_UP)
+                  else if (dir == EFL_UI_FOCUS_DIRECTION_UP)
                     o = sd->focus_up;
-                  else if (dir == ELM_FOCUS_DOWN)
+                  else if (dir == EFL_UI_FOCUS_DIRECTION_DOWN)
                     o = sd->focus_down;
-                  else if (dir == ELM_FOCUS_RIGHT)
+                  else if (dir == EFL_UI_FOCUS_DIRECTION_RIGHT)
                     o = sd->focus_right;
-                  else if (dir == ELM_FOCUS_LEFT)
+                  else if (dir == EFL_UI_FOCUS_DIRECTION_LEFT)
                     o = sd->focus_left;
                }
 
@@ -9175,33 +9175,33 @@ _efl_ui_widget_focus_next_get(const Eo *obj, Elm_Widget_Smart_Data *sd, Efl_Ui_F
 
    if (_is_focused((Eo *)obj))
      {
-        if (dir == ELM_FOCUS_PREVIOUS)
+        if (dir == EFL_UI_FOCUS_DIRECTION_PREVIOUS)
           *next_item = sd->item_focus_previous;
-        else if (dir == ELM_FOCUS_NEXT)
+        else if (dir == EFL_UI_FOCUS_DIRECTION_NEXT)
           *next_item = sd->item_focus_next;
-        else if (dir == ELM_FOCUS_UP)
+        else if (dir == EFL_UI_FOCUS_DIRECTION_UP)
           *next_item = sd->item_focus_up;
-        else if (dir == ELM_FOCUS_DOWN)
+        else if (dir == EFL_UI_FOCUS_DIRECTION_DOWN)
           *next_item = sd->item_focus_down;
-        else if (dir == ELM_FOCUS_RIGHT)
+        else if (dir == EFL_UI_FOCUS_DIRECTION_RIGHT)
           *next_item = sd->item_focus_right;
-        else if (dir == ELM_FOCUS_LEFT)
+        else if (dir == EFL_UI_FOCUS_DIRECTION_LEFT)
           *next_item = sd->item_focus_left;
         if (*next_item) *next = elm_object_item_widget_get(*next_item);
 
         if (!(*next))
           {
-             if (dir == ELM_FOCUS_PREVIOUS)
+             if (dir == EFL_UI_FOCUS_DIRECTION_PREVIOUS)
                *next = sd->focus_previous;
-             else if (dir == ELM_FOCUS_NEXT)
+             else if (dir == EFL_UI_FOCUS_DIRECTION_NEXT)
                *next = sd->focus_next;
-             else if (dir == ELM_FOCUS_UP)
+             else if (dir == EFL_UI_FOCUS_DIRECTION_UP)
                *next = sd->focus_up;
-             else if (dir == ELM_FOCUS_DOWN)
+             else if (dir == EFL_UI_FOCUS_DIRECTION_DOWN)
                *next = sd->focus_down;
-             else if (dir == ELM_FOCUS_RIGHT)
+             else if (dir == EFL_UI_FOCUS_DIRECTION_RIGHT)
                *next = sd->focus_right;
-             else if (dir == ELM_FOCUS_LEFT)
+             else if (dir == EFL_UI_FOCUS_DIRECTION_LEFT)
                *next = sd->focus_left;
           }
 
@@ -9252,10 +9252,10 @@ _efl_ui_widget_focus_list_next_get(const Eo *obj, Elm_Widget_Smart_Data *_pd EIN
    focused_object = efl_ui_widget_focused_object_get(obj);
    if (focused_object)
      {
-        if ((dir == ELM_FOCUS_UP)
-           || (dir == ELM_FOCUS_DOWN)
-           || (dir == ELM_FOCUS_RIGHT)
-           || (dir == ELM_FOCUS_LEFT))
+        if ((dir == EFL_UI_FOCUS_DIRECTION_UP)
+           || (dir == EFL_UI_FOCUS_DIRECTION_DOWN)
+           || (dir == EFL_UI_FOCUS_DIRECTION_RIGHT)
+           || (dir == EFL_UI_FOCUS_DIRECTION_LEFT))
           {
              *next_item = efl_ui_widget_focus_next_item_get(focused_object, dir);
              if (*next_item)
@@ -9270,10 +9270,10 @@ _efl_ui_widget_focus_list_next_get(const Eo *obj, Elm_Widget_Smart_Data *_pd EIN
                   double degree = 0;
                   double weight = 0.0;
 
-                  if (dir == ELM_FOCUS_UP) degree = 0.0;
-                  else if (dir == ELM_FOCUS_DOWN) degree = 180.0;
-                  else if (dir == ELM_FOCUS_RIGHT) degree = 90.0;
-                  else if (dir == ELM_FOCUS_LEFT) degree = 270.0;
+                  if (dir == EFL_UI_FOCUS_DIRECTION_UP) degree = 0.0;
+                  else if (dir == EFL_UI_FOCUS_DIRECTION_DOWN) degree = 180.0;
+                  else if (dir == EFL_UI_FOCUS_DIRECTION_RIGHT) degree = 90.0;
+                  else if (dir == EFL_UI_FOCUS_DIRECTION_LEFT) degree = 270.0;
 
                   if (efl_ui_widget_focus_list_direction_get(obj, focused_object,
                                                           items, list_data_get,
@@ -9289,16 +9289,16 @@ _efl_ui_widget_focus_list_next_get(const Eo *obj, Elm_Widget_Smart_Data *_pd EIN
      }
 
    /* Direction */
-   if (dir == ELM_FOCUS_PREVIOUS)
+   if (dir == EFL_UI_FOCUS_DIRECTION_PREVIOUS)
      {
         items = eina_list_last(items);
         list_next = eina_list_prev;
      }
-   else if ((dir == ELM_FOCUS_NEXT)
-            || (dir == ELM_FOCUS_UP)
-            || (dir == ELM_FOCUS_DOWN)
-            || (dir == ELM_FOCUS_RIGHT)
-            || (dir == ELM_FOCUS_LEFT))
+   else if ((dir == EFL_UI_FOCUS_DIRECTION_NEXT)
+            || (dir == EFL_UI_FOCUS_DIRECTION_UP)
+            || (dir == EFL_UI_FOCUS_DIRECTION_DOWN)
+            || (dir == EFL_UI_FOCUS_DIRECTION_RIGHT)
+            || (dir == EFL_UI_FOCUS_DIRECTION_LEFT))
      list_next = eina_list_next;
    else
      return EINA_FALSE;
@@ -9342,10 +9342,10 @@ _efl_ui_widget_focus_list_next_get(const Eo *obj, Elm_Widget_Smart_Data *_pd EIN
              *next_item = tmp_item;
              return EINA_TRUE;
           }
-        else if ((dir == ELM_FOCUS_UP)
-                 || (dir == ELM_FOCUS_DOWN)
-                 || (dir == ELM_FOCUS_RIGHT)
-                 || (dir == ELM_FOCUS_LEFT))
+        else if ((dir == EFL_UI_FOCUS_DIRECTION_UP)
+                 || (dir == EFL_UI_FOCUS_DIRECTION_DOWN)
+                 || (dir == EFL_UI_FOCUS_DIRECTION_RIGHT)
+                 || (dir == EFL_UI_FOCUS_DIRECTION_LEFT))
           {
              if (tmp && _is_focused(cur))
                {
@@ -9407,17 +9407,17 @@ _efl_ui_widget_focus_next_object_get(const Eo *obj EINA_UNUSED, Elm_Widget_Smart
 {
    Evas_Object *ret = NULL;
 
-   if (dir == ELM_FOCUS_PREVIOUS)
+   if (dir == EFL_UI_FOCUS_DIRECTION_PREVIOUS)
      ret = sd->focus_previous;
-   else if (dir == ELM_FOCUS_NEXT)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_NEXT)
      ret = sd->focus_next;
-   else if (dir == ELM_FOCUS_UP)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_UP)
      ret = sd->focus_up;
-   else if (dir == ELM_FOCUS_DOWN)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_DOWN)
      ret = sd->focus_down;
-   else if (dir == ELM_FOCUS_RIGHT)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_RIGHT)
      ret = sd->focus_right;
-   else if (dir == ELM_FOCUS_LEFT)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_LEFT)
      ret = sd->focus_left;
 
    return ret;
@@ -9443,17 +9443,17 @@ EOLIAN static void
 _efl_ui_widget_focus_next_object_set(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd, Evas_Object *next, Efl_Ui_Focus_Direction dir)
 {
 
-   if (dir == ELM_FOCUS_PREVIOUS)
+   if (dir == EFL_UI_FOCUS_DIRECTION_PREVIOUS)
      sd->focus_previous = next;
-   else if (dir == ELM_FOCUS_NEXT)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_NEXT)
      sd->focus_next = next;
-   else if (dir == ELM_FOCUS_UP)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_UP)
      sd->focus_up = next;
-   else if (dir == ELM_FOCUS_DOWN)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_DOWN)
      sd->focus_down = next;
-   else if (dir == ELM_FOCUS_RIGHT)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_RIGHT)
      sd->focus_right = next;
-   else if (dir == ELM_FOCUS_LEFT)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_LEFT)
      sd->focus_left = next;
 
 }
@@ -9463,17 +9463,17 @@ _efl_ui_widget_focus_next_item_get(const Eo *obj EINA_UNUSED, Elm_Widget_Smart_D
 {
    Elm_Object_Item *ret = NULL;
 
-   if (dir == ELM_FOCUS_PREVIOUS)
+   if (dir == EFL_UI_FOCUS_DIRECTION_PREVIOUS)
      ret = sd->item_focus_previous;
-   else if (dir == ELM_FOCUS_NEXT)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_NEXT)
      ret = sd->item_focus_next;
-   else if (dir == ELM_FOCUS_UP)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_UP)
      ret = sd->item_focus_up;
-   else if (dir == ELM_FOCUS_DOWN)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_DOWN)
      ret = sd->item_focus_down;
-   else if (dir == ELM_FOCUS_RIGHT)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_RIGHT)
      ret = sd->item_focus_right;
-   else if (dir == ELM_FOCUS_LEFT)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_LEFT)
      ret = sd->item_focus_left;
 
    return ret;
@@ -9483,17 +9483,17 @@ _efl_ui_widget_focus_next_item_get(const Eo *obj EINA_UNUSED, Elm_Widget_Smart_D
 EOLIAN static void
 _efl_ui_widget_focus_next_item_set(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd, Elm_Object_Item *next_item, Efl_Ui_Focus_Direction dir)
 {
-   if (dir == ELM_FOCUS_PREVIOUS)
+   if (dir == EFL_UI_FOCUS_DIRECTION_PREVIOUS)
      sd->item_focus_previous = next_item;
-   else if (dir == ELM_FOCUS_NEXT)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_NEXT)
      sd->item_focus_next = next_item;
-   else if (dir == ELM_FOCUS_UP)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_UP)
      sd->item_focus_up = next_item;
-   else if (dir == ELM_FOCUS_DOWN)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_DOWN)
      sd->item_focus_down = next_item;
-   else if (dir == ELM_FOCUS_RIGHT)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_RIGHT)
      sd->item_focus_right = next_item;
-   else if (dir == ELM_FOCUS_LEFT)
+   else if (dir == EFL_UI_FOCUS_DIRECTION_LEFT)
      sd->item_focus_left = next_item;
 }
 
index 0d1665b..ed71064 100644 (file)
@@ -1,4 +1,42 @@
 
+//TIZEN_ONLY: Missing method from opensource
+EAPI Eina_Bool
+elm_widget_cursor_set(Efl_Ui_Widget *obj, const char *cursor)
+{
+   return efl_ui_widget_cursor_set(obj, cursor);
+}
+
+EAPI const char *
+elm_widget_cursor_get(const Efl_Ui_Widget *obj)
+{
+   return efl_ui_widget_cursor_get(obj);
+}
+
+EAPI Eina_Bool
+elm_widget_cursor_style_set(Efl_Ui_Widget *obj, const char *style)
+{
+   return efl_ui_widget_cursor_style_set(obj, style);
+}
+
+EAPI const char *
+elm_widget_cursor_style_get(const Efl_Ui_Widget *obj)
+{
+   return efl_ui_widget_cursor_style_get(obj);
+}
+
+EAPI Eina_Bool
+elm_widget_cursor_theme_search_enabled_set(Efl_Ui_Widget *obj, Eina_Bool allow)
+{
+   return efl_ui_widget_cursor_theme_search_enabled_set(obj, allow);
+}
+
+EAPI Eina_Bool
+elm_widget_cursor_theme_search_enabled_get(const Efl_Ui_Widget *obj)
+{
+   return efl_ui_widget_cursor_theme_search_enabled_get(obj);
+}
+//
+
 EAPI void
 elm_widget_resize_object_set(Efl_Ui_Widget *obj, Efl_Canvas_Object *sobj)
 {
@@ -83,8 +121,42 @@ elm_widget_focus_highlight_geometry_get(const Efl_Ui_Widget *obj)
    return efl_ui_widget_focus_highlight_geometry_get(obj);
 }
 
+//TIZEN_ONLY(20160726): add API elm_object_part_access_object_get
+EAPI Efl_Canvas_Object *
+elm_widget_part_access_object_get(const Efl_Ui_Widget *obj, const char *part)
+{
+   return efl_ui_widget_part_access_object_get(obj, part);
+//
+}
+
+//TIZEN_ONLY(20180607): Restore legacy focus
+EAPI Efl_Canvas_Object *
+elm_widget_newest_focus_order_get(const Efl_Ui_Widget *obj, unsigned int *newest_focus_order, Eina_Bool can_focus_only)
+{
+   return efl_ui_widget_newest_focus_order_get(obj, newest_focus_order, can_focus_only);
+}
+
+EAPI void
+elm_widget_focus_tree_unfocusable_handle(Efl_Ui_Widget *obj)
+{
+   efl_ui_widget_focus_tree_unfocusable_handle(obj);
+}
+
+EAPI Eina_Bool
+elm_widget_focus_list_direction_get(const Efl_Ui_Widget *obj, const Efl_Canvas_Object *base, const Eina_List *items, void *list_data_get, double degree, Efl_Canvas_Object **direction, Elm_Widget_Item **direction_item, double *weight)
+{
+   return efl_ui_widget_focus_list_direction_get(obj, base, items, list_data_get, degree, direction, direction_item, weight);
+}
+
+EAPI Eina_Bool
+elm_widget_focus_list_next_get(const Efl_Ui_Widget *obj, const Eina_List *items, void *list_data_get, Efl_Ui_Focus_Direction dir, Efl_Canvas_Object **next, Elm_Widget_Item **next_item)
+{
+   return efl_ui_widget_focus_list_next_get(obj, items, list_data_get, dir, next, next_item);
+}
+
 EAPI Eina_Bool
 elm_widget_focus_state_apply(Efl_Ui_Widget *obj, Efl_Ui_Widget_Focus_State current_state, Efl_Ui_Widget_Focus_State *configured_state, Efl_Ui_Widget *redirect)
 {
    return efl_ui_widget_focus_state_apply(obj, current_state, configured_state, redirect);
 }
+//
index 70ae62e..7f832a3 100644 (file)
@@ -33,6 +33,123 @@ typedef struct _Efl_Ui_Widget_Focus_State
 
 #endif
 
+//TIZEN_ONLY: Missing method from opensource
+/**
+ * @brief The cursor to be shown when mouse is over the object
+ *
+ * This is the cursor that will be displayed when mouse is over the object. The
+ * object can have only one cursor set to it so if @ref elm_widget_cursor_set
+ * is called twice for an object, the previous set will be unset.
+ *
+ * If using X cursors, a definition of all the valid cursor names is listed on
+ * Elementary_Cursors.h. If an invalid name is set the default cursor will be
+ * used.
+ *
+ * Sets or unsets the current cursor.
+ *
+ * If @c cursor is @c null this function will reset the cursor to the default
+ * one.
+ *
+ * @param[in] obj The object.
+ * @param[in] cursor The cursor name, defined either by the display system or
+ * the theme.
+ *
+ * @return @c true if successful.
+ *
+ * @ingroup Elm_Widget_Group
+ */
+EAPI Eina_Bool elm_widget_cursor_set(Efl_Ui_Widget *obj, const char *cursor);
+
+/**
+ * @brief The cursor to be shown when mouse is over the object
+ *
+ * This is the cursor that will be displayed when mouse is over the object. The
+ * object can have only one cursor set to it so if @ref elm_widget_cursor_set
+ * is called twice for an object, the previous set will be unset.
+ *
+ * If using X cursors, a definition of all the valid cursor names is listed on
+ * Elementary_Cursors.h. If an invalid name is set the default cursor will be
+ * used.
+ *
+ * Returns the current cursor name.
+ *
+ * @param[in] obj The object.
+ *
+ * @return The cursor name, defined either by the display system or the theme.
+ *
+ * @ingroup Elm_Widget_Group
+ */
+EAPI const char *elm_widget_cursor_get(const Efl_Ui_Widget *obj);
+
+/**
+ * @brief A different style for the cursor.
+ *
+ * This only makes sense if theme cursors are used. The cursor should be set
+ * with @ref elm_widget_cursor_set first before setting its style with this
+ * property.
+ *
+ * Sets a style for the current cursor. Call after @ref elm_widget_cursor_set.
+ *
+ * @param[in] obj The object.
+ * @param[in] style A specific style to use, eg. default, transparent, ....
+ *
+ * @return @c true if successful.
+ *
+ * @ingroup Elm_Widget_Group
+ */
+EAPI Eina_Bool elm_widget_cursor_style_set(Efl_Ui_Widget *obj, const char *style);
+
+/**
+ * @brief A different style for the cursor.
+ *
+ * This only makes sense if theme cursors are used. The cursor should be set
+ * with @ref elm_widget_cursor_set first before setting its style with this
+ * property.
+ *
+ * Returns the current cursor style name.
+ *
+ * @param[in] obj The object.
+ *
+ * @return A specific style to use, eg. default, transparent, ....
+ *
+ * @ingroup Elm_Widget_Group
+ */
+EAPI const char *elm_widget_cursor_style_get(const Efl_Ui_Widget *obj);
+
+/**
+ * @brief Whether the cursor may be looked in the theme or not.
+ *
+ * If @c false, the cursor may only come from the render engine, i.e. from the
+ * display manager.
+ *
+ * Enables or disables theme cursors.
+ *
+ * @param[in] obj The object.
+ * @param[in] allow Whether to use theme cursors.
+ *
+ * @return @c true if successful.
+ *
+ * @ingroup Elm_Widget_Group
+ */
+EAPI Eina_Bool elm_widget_cursor_theme_search_enabled_set(Efl_Ui_Widget *obj, Eina_Bool allow);
+
+/**
+ * @brief Whether the cursor may be looked in the theme or not.
+ *
+ * If @c false, the cursor may only come from the render engine, i.e. from the
+ * display manager.
+ *
+ * Returns the current state of theme cursors search.
+ *
+ * @param[in] obj The object.
+ *
+ * @return Whether to use theme cursors.
+ *
+ * @ingroup Elm_Widget_Group
+ */
+EAPI Eina_Bool elm_widget_cursor_theme_search_enabled_get(const Efl_Ui_Widget *obj);
+//
+
 /**
  * @brief This is the internal canvas object managed by a widget.
  *
@@ -305,6 +422,77 @@ EAPI Eina_Rect elm_widget_focus_region_get(const Efl_Ui_Widget *obj);
  */
 EAPI Eina_Rect elm_widget_focus_highlight_geometry_get(const Efl_Ui_Widget *obj);
 
+//TIZEN_ONLY(20160726): add API elm_object_part_access_object_get
+/**
+ * @brief Get the access object of given part of the widget.
+ *
+ * @param[in] obj The object.
+ * @param[in] part The object's part name to get access object
+ *
+ * @since 1.18
+ *
+ * @ingroup Elm_Widget_Group
+ */
+EAPI Efl_Canvas_Object *elm_widget_part_access_object_get(const Efl_Ui_Widget *obj, const char *part);
+//
+
+//TIZEN_ONLY(20180607): Restore legacy focus
+/**
+ * @brief Get newest focus in order
+ *
+ * @param[in] obj The object.
+ * @param[out] newest_focus_order Newest focus order
+ * @param[in] can_focus_only @c true only us widgets which can focus, @c false
+ * otherweise
+ *
+ * @return Handle to focused widget
+ *
+ * @ingroup Elm_Widget_Group
+ */
+EAPI Efl_Canvas_Object *elm_widget_newest_focus_order_get(const Efl_Ui_Widget *obj, unsigned int *newest_focus_order, Eina_Bool can_focus_only);
+
+/** Handle focus tree unfocusable
+ *
+ * @ingroup Elm_Widget_Group
+ */
+EAPI void elm_widget_focus_tree_unfocusable_handle(Efl_Ui_Widget *obj);
+
+/**
+ * @brief Get focus list direction
+ *
+ * @param[in] obj The object.
+ * @param[in] base Base object
+ * @param[in] items Item list
+ * @param[in] list_data_get Data get function
+ * @param[in] degree Degree
+ * @param[out] direction Direction
+ * @param[out] direction_item Direction item
+ * @param[out] weight Weight
+ *
+ * @return @c true on success, @c false otherwise
+ *
+ * @ingroup Elm_Widget_Group
+ */
+EAPI Eina_Bool elm_widget_focus_list_direction_get(const Efl_Ui_Widget *obj, const Efl_Canvas_Object *base, const Eina_List *items, void *list_data_get, double degree, Efl_Canvas_Object **direction, Elm_Widget_Item **direction_item, double *weight);
+
+/**
+ * @brief Get next item in focus list
+ *
+ * @param[in] obj The object.
+ * @param[in] items Item list
+ * @param[in] list_data_get Function type
+ * @param[in] dir Focus direction
+ * @param[out] next Next object
+ * @param[out] next_item Next item
+ *
+ * @return @c true on success, @c false otherwise
+ *
+ * @ingroup Elm_Widget_Group
+ */
+EAPI Eina_Bool elm_widget_focus_list_next_get(const Efl_Ui_Widget *obj, const Eina_List *items, void *list_data_get, Efl_Ui_Focus_Direction dir, Efl_Canvas_Object **next, Elm_Widget_Item **next_item);
+
+
+
 /**
  * @brief Register focus with the given configuration.
  *
@@ -330,5 +518,6 @@ EAPI Eina_Rect elm_widget_focus_highlight_geometry_get(const Efl_Ui_Widget *obj)
  * @ingroup Elm_Widget_Group
  */
 EAPI Eina_Bool elm_widget_focus_state_apply(Efl_Ui_Widget *obj, Efl_Ui_Widget_Focus_State current_state, Efl_Ui_Widget_Focus_State *configured_state, Efl_Ui_Widget *redirect);
+//
 
 #endif
index 4525f8b..238c670 100644 (file)
@@ -6951,10 +6951,10 @@ _efl_ui_win_win_type_set(Eo *obj, Efl_Ui_Win_Data *sd, Efl_Ui_Win_Type type)
      {
 // TIZEN_ONLY(20160720): Allowed changing type after initializing
 #ifdef HAVE_ELEMENTARY_WL2
-        if (sd->type != ELM_WIN_FAKE) sd->type = type;
+        if (sd->type != EFL_UI_WIN_TYPE_FAKE) sd->type = type;
         _elm_win_wlwin_type_update(sd);
 //TIZEN_ONLY(20161208): supported floating window
-        if (type != ELM_WIN_BASIC)
+        if (type != EFL_UI_WIN_TYPE_BASIC)
           edje_object_signal_emit(sd->legacy.edje, "elm,state,floating,on", "elm");
         else
           edje_object_signal_emit(sd->legacy.edje, "elm,state,floating,off", "elm");
index f4b6e77..b9efa57 100644 (file)
@@ -20,6 +20,10 @@ void _elm_gengrid_pan_elm_pan_pos_set(Eo *obj, Elm_Gengrid_Pan_Data *pd, int x,
 void _elm_gengrid_pan_elm_pan_pos_get(const Eo *obj, Elm_Gengrid_Pan_Data *pd, int *x, int *y);
 
 
+//TIZEN_ONLY(20180118): Modify logics to make scroller stable on tizen
+void _elm_gengrid_pan_elm_pan_pos_adjust(Eo *obj, Elm_Gengrid_Pan_Data *pd, int *x, int *y);
+//
+
 void _elm_gengrid_pan_elm_pan_pos_min_get(const Eo *obj, Elm_Gengrid_Pan_Data *pd, int *x, int *y);
 
 
@@ -45,6 +49,9 @@ _elm_gengrid_pan_class_initializer(Efl_Class *klass)
       EFL_OBJECT_OP_FUNC(elm_obj_pan_content_size_get, _elm_gengrid_pan_elm_pan_content_size_get),
       EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_set, _elm_gengrid_pan_elm_pan_pos_set),
       EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_get, _elm_gengrid_pan_elm_pan_pos_get),
+      //TIZEN_ONLY(20180118): Modify logics to make scroller stable on tizen
+      EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_adjust, _elm_gengrid_pan_elm_pan_pos_adjust),
+      //
       EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_min_get, _elm_gengrid_pan_elm_pan_pos_min_get),
       EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_max_get, _elm_gengrid_pan_elm_pan_pos_max_get),
       ELM_GENGRID_PAN_EXTRA_OPS
index 5e8cab0..ef16855 100644 (file)
@@ -25,6 +25,9 @@ void _elm_genlist_pan_elm_pan_pos_min_get(const Eo *obj, Elm_Genlist_Pan_Data *p
 
 void _elm_genlist_pan_elm_pan_pos_max_get(const Eo *obj, Elm_Genlist_Pan_Data *pd, int *x, int *y);
 
+//TIZEN_ONLY(20180118): Modify logics to make scroller stable on tizen
+void _elm_genlist_pan_elm_pan_pos_adjust(Eo *obj, Elm_Genlist_Pan_Data *pd, int *x, int *y);
+//
 
 static Eina_Bool
 _elm_genlist_pan_class_initializer(Efl_Class *klass)
@@ -47,6 +50,9 @@ _elm_genlist_pan_class_initializer(Efl_Class *klass)
       EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_get, _elm_genlist_pan_elm_pan_pos_get),
       EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_min_get, _elm_genlist_pan_elm_pan_pos_min_get),
       EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_max_get, _elm_genlist_pan_elm_pan_pos_max_get),
+      //TIZEN_ONLY(20180118): Modify logics to make scroller stable on tizen
+      EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_adjust, _elm_genlist_pan_elm_pan_pos_adjust),
+      //
       ELM_GENLIST_PAN_EXTRA_OPS
    );
    opsp = &ops;
index 7214e12..4c988f7 100644 (file)
@@ -21,6 +21,12 @@ void _elm_pan_pos_max_get(const Eo *obj, Elm_Pan_Smart_Data *pd, int *x, int *y)
 
 EOAPI EFL_VOID_FUNC_BODYV_CONST(elm_obj_pan_pos_max_get, EFL_FUNC_CALL(x, y), int *x, int *y);
 
+//TIZEN_ONLY(20180118): Modify logics to make scroller stable on tizen
+void _elm_pan_pos_adjust(Eo *obj, Elm_Pan_Smart_Data *pd, int *x, int *y);
+
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_pan_pos_adjust, EFL_FUNC_CALL(x, y), int *x, int *y);
+//
+
 Efl_Object *_elm_pan_efl_object_constructor(Eo *obj, Elm_Pan_Smart_Data *pd);
 
 
@@ -50,6 +56,9 @@ _elm_pan_class_initializer(Efl_Class *klass)
       EFL_OBJECT_OP_FUNC(elm_obj_pan_content_size_get, _elm_pan_content_size_get),
       EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_min_get, _elm_pan_pos_min_get),
       EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_max_get, _elm_pan_pos_max_get),
+      //TIZEN_ONLY(20180118): Modify logics to make scroller stable on tizen
+      EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_adjust, _elm_pan_pos_adjust),
+      //
       EFL_OBJECT_OP_FUNC(efl_constructor, _elm_pan_efl_object_constructor),
       EFL_OBJECT_OP_FUNC(efl_gfx_entity_visible_set, _elm_pan_efl_gfx_entity_visible_set),
       EFL_OBJECT_OP_FUNC(efl_gfx_entity_position_set, _elm_pan_efl_gfx_entity_position_set),
index a09652a..13668d8 100644 (file)
@@ -76,6 +76,10 @@ EOAPI void elm_obj_pan_pos_min_get(const Eo *obj, int *x, int *y);
  */
 EOAPI void elm_obj_pan_pos_max_get(const Eo *obj, int *x, int *y);
 
+//TIZEN_ONLY(20180118): Modify logics to make scroller stable on tizen
+EOAPI void elm_obj_pan_pos_adjust(Eo *obj, int *x, int *y);
+//
+
 EWAPI extern const Efl_Event_Description _ELM_PAN_EVENT_CHANGED;
 
 /** Called when pan object changed
index 0b4e98f..1bdc296 100644 (file)
@@ -28,3 +28,11 @@ elm_pan_pos_max_get(const Elm_Pan *obj, int *x, int *y)
 {
    elm_obj_pan_pos_max_get(obj, x, y);
 }
+
+//TIZEN_ONLY(20180118): Modify logics to make scroller stable on tizen
+EAPI void
+elm_pan_pos_adjust(Elm_Pan *obj, int *x, int *y)
+{
+   elm_obj_pan_pos_adjust(obj, x, y);
+}
+//
index 857b2e8..43c4e8b 100644 (file)
@@ -69,4 +69,7 @@ EAPI void elm_pan_pos_min_get(const Elm_Pan *obj, int *x, int *y);
  */
 EAPI void elm_pan_pos_max_get(const Elm_Pan *obj, int *x, int *y);
 
+//TIZEN_ONLY(20180118): Modify logics to make scroller stable on tizen
+EAPI void elm_pan_pos_adjust(Elm_Pan *obj, int *x, int *y);
+//
 #endif
index 2e02d64..9a6472a 100644 (file)
@@ -803,7 +803,7 @@ EAPI Eo*              _elm_atspi_bridge_utils_plug_create(Eo *parent, const char
 EAPI Eo*              _elm_atspi_bridge_utils_socket_create(Eo *parent, const char *svcname, int svcnum);
 //
 //TIZEN_ONLY(20161107): enhance elm_atspi_accessible_can_highlight_set to set can_hihglight property to its children
-EAPI Eina_Bool        _elm_widget_highlightable(Evas_Object *widget);
+EAPI Eina_Bool        _elm_widget_highlightable(const Evas_Object *widget);
 EAPI Eina_Bool        _elm_widget_item_highlightable(Elm_Object_Item *item);
 //
 EAPI Eina_Error       elm_widget_element_update(Evas_Object *obj, Evas_Object *component, const char *name);
index 80bcd33..3b05efb 100644 (file)
@@ -164,9 +164,9 @@ Efl_Object *_evas_box_efl_object_constructor(Eo *obj, Evas_Object_Box_Data *pd);
 
 void _evas_box_efl_gfx_entity_size_set(Eo *obj, Evas_Object_Box_Data *pd, Eina_Size2D size);
 
-
-void _evas_box_efl_gfx_entity_position_set(Eo *obj, Evas_Object_Box_Data *pd, Eina_Position2D pos);
-
+//TIZEN_ONLY (20181013): Revert "evas: fix child position when the container is moved"
+//void _evas_box_efl_gfx_entity_position_set(Eo *obj, Evas_Object_Box_Data *pd, Eina_Position2D pos);
+//
 
 void _evas_box_efl_canvas_group_group_calculate(Eo *obj, Evas_Object_Box_Data *pd);
 
@@ -224,7 +224,9 @@ _evas_box_class_initializer(Efl_Class *klass)
       EFL_OBJECT_OP_FUNC(evas_obj_box_count, _evas_box_count),
       EFL_OBJECT_OP_FUNC(efl_constructor, _evas_box_efl_object_constructor),
       EFL_OBJECT_OP_FUNC(efl_gfx_entity_size_set, _evas_box_efl_gfx_entity_size_set),
-      EFL_OBJECT_OP_FUNC(efl_gfx_entity_position_set, _evas_box_efl_gfx_entity_position_set),
+      //TIZEN_ONLY (20181013): Revert "evas: fix child position when the container is moved"
+      //EFL_OBJECT_OP_FUNC(efl_gfx_entity_position_set, _evas_box_efl_gfx_entity_position_set),
+      //
       EFL_OBJECT_OP_FUNC(efl_canvas_group_calculate, _evas_box_efl_canvas_group_group_calculate),
       EVAS_BOX_EXTRA_OPS
    );
index f7ad85a..60b8b33 100644 (file)
@@ -440,6 +440,19 @@ _evas_box_efl_gfx_entity_size_set(Eo *o, Evas_Object_Box_Data *_pd EINA_UNUSED,
    evas_object_smart_changed(o);
 }
 
+//TIZEN_ONLY (20181013): Revert "evas: fix child position when the container is moved"
+/*
+EOLIAN static void
+_evas_box_efl_gfx_entity_position_set(Eo *o, Evas_Object_Box_Data *_pd EINA_UNUSED, Eina_Position2D pos)
+{
+   if (_evas_object_intercept_call(o, EVAS_OBJECT_INTERCEPT_CB_MOVE , 0, pos.x, pos.y))
+     return;
+
+   efl_gfx_entity_position_set(efl_super(o, MY_CLASS), pos);
+   evas_object_smart_changed(o);
+}
+*/
+
 EOLIAN static void
 _evas_box_efl_canvas_group_group_calculate(Eo *o, Evas_Object_Box_Data *priv)
 {
index 1d9a1e7..41f4617 100644 (file)
@@ -944,6 +944,19 @@ _evas_table_efl_gfx_entity_size_set(Eo *obj, Evas_Table_Data *_pd EINA_UNUSED, E
    evas_object_smart_changed(obj);
 }
 
+//TIZEN_ONLY (20181013): Revert "evas: fix child position when the container is moved"
+/*
+EOLIAN static void
+_evas_table_efl_gfx_entity_position_set(Eo *obj, Evas_Table_Data *_pd EINA_UNUSED, Eina_Position2D pos)
+{
+   if (_evas_object_intercept_call(obj, EVAS_OBJECT_INTERCEPT_CB_MOVE, 0, pos.x, pos.y))
+     return;
+
+   efl_gfx_entity_position_set(efl_super(obj, MY_CLASS), pos);
+   evas_object_smart_changed(obj);
+}
+*/
+
 EOLIAN static void
 _evas_table_efl_canvas_group_group_calculate(Eo *o, Evas_Table_Data *priv)
 {
index 0369d7c..3625ad2 100644 (file)
@@ -73,7 +73,9 @@ Efl_Object *_evas_table_efl_object_constructor(Eo *obj, Evas_Table_Data *pd);
 void _evas_table_efl_gfx_entity_size_set(Eo *obj, Evas_Table_Data *pd, Eina_Size2D size);
 
 
-void _evas_table_efl_gfx_entity_position_set(Eo *obj, Evas_Table_Data *pd, Eina_Position2D pos);
+//TIZEN_ONLY (20181013): Revert "evas: fix child position when the container is moved"
+//void _evas_table_efl_gfx_entity_position_set(Eo *obj, Evas_Table_Data *pd, Eina_Position2D pos);
+//
 
 
 void _evas_table_efl_canvas_group_group_calculate(Eo *obj, Evas_Table_Data *pd);
@@ -116,7 +118,9 @@ _evas_table_class_initializer(Efl_Class *klass)
       EFL_OBJECT_OP_FUNC(evas_obj_table_count, _evas_table_count),
       EFL_OBJECT_OP_FUNC(efl_constructor, _evas_table_efl_object_constructor),
       EFL_OBJECT_OP_FUNC(efl_gfx_entity_size_set, _evas_table_efl_gfx_entity_size_set),
-      EFL_OBJECT_OP_FUNC(efl_gfx_entity_position_set, _evas_table_efl_gfx_entity_position_set),
+      //TIZEN_ONLY (20181013): Revert "evas: fix child position when the container is moved"
+      //EFL_OBJECT_OP_FUNC(efl_gfx_entity_position_set, _evas_table_efl_gfx_entity_position_set),
+      //
       EFL_OBJECT_OP_FUNC(efl_canvas_group_calculate, _evas_table_efl_canvas_group_group_calculate),
       EFL_OBJECT_OP_FUNC(efl_ui_mirrored_set, _evas_table_efl_ui_i18n_mirrored_set),
       EFL_OBJECT_OP_FUNC(efl_ui_mirrored_get, _evas_table_efl_ui_i18n_mirrored_get),