summaryrefslogtreecommitdiff
path: root/src/tests (follow)
AgeCommit message (Collapse)Author
2017-11-01evas: Move evas_canvas.eo to legacy-onlyJean-Philippe Andre
This isn't meant to be installed. The canvas API in EO is based around the interfaces Efl.Canvas and the widget Efl.Ui.Win. Anything else is not EO (eg: ecore_evas, evas, ...) Note: evas_canvas3d is the last remaining thing that is installed along EO files, but those are all beta APIs.
2017-11-01evas: Add seat argument to 'pointer_inside' (EO)Jean-Philippe Andre
This merges pointer_inside and pointer_inside_by_device. Affects only EO.
2017-10-25eolian: make inherits_get return a list of classes, not stringsDaniel Kolesa
Most of the time you need to retrieve the class from the string anyway, so remove this relic of old Eolian and gain some small performance benefits and extra convenience. Subtly breaks API but everything should be updated.
2017-10-19elm: rename Elm_Interface_Atspi_Accessible interfaceLukasz Stanislawski
Subscribers: cedric, jpeg Differential Revision: https://phab.enlightenment.org/D5341
2017-10-18eo: Add beta API for auto_unref after a callJean-Philippe Andre
Before screaming in horror (C++...) here's why we may need this: Efl.Part.part API returns an object that is by definition valid for a single function call only. Enforcing this in practice is actually quite hard as all implementation functions must manually take care of the life-cycle. This is a lot of code in many places and a lot of opportunities to forget to properly handle that life-cycle. Also, this means any invalid function call on a part will leak an object. This API absolutely must remain either "internal" or "beta" and definitely not become abused by applications. On top of that such an API can cause great trouble for bindings like C++. As a consequence, only specially crafted APIs like efl_part() should return an object marked as auto_unref. Alternatively this API could be defined in Eo.h or some other Eo_Internal.h. I placed it in efl_object.eo because it's much more convenient :) (read: I'm lazy) **** Performance notes: Tested with clang & gcc (with -O2), I had a look at the output of perf top, in particular the asm view. I used eo_bench in a loop. My conclusions are: - EINA_LIKELY/UNLIKELY actually works. The jump statement varies according to the expectation. I highly doubt all those ugly goto in eo.c / Eo.h are even useful. - The impact of auto_unref on a call_resolve is so small it doesn't even appear in the trace. It is significant inside call_end, though (obviously, that function is just a few lines long). That function accounts for ~1% to ~4% of all CPU time. The impact of auto_unref in call_end is ~4% of the function time. This means ~0.16% of all CPU time (worst measured case). _efl_object_op_api_id_get simply doesn't show up because of caching, so the extra check there is negligible. PS: I also tested EINA_LIKELY/UNLIKELY by compiling with -O2 and looking at the output with objdump. The flag is well respected, and the jump instructions are what you would expect (no jump for LIKELY and jump for UNLIKELY). Conclusion: The goto's in eo.c only make the code harder to read...
2017-10-13eolian: fix setter generation for @auto functionsDaniel Kolesa
Because of a typo in generator source (and overlooked error in tests) we were previously generating incorrect code for setters with the @auto qualifier. This was brought up in D5306 and is now fixed.
2017-10-13eina: this was actually a used variable.Cedric Bail
2017-10-13efl: unused variable removed, removing local variable assignment which has ↵Prince Kumar Dubey
no use at all. Reviewers: raster, cedric Reviewed By: cedric Subscribers: rajeshps, jpeg Differential Revision: https://phab.enlightenment.org/D5304 Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2017-10-13eolian gen: generate documentation for first object param if presentDaniel Kolesa
This prevents doxygen from emitting warnings. Fixes T6186.
2017-10-13tests: eina strbuf - fix compilationAmitesh Singh
refer patch 2cf24eb30428fd56
2017-10-13eina: strbuf - Add strftime related functionsAmitesh Singh
eina_strbuf_append_strftime() eina_strbuf_insert_strftime() eina_strbuf_prepend_strftime() - macro We need these functions for implementing generic format function interface especially for calander. Ref T6204
2017-10-13edje: Fix make checkJean-Philippe Andre
Oops. The API was tested. See 19dff855194f2c4b411fc5d27b33d212ff26bcb0
2017-10-10elm: move the focus direction definition to generalMarcel Hollerbach
and remove the old definition
2017-10-09efl_ui_focus_manager_calc: focus a child if a logical is focusedMarcel Hollerbach
If you call focus_set(m, o) where o is a logical child, then the focus will go to any none logical child of o, or if there is nothing in the children of o, then the focus will remain on the now focused element.
2017-09-29Revert "elm focus manager - dont leak child lists when updating focus order"Marcel Hollerbach
This reverts commit bd6dcbb044ffea543f27cc69c421317bdea4a14a. This was not fixing the issue, just ducktaping over a bug in eolian, the bug is now probebly fixed in eo / eolian.
2017-09-29eolian: add tests for the new owning functionsMarcel Hollerbach
2017-09-29eo: introduce function definitions with fallbackMarcel Hollerbach
there can be cases where the call to such a function is never going to be directed to the actual implementation. In those cases the FallackCall will be called.
2017-09-28eio: migrate efl.io.manager.ls to use Eina_Future.Cedric Bail
2017-09-28eolian: fix tests after extra checksDaniel Kolesa
2017-09-28eolian-cxx: Add optional parameter to lambda for unnamed proxy instantiationFelipe Magno de Almeida
2017-09-27eio: convert Efl.Io.Manager.stat() to return Eina_Future.Cedric BAIL
2017-09-26input: Move pointer props to CanvasJean-Philippe Andre
efl_input_pointer_position is defined by two classes... bad! Fixes T6066
2017-09-26elm: rename Elm.Interface.Atspi.Text => Efl.Access.TextLukasz Stanislawski
Reviewers: cedric, jpeg Differential Revision: https://phab.enlightenment.org/D5167
2017-09-25eolian-cxx: Fix compilation errors with new any_value_ptr and mstring typesFelipe Magno de Almeida
2017-09-22eolian: add tests for builtin queriesDaniel Kolesa
2017-09-22eolian: remove static_array and terminated_arrayDaniel Kolesa
These types are of questionable value and the API was not entirely thought out - remove for now, and if a legitimate use is found later, they may be readded (with a better API), but typically it seems best to redesign the bad APIs around safe containers...
2017-09-22eolian: add mstringDaniel Kolesa
This is a new type representing a mutable string (no const). Regular strings cannot be made mutable with @owned because they might be hidden behind typedefs.
2017-09-22EFL For WIN32: Replace HAVE_EVIL define with _WIN32Vincent 'vtorri' Torri
2017-09-22ecore: Avoid using newer check.h functions.Lauro Moura
Summary: The ptr_null/nonnull were added in the 0.11 version of libcheck. The required version in configure.ac is 0.9.10 (some distros still use this old one). Reviewers: felipealmeida, stefan_schmidt Subscribers: cedric, jpeg Differential Revision: https://phab.enlightenment.org/D5220
2017-09-19eldbus: Fix test case (make check)Jean-Philippe Andre
2017-09-19elm: rename Elm.Interface.Atspi_Action => Efl.Access.ActionLukasz Stanislawski
Reviewers: cedric, jpeg Differential Revision: https://phab.enlightenment.org/D5166
2017-09-19elm: rename Elm.Interface.Atspi.Selection => Efl.Access.SelectionLukasz Stanislawski
Reviewers: jpeg, cedric Differential Revision: https://phab.enlightenment.org/D5165
2017-09-19efl: Use Eina.Position2D for input eventsJean-Philippe Andre
2017-09-19efl: Use Eina.Size2D in Gfx.ViewJean-Philippe Andre
2017-09-19evas: Use Eina.Slice on the stack (gfx.buffer)Jean-Philippe Andre
2017-09-18eo-cxx: Fix test errors with new Eolian @own frameworkFelipe Magno de Almeida
2017-09-18edje: Fix make check :(Jean-Philippe Andre
No idea how I missed that one... (except that make check is now broken for C++, again)
2017-09-18efl: Use Eina.Size2D for Efl.Gfx.sizeJean-Philippe Andre
Big patch as a lot of things call or reimplement size_set. Hopefully I got it right... fingers crossed.
2017-09-18efl: Use Eina.Position2D for Efl.Gfx.positionJean-Philippe Andre
Note: This is a little bit more cumbersome in some places but in most it's more convenient than (x,y).
2017-09-18efl: Introduce Eina.Rect and switch EO APIs to itJean-Philippe Andre
It's a complex struct but defined in EO as a simple struct. ABI-wise it's equivalent to Eina_Rectangle. Some macros that use Eina_Rectangle also work on Eina_Rect out of the box, most of the code dealing with x,y,w,h will require no modifications either. But Eina_Rect provides direct access to a size or position 2d component, as well as the usual x,y,w,h. The field "rect" is provided as a convenience for code dealing with both Eina_Rectangle and Eina_Rect. We may or may not require it. Note: Size2D could use unsigned values but I have spotted a few places in the code that actually use -1 to indicate invalid size (as opposed to 0x0). @feature
2017-09-18eina file: Ensure populate is safe to callJean-Philippe Andre
This makes sure that the call to madvise is safe. On Linux it's not too much of an issue as checks are made inside madvise, and the worst that can happen is an error is returned (EINVAL). Not great. But if MAP_POPULATE is not present, as is the case on *BSD, then the internal function _eina_file_map_populate() is used for the populate rule. In that case actual data is read and we should make sure not to trigger a segfault or bus error. Also, this makes sure that in case of HugeTLB we actually populate all pages, rather than one page out of 8 (we were jumping by 16Mb instead of 2Mb). Note: Can we get the size of a HugeTLB at runtime? We're assuming 2Mb which might very well not be the case! See: https://wiki.debian.org/Hugepages Tested by disabling MAP_POPULATE and observing crashes :) @fix
2017-09-15eolian: correctness fixes in tests and eo filesDaniel Kolesa
2017-09-15eolian cxx/js: fix test eo file ownershipDaniel Kolesa
2017-09-14eolian-cxx: Fix instantiate constructor with lambda after disambiguation patchFelipe Magno de Almeida
2017-09-14eina: move the test to the new future and use the new Eina_Value array ↵Cedric BAIL
iterator macro.
2017-09-14eio: move efl.io.manager.xattr.get to use the new Eina_Future.Cedric Bail
2017-09-14efl: silent warnings shown on solaris due to missing header files.Cedric BAIL
2017-09-13eina: add tests for eina_value_to_binbuf.Cedric Bail
2017-09-13eio: migrate efl.io.manager.open to use Eina_Future.Cedric Bail
2017-09-13eolian: make test data validateDaniel Kolesa