On 06/01/16 15:52, Stefan Schmidt wrote:
> Hello.
>
> On 05/01/16 17:05, Tom Hacohen wrote:
>> Hey,
>>
>> Here again, the new EFL + Elementary ABI reports.
>>
>> As usual:
>> https://devs.enlightenment.org/~tasn/abi/
>
> My review for EFL. Happy about every other review or comment here.
>
> Ignoring the unstable EO APIs as well as ector which is marked as
> unstable we have still a big number of new APIs:
>
> Ecore_Evas.h
> ecore_evas_cocoa_window_get ( Ecore_Evas const* ee )
> ecore_evas_wayland_window_get2 ( Ecore_Evas const* ee )
>
> Ecore_Wl2.h
> ecore_wl2_display_compositor_version_get ( Ecore_Wl2_Display* disp )
> ecore_wl2_display_connect ( char const* name )
> ecore_wl2_display_create ( char const* name )
> ecore_wl2_display_destroy ( Ecore_Wl2_Display* display )
> ecore_wl2_display_disconnect ( Ecore_Wl2_Display* display )
> ecore_wl2_display_get ( Ecore_Wl2_Display* display )
> ecore_wl2_display_globals_get ( Ecore_Wl2_Display* display )
> ecore_wl2_display_registry_get ( Ecore_Wl2_Display* display )
> ecore_wl2_display_screen_size_get ( Ecore_Wl2_Display* display, int* w,
> int* h )
> ecore_wl2_display_shm_get ( Ecore_Wl2_Display* display )
> ecore_wl2_display_terminate ( Ecore_Wl2_Display* display )
> ecore_wl2_display_window_find ( Ecore_Wl2_Display* display, unsigned int
> id )
> ecore_wl2_dnd_drag_end ( Ecore_Wl2_Input* input )
> ecore_wl2_dnd_drag_get ( Ecore_Wl2_Input* input, char const* type )
> ecore_wl2_dnd_drag_start ( Ecore_Wl2_Input* input, Ecore_Wl2_Window*
> window, Ecore_Wl2_Window* drag_window )
> ecore_wl2_dnd_drag_types_set ( Ecore_Wl2_Input* input, char const** types )
> ecore_wl2_dnd_selection_clear ( Ecore_Wl2_Input* input )
> ecore_wl2_dnd_selection_get ( Ecore_Wl2_Input* input, char const* type )
> ecore_wl2_dnd_selection_owner_has ( Ecore_Wl2_Input* input )
> ecore_wl2_dnd_selection_set ( Ecore_Wl2_Input* input, char const** types )
> ECORE_WL2_EVENT_DATA_SOURCE_CANCELLED [data]
> ECORE_WL2_EVENT_DATA_SOURCE_SEND [data]
> ECORE_WL2_EVENT_DATA_SOURCE_TARGET [data]
> ECORE_WL2_EVENT_DND_DROP [data]
> ECORE_WL2_EVENT_DND_END [data]
> ECORE_WL2_EVENT_DND_ENTER [data]
> ECORE_WL2_EVENT_DND_LEAVE [data]
> ECORE_WL2_EVENT_DND_MOTION [data]
> ECORE_WL2_EVENT_FOCUS_IN [data]
> ECORE_WL2_EVENT_FOCUS_OUT [data]
> ECORE_WL2_EVENT_GLOBAL_ADDED [data]
> ECORE_WL2_EVENT_GLOBAL_REMOVED [data]
> ECORE_WL2_EVENT_SELECTION_DATA_READY [data]
> ECORE_WL2_EVENT_SYNC_DONE [data]
> ECORE_WL2_EVENT_WINDOW_CONFIGURE [data]
> ecore_wl2_init ( )
> ecore_wl2_input_seat_get ( Ecore_Wl2_Input* input )
> ecore_wl2_input_ungrab ( Ecore_Wl2_Input* input )
> ecore_wl2_keyboard_get ( Ecore_Wl2_Seat* seat )
> ecore_wl2_keyboard_repeat_info_set ( Ecore_Wl2_Keyboard* kbd, double
> rate, double delay )
> ecore_wl2_keyboard_resource_create ( Ecore_Wl2_Keyboard* kbd, struct
> wl_client* client, struct wl_keyboard_interface const* implementation,
> int version, uint32_t id )
> ecore_wl2_output_dpi_get ( Ecore_Wl2_Output* output )
> ecore_wl2_pointer_get ( Ecore_Wl2_Seat* seat )
> ecore_wl2_pointer_resource_create ( Ecore_Wl2_Pointer* ptr, struct
> wl_client* client, struct wl_pointer_interface const* implementation,
> int version, uint32_t id )
> ecore_wl2_seat_capabilities_send ( Ecore_Wl2_Seat* seat, enum
> wl_seat_capability caps )
> ecore_wl2_seat_create ( Ecore_Wl2_Display* display, char const* name,
> struct wl_seat_interface const* implementation, int version,
> Ecore_Wl2_Bind_Cb bind_cb, Ecore_Wl2_Unbind_Cb unbind_cb )
> ecore_wl2_seat_destroy ( Ecore_Wl2_Seat* seat )
> ecore_wl2_seat_pointer_release ( Ecore_Wl2_Seat* seat )
> ecore_wl2_shutdown ( )
> ecore_wl2_subsurface_del ( Ecore_Wl2_Subsurface* subsurface )
> ecore_wl2_subsurface_new ( Ecore_Wl2_Window* window )
> ecore_wl2_subsurface_opaque_region_set ( Ecore_Wl2_Subsurface*
> subsurface, int x, int y, int w, int h )
> ecore_wl2_subsurface_place_above ( Ecore_Wl2_Subsurface* subsurface,
> struct wl_surface* surface )
> ecore_wl2_subsurface_place_below ( Ecore_Wl2_Subsurface* subsurface,
> struct wl_surface* surface )
> ecore_wl2_subsurface_position_get ( Ecore_Wl2_Subsurface* subsurface,
> int* x, int* y )
> ecore_wl2_subsurface_position_set ( Ecore_Wl2_Subsurface* subsurface,
> int x, int y )
> ecore_wl2_subsurface_surface_get ( Ecore_Wl2_Subsurface* subsurface )
> ecore_wl2_subsurface_sync_set ( Ecore_Wl2_Subsurface* subsurface,
> Eina_Bool sync )
> ecore_wl2_window_alpha_get ( Ecore_Wl2_Window* window )
> ecore_wl2_window_alpha_set ( Ecore_Wl2_Window* window, Eina_Bool alpha )
> ecore_wl2_window_class_set ( Ecore_Wl2_Window* window, char const* clas )
> ecore_wl2_window_cursor_from_name_set ( Ecore_Wl2_Window* window, char
> const* cursor )
> ecore_wl2_window_display_get ( Ecore_Wl2_Window const* window )
> ecore_wl2_window_free ( Ecore_Wl2_Window* window )
> ecore_wl2_window_fullscreen_get ( Ecore_Wl2_Window* window )
> ecore_wl2_window_fullscreen_set ( Ecore_Wl2_Window* window, Eina_Bool
> fullscreen )
> ecore_wl2_window_geometry_get ( Ecore_Wl2_Window* window, int* x, int*
> y, int* w, int* h )
> ecore_wl2_window_geometry_set ( Ecore_Wl2_Window* window, int x, int y,
> int w, int h )
> ecore_wl2_window_hide ( Ecore_Wl2_Window* window )
> ecore_wl2_window_iconified_get ( Ecore_Wl2_Window* window )
> ecore_wl2_window_iconified_set ( Ecore_Wl2_Window* window, Eina_Bool
> iconified )
> ecore_wl2_window_id_get ( Ecore_Wl2_Window* window )
> ecore_wl2_window_input_get ( Ecore_Wl2_Window* window )
> ecore_wl2_window_input_region_set ( Ecore_Wl2_Window* window, int x, int
> y, int w, int h )
> ecore_wl2_window_maximized_get ( Ecore_Wl2_Window* window )
> ecore_wl2_window_maximized_set ( Ecore_Wl2_Window* window, Eina_Bool
> maximized )
> ecore_wl2_window_move ( Ecore_Wl2_Window* window, int x, int y )
> ecore_wl2_window_new ( Ecore_Wl2_Display* display, Ecore_Wl2_Window*
> parent, int x, int y, int w, int h )
> ecore_wl2_window_opaque_region_set ( Ecore_Wl2_Window* window, int x,
> int y, int w, int h )
> ecore_wl2_window_pointer_set ( Ecore_Wl2_Window* window, struct
> wl_surface* surface, int hot_x, int hot_y )
> ecore_wl2_window_pointer_xy_get ( Ecore_Wl2_Window* window, int* x, int* y )
> ecore_wl2_window_raise ( Ecore_Wl2_Window* window )
> ecore_wl2_window_resize ( Ecore_Wl2_Window* window, int w, int h, int
> location )
> ecore_wl2_window_rotation_get ( Ecore_Wl2_Window* window )
> ecore_wl2_window_rotation_set ( Ecore_Wl2_Window* window, int rotation )
> ecore_wl2_window_show ( Ecore_Wl2_Window* window )
> ecore_wl2_window_surface_get ( Ecore_Wl2_Window* window )
> ecore_wl2_window_surface_id_get ( Ecore_Wl2_Window* window )
> ecore_wl2_window_title_set ( Ecore_Wl2_Window* window, char const* title )
> ecore_wl2_window_transparent_set ( Ecore_Wl2_Window* window, Eina_Bool
> transparent )
> ecore_wl2_window_type_set ( Ecore_Wl2_Window* window,
> Ecore_Wl2_Window_Type type )
>
> Edje_Common.h
> edje_mmap_size_class_iterator_new ( Eina_File* f )
> edje_mmap_text_class_iterator_new ( Eina_File* f )
> edje_size_class_active_iterator_new ( )
> edje_size_class_del ( char const* size_class )
> edje_size_class_get ( char const* size_class, Evas_Coord* minw,
> Evas_Coord* minh, Evas_Coord* maxw, Evas_Coord* maxh )
> edje_size_class_list ( )
> edje_size_class_set ( char const* size_class, Evas_Coord minw,
> Evas_Coord minh, Evas_Coord maxw, Evas_Coord maxh )
> edje_text_class_active_iterator_new ( )
>
> Edje_Legacy.h
> edje_object_size_class_del ( Evas_Object* obj, char const* size_class )
> edje_object_text_class_del ( Evas_Object* obj, char const* text_class )
>
> Efl_Model_Common.h
> efl_model_error_notify ( Efl_Model_Base* model )
> efl_model_list_slice ( Eina_List* list, unsigned int start, unsigned int
> count )
> efl_model_load_set ( Efl_Model_Base* model, Efl_Model_Load* load, enum
> Efl_Model_Load_Status status )
> efl_model_property_changed_notify ( Efl_Model_Base* model, char const*
> property )
> efl_model_property_invalidated_notify ( Efl_Model_Base* model, char
> const* property )
> efl_model_value_struct_description_free ( Eina_Value_Struct_Desc* desc )
> efl_model_value_struct_description_new ( unsigned int member_count,
> Efl_Model_Value_Struct_Member_Setup_Cb setup_cb, void* data )
>
> eina_bezier.h
> eina_bezier_bounds_get ( Eina_Bezier const* b, double* x, double* y,
> double* w, double* h )
> eina_bezier_on_interval ( Eina_Bezier* b, double t0, double t1,
> Eina_Bezier* result )
>
> eina_inline_value.x
> eina_value_optional_empty_is ( Eina_Value const* value, Eina_Bool*
> is_empty )
> eina_value_optional_empty_new ( )
> eina_value_optional_type_get ( Eina_Value* value )
>
> eina_matrix.h
> eina_matrix2_array_set ( Eina_Matrix2* m, double const* v )
> eina_matrix2_copy ( Eina_Matrix2* dst, Eina_Matrix2 const* src )
> eina_matrix2_identity ( Eina_Matrix2* m )
> eina_matrix2_inverse ( Eina_Matrix2* out, Eina_Matrix2 const* mat )
> eina_matrix2_multiply ( Eina_Matrix2* out, Eina_Matrix2 const* mat_a,
> Eina_Matrix2 const* mat_b )
> eina_matrix2_multiply_copy ( Eina_Matrix2* out, Eina_Matrix2 const*
> mat_a, Eina_Matrix2 const* mat_b )
> eina_matrix2_type_get ( Eina_Matrix2 const* m )
> eina_matrix2_values_get ( Eina_Matrix2 const* m, double* xx, double* xy,
> double* yx, double* yy )
> eina_matrix2_values_set ( Eina_Matrix2* m, double xx, double xy, double
> yx, double yy )
> eina_matrix3_array_set ( Eina_Matrix3* m, double const* v )
> eina_matrix3_copy ( Eina_Matrix3* dst, Eina_Matrix3 const* src )
> eina_matrix3_multiply ( Eina_Matrix3* out, Eina_Matrix3 const* mat_a,
> Eina_Matrix3 const* mat_b )
> eina_matrix3_multiply_copy ( Eina_Matrix3* out, Eina_Matrix3 const*
> mat_a, Eina_Matrix3 const* mat_b )
> eina_matrix3_position_transform_set ( Eina_Matrix3* out, double const
> p_x, double const p_y )
> eina_matrix3_scale_transform_set ( Eina_Matrix3* out, double s_x, double
> s_y )
> eina_matrix4_array_set ( Eina_Matrix4* m, double const* v )
> eina_matrix4_copy ( Eina_Matrix4* dst, Eina_Matrix4 const* src )
> eina_matrix4_multiply_copy ( Eina_Matrix4* out, Eina_Matrix4 const*
> mat_a, Eina_Matrix4 const* mat_b )
> eina_matrix4_ortho_set ( Eina_Matrix4* m, double left, double right,
> double bottom, double top, double dnear, double dfar )
> eina_normal3_matrix_get ( Eina_Matrix3* out, Eina_Matrix4 const* m )
>
> eina_quaternion.h
> eina_quaternion_angle_plains ( Eina_Quaternion* a, Eina_Quaternion* b )
> eina_quaternion_array_set ( Eina_Quaternion* dst, double const* v )
> eina_quaternion_copy ( Eina_Quaternion* dst, Eina_Quaternion const* src )
> eina_quaternion_distance_get ( Eina_Quaternion const* a, Eina_Quaternion
> const* b )
> eina_quaternion_distance_square_get ( Eina_Quaternion const* a,
> Eina_Quaternion const* b )
> eina_quaternion_homogeneous_regulate ( Eina_Quaternion* out,
> Eina_Quaternion const* v )
> eina_quaternion_inverse ( Eina_Quaternion* out, Eina_Quaternion const* q )
> eina_quaternion_length_get ( Eina_Quaternion const* v )
> eina_quaternion_length_square_get ( Eina_Quaternion const* v )
> eina_quaternion_subtract ( Eina_Quaternion* out, Eina_Quaternion const*
> a, Eina_Quaternion const* b )
> eina_quaternion_transform ( Eina_Quaternion* out, Eina_Quaternion const*
> v, Eina_Matrix4 const* m )
>
> eina_str.h
> eina_str_base64_decode ( char const* src, int* decoded_str_len )
> eina_str_base64_encode ( unsigned char const* src, unsigned int len )
> eina_str_base64url_decode ( char const* src, int* decoded_str_len )
> eina_str_base64url_encode ( unsigned char const* src, unsigned int len )
> eina_strftime ( char const* format, struct tm const* tm )
>
> eina_strbuf.h
> eina_strbuf_substr_get ( Eina_Strbuf* buf, size_t pos, size_t len )
> eina_strbuf_tolower ( Eina_Strbuf* buf )
>
> eina_tmpstr.h
> eina_tmpstr_manage_new ( char* str )
> eina_tmpstr_manage_new_length ( char* str, size_t length )
>
> eina_unicode.h
> eina_unicode_unicode_to_utf8_range ( Eina_Unicode const* uni, int ulen,
> int* _len )
>
> eina_value.h
> eina_value_optional_new ( Eina_Value_Type const* subtype, void const*
> value )
> eina_value_optional_pget ( Eina_Value* value, void* subvalue )
> eina_value_optional_pset ( Eina_Value* value, Eina_Value_Type const*
> subtype, void const* subvalue )
> eina_value_optional_reset ( Eina_Value* value )
> EINA_VALUE_TYPE_OPTIONAL [data]
>
> eina_vector.h
> eina_vector2_add ( Eina_Vector2* out, Eina_Vector2 const* a,
> Eina_Vector2 const* b )
> eina_vector2_array_set ( Eina_Vector2* dst, double const* v )
> eina_vector2_copy ( Eina_Vector2* dst, Eina_Vector2 const* src )
> eina_vector2_distance_get ( Eina_Vector2 const* a, Eina_Vector2 const* b )
> eina_vector2_distance_square_get ( Eina_Vector2 const* a, Eina_Vector2
> const* b )
> eina_vector2_dot_product ( Eina_Vector2 const* a, Eina_Vector2 const* b )
> eina_vector2_homogeneous_direction_transform ( Eina_Vector2* out,
> Eina_Matrix3 const* m, Eina_Vector2 const* v )
> eina_vector2_homogeneous_position_transform ( Eina_Vector2* out,
> Eina_Matrix3 const* m, Eina_Vector2 const* v )
> eina_vector2_length_get ( Eina_Vector2 const* v )
> eina_vector2_length_square_get ( Eina_Vector2 const* v )
> eina_vector2_negate ( Eina_Vector2* out, Eina_Vector2 const* v )
> eina_vector2_normalize ( Eina_Vector2* out, Eina_Vector2 const* v )
> eina_vector2_scale ( Eina_Vector2* out, Eina_Vector2 const* v, double
> scale )
> eina_vector2_set ( Eina_Vector2* dst, double x, double y )
> eina_vector2_subtract ( Eina_Vector2* out, Eina_Vector2 const* a,
> Eina_Vector2 const* b )
> eina_vector2_transform ( Eina_Vector2* out, Eina_Matrix2 const* m,
> Eina_Vector2 const* v )
>
> eldbus_freedesktop.h
> eldbus_proxy_property_value_set ( Eldbus_Proxy* proxy, char const* name,
> char const* sig, Eina_Value const* value, void(*cb)(void*,
> Eldbus_Message const*, Eldbus_Pending*), void const* data )
>
> eldbus_introspection.h
> eldbus_introspection_argument_find ( Eina_List* arguments, char const*
> name )
> eldbus_introspection_interface_find ( Eina_List* interfaces, char const*
> name )
> eldbus_introspection_node_free ( Eldbus_Introspection_Node* node )
> eldbus_introspection_parse ( char const* xml )
> eldbus_introspection_property_find ( Eina_List* properties, char const*
> name )
>
> None of these APIs look wrong to me. Its still overhelming to have so
> many new ones in this release.
>
> If you have a problem with one of them please raise your voice.

Look OK to me, but indeed, the number feels very high, even without the 
wl2 APIs (which aren't stable yet, are they?).

--
Tom.


------------------------------------------------------------------------------
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to