Commit Graph

1428 Commits

Author SHA1 Message Date
Cedric Bail a7bb1662e2 Revert "elementary/layout: attach edje object API with eo compositing"
This reverts commit 8a988717e1.

It seems we can't actually inherit from class more than once and neither eo
nor eolian will complain about it. You will just get random weird behavior.
This patch should come back once we have made an interface of edje.
2016-08-05 11:09:55 -07:00
Carsten Haitzler 84e4cf7145 ecore imf test - remove unused variable 2016-08-05 20:34:42 +09:00
Carsten Haitzler adc5cd422a ecore eina thread queue test - be anal about thread exiting cleanly 2016-08-05 20:20:25 +09:00
Carsten Haitzler 8889daa7c5 ecore con eet test - dont use localhost port 8080
so thats a common local port to use for other things... 8080 - don't
use it, so use 12346 much like 12345 is for the other tests. far less
likely to clash. fix up tests to work better.
2016-08-05 17:09:34 +09:00
Carsten Haitzler 720f17619e ecore eina threadqueue test suite - be correct about volatile+padding
fill in the padding of mesages (10 bytes) with something so valgrinds
can be happy and use vlatiole for msgs count as the msgs num should
have been incremented already before the msg sned is done and main
thread/loop gets the msg
2016-08-05 14:35:41 +09:00
Carsten Haitzler 013c0702f4 ecore_imf - fix make check to doa "load all" check after de-sillifying it
this should make ecore_imf testable with empty env vars also meaning
no env var and the make check test will now ensuree this is set to
exactly test this.
2016-08-05 13:42:11 +09:00
Andy Williams f2a4ff154f Fix further text checks in Elm_Code T4264
An incorrect assumption in how unused memory may be initialised
    @fix
2016-08-03 23:43:23 +01:00
Cedric Bail 914043d567 eina: test safepointer in the correct range for 32bits system.
The generation counter on 32bits system is on 8bits, obviously 1024
is more than that.

T4265
2016-08-02 15:35:15 -07:00
Andy Williams f7396703c5 Fix text check in Elm_Code T4264
An incorrect assumption in how unused memory may be initialised
@fix
2016-08-02 23:23:31 +01:00
Stefan Schmidt b7bc4f8125 tests: eolian_cxx: add define to allow the use of beta APIs like eo
This is needed again now as we put eo back into beta for 1.18.
2016-08-02 22:21:18 +02:00
Stefan Schmidt aad5b8b83e tests: ecore_con: make sure info is initialized
One test does init info before passing it to _url_compl_cb while two others
are not. Also test if inof is NULL in callback here to avoid crashes.

tests/ecore_con/ecore_con_test_ecore_con_url.c:194:4: warning: 'info' may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_event_handler_add(ECORE_CON_EVENT_URL_COMPLETE,
2016-08-02 09:31:10 +02:00
Stefan Schmidt a467bb30ca tests: eio: add Eina.h include for eina_init and shutdown functions.
tests/eio/eio_suite.c:33:4: warning: implicit declaration of function 'eina_init' [-Wimplicit-function-declaration]
     eina_init();
     ^
tests/eio/eio_suite.c:38:4: warning: implicit declaration of function 'eina_shutdown' [-Wimplicit-function-declaration]
    eina_shutdown();
2016-08-02 09:29:58 +02:00
Cedric BAIL dd1d3f0d2d autotools: since it has been broken for some times and nobody noticed, let's remove per directory support. 2016-08-01 13:36:47 -07:00
Daniel Hirt 0d9ddc4514 Canvas text: fix range geometry calculation for RTL
Fixes T3627.

@fix
2016-07-31 10:33:30 +03:00
Stefan Schmidt 9c8eea6ad8 tests: ecore: try to keep constness for Efl_Version
It returns as const so better try to keep this be having the avriable const as
well.
2016-07-29 14:59:43 +02:00
Stefan Schmidt b56bf67f56 tests: eina: comment out unused test to avoid warning
Just to avoid the unused function warning.
2016-07-29 14:55:10 +02:00
Cedric Bail 351c2007f6 eio: add a test for T3237.
I have been trying to reproduce the reported ephoto issue, but couldn't. This
test case reproduce the reported scenario.
2016-07-28 21:03:12 -07:00
Cedric Bail cec3eddb41 eio: all our tests need eina and we aren't testing eina here, so init once and for all. 2016-07-28 21:03:12 -07:00
Jean-Philippe Andre feccbc7d83 tests: Add missing function implementations
In eolian test cases.
Not a problem when EOAPI is defined as weak, but compilation
will fail if the symbols are strong. Eg. on Solaris (it's just
a guess).

Fixes T3889
2016-07-28 20:15:23 +09:00
Stefan Schmidt a17d59c7c3 Revert "access: add API to get access object of given part"
This reverts commit 57d77c9041.

We are in freeze right now and this is a new feature. Considering the access
API is still in beta I might have let this slip by but its does not even build

../../../src/tests/elementary/elm_test_popup.c:27:1: error: conflicting types for ‘elm_object_part_access_object_get’
 START_TEST (elm_object_part_access_object_get)
 ^
In file included from ../../../src/lib/elementary/Elementary.h:240:0,
                 from ../../../src/tests/elementary/elm_test_popup.c:6:
../../../src/lib/elementary/elm_object.h:521:54: note: previous declaration of ‘elm_object_part_access_object_get’ was here
 EAPI Evas_Object *elm_object_part_access_object_get(const Evas_Object *obj, const char *part);
                                                      ^
../../../src/tests/elementary/elm_test_popup.c: In function ‘elm_object_part_access_object_get’:
../../../src/tests/elementary/elm_test_popup.c:39:47: warning: passing argument 1 of ‘elm_object_part_access_object_get’ makes integer from pointer without a cast [-Wint-conversion]
    access = elm_object_part_access_object_get(popup, "access.title");
                                               ^
../../../src/tests/elementary/elm_test_popup.c:27:1: note: expected ‘int’ but argument is of type ‘Evas_Object * {aka struct _Eo_Opaque *}’
 START_TEST (elm_object_part_access_object_get)
 ^
../../../src/tests/elementary/elm_test_popup.c:39:13: error: too many arguments to function ‘elm_object_part_access_object_get’
    access = elm_object_part_access_object_get(popup, "access.title");
             ^
../../../src/tests/elementary/elm_test_popup.c:27:1: note: declared here
 START_TEST (elm_object_part_access_object_get)
 ^
../../../src/tests/elementary/elm_test_popup.c:39:11: error: void value not ignored as it ought to be
    access = elm_object_part_access_object_get(popup, "access.title");
           ^
Makefile:43996: recipe for target 'tests/elementary/tests_elementary_elm_suite-elm_test_popup.o' failed
make[5]: *** [tests/elementary/tests_elementary_elm_suite-elm_test_popup.o] Error 1

If you still want this in make sure it actually can compile the tests you added.
2016-07-25 18:01:37 +02:00
Shinwoo Kim 57d77c9041 access: add API to get access object of given part 2016-07-25 22:05:24 +09:00
Jean-Philippe Andre ec9107dc1f eo: Fix override test case to match new policy
The new policy is a lot more restrictive.
Honestly, I don't like it.
2016-07-21 14:03:10 +09:00
Jean-Philippe Andre 0d3f5c9661 tests: Add ifdef clang to avoid warning on GCC and elsewhere
Avoids warning about unsupported pragma
2016-07-19 17:55:07 +09:00
Jean-Philippe Andre 3029227fa1 eo: Change eo_override to avoid struct passing and GCC construct
This is a (minor) API & ABI break in Eo.h!

I say minor as eo_override shouldn't be used yet (EO is unstable
and this patch includes all the use cases in EFL).

I'm not very happy about the new form of the macro, but it avoids
two things:
- passing in a struct (valid in C, but never used in EFL)
- using a GCC construct to create structs on the fly

It was inspired by the event array define, but I don't think
we need the runtime memcpy here.

See also:
https://gcc.gnu.org/onlinedocs/gcc/Compound-Literals.html
2016-07-19 17:55:07 +09:00
Cedric BAIL 7bb8afe4f9 eo: fix tests after renaming. 2016-07-13 16:17:16 -07:00
Cedric BAIL 649f120326 ecore: add test case for tick begin/end. 2016-07-13 15:32:15 -07:00
Tom Hacohen a5eb66edd4 Eo refcount: Split the refcount to private and public (user).
This commit changes the way refcount is dealt with internally. Before
this commit, there was one refcount shared between Eo internals and
users. Now there is a refcount for eo operations (like for example,
function calls) and one for user refcount (eo_ref).

An example bug that this protects against (which is seemingly rather
common) is:
some_eo_func(obj);

// Inside the implementation of that func:
pd->a = 1; // The object's private data
eo_unref(obj); // To delete the object
eo_unref(obj); // A big one extra unref
pd->a = 2; // Segfault, this data has already been freed

This is a feature, but really just a fix for a class of bugs.

@feature
2016-07-12 11:09:40 +01:00
Daniel Hirt 0c23985626 Canvas text: fix corner case in range geometry calc
The trivial case of [pos,pos] (i.e. range of length 0) didn't work if there is a
format item in 'pos'.
The condition was fixed to not include such items. The reason it was not
apparent for text items is that these have further handling in the rest of the
code and would've been disposed of.

@fix
2016-07-11 16:39:51 +00:00
Youngbok Shin 64e0dc341d Evas textblock: Apply scale factor to <linesize>, <linegap> formats
Summary:
Font size is scaled according to scale factor.
The linesize, linegap formats also have to be scaled properly.
@fix

Test Plan:
Test cases are included.
Run "make check"

Reviewers: woohyun, Jieun, tasn, herdsman

Reviewed By: tasn

Subscribers: raster, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3688
2016-07-11 17:57:40 +09:00
Carsten Haitzler f8fd74f8d2 eo base - add weak object refs as per jpeg needs
so after some discussion with jpeg, weak referenced keys are also a
good idea. these need del track handling to be weak, so i made strong
reffed keys also do del tracking again as it's just nice to do this
and be more robust. also added and improved the test suites for this
key value stuff.

@feature
2016-07-07 18:41:23 +09:00
Cedric BAIL 005375176d evas: fix initialisation and shutdown of eet and eina by mesh loader and saver. 2016-07-06 13:26:15 -07:00
Stefan Schmidt f8ca9b5cc8 tests: ecore_audio: disable stalling audio_obj_pulse test
This test is stalling. Locally as well as on Jenkins. I tried to bisect it
without any luck. Even running it from the 1.17 release it does no longer work
so i guess it is some change coming from a pulse update on my system. I have
version 7.1 here. As we have no-one working actively on ecore_audio I disable
the test here and we can track the problem on T4018.
2016-07-05 11:14:30 +02:00
Stefan Schmidt 493df60950 tests: ecore_audio: remove dead code
These test cases do not exist and the code is commented out for a long time.
2016-07-05 11:14:30 +02:00
Stefan Schmidt 2a9c000859 tests: ecore_audio: move _finished_cb behind PULSE guard
This callback is only used from the pulse object test.
2016-07-05 11:14:30 +02:00
Daniel Hirt 06fd1566ea Canvas text cursor: fix bug after code port
Fixes T4005.
Also, unified repeated code and added a test for multiple cursors.
2016-07-03 14:39:45 +00:00
Jean-Philippe Andre 9ead2c669d tests: Disable profile_exists as it fails on jenkins 2016-07-01 16:54:25 +09:00
Daniel Kolesa ab2e608239 eolian: add support for static and terminated arrays
Adds two new type types, STATIC_ARRAY and TERMINATED_ARRAY. Static arrays are
only allowed as struct members right now - they translate to regular C static
arrays (allowing them elsewhere wouldn't be good, as C isn't very good at
working with the size information). Terminated arrays are basically sequences
of data terminated at the end. The base type of static arrays can be any type
that is not marked ref (explicit ref may get allowed later). The base type of
terminated arrays has the same restriction plus that it has to be either
implicitly reference type (i.e. translating to pointer in C), integer type
or a character. In case of ref types, the terminator is NULL. In case of
integer types, the terminator is a zero. In case of character types, the
terminator is also a zero (null terminator like C strings).

@feature
2016-06-30 16:59:21 +01:00
Jean-Philippe Andre 2b9e9b3667 ecore: Add basic test case for efl version
Not very useful test but still good to make sure we
preserve the API.
2016-06-29 15:01:34 +09:00
Cedric BAIL ee33978dc3 elementary: try to keep const type in config test. 2016-06-28 11:15:50 -07:00
Cedric BAIL 86862e7179 ecore: fix typo in test.
Thanks Stefan.
2016-06-28 11:11:07 -07:00
Stefan Schmidt c1529d12d9 tests: elm: make cnt unsigned for correct compare
Not really somethign we would hit here but still better to change this.

tests/elementary/elm_test_config.c: In function ‘elm_config_profiles’:
tests/elementary/elm_test_config.c:206:12: warning: comparison between signed and unsigned integer
expressions [-Wsign-compare]
         fail_if(cnt != eina_list_count(list));
2016-06-28 11:35:48 +02:00
Stefan Schmidt de495bb5f4 tests: elm: remove wrong const for Eina_List
We are assigning somethign new to this list so no chance for const here.

tests/elementary/elm_test_config.c: In function ‘_eina_list_string_has’:
tests/elementary/elm_test_config.c:174:11: warning: assignment discards ‘const’ qualifier from
pointer target type [-Wdiscarded-qualifiers]
    EINA_LIST_FOREACH(list, l, s)
2016-06-28 11:35:40 +02:00
Jee-Yong Um 8a988717e1 elementary/layout: attach edje object API with eo compositing
Test Plan: make check

Reviewers: Hermet, jpeg, cedric

Subscribers: slotus.lee

Differential Revision: https://phab.enlightenment.org/D3871

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-06-27 11:18:05 -07:00
Jean-Philippe Andre d299515788 config: Test profile APIs 2016-06-24 17:10:21 +09:00
Jean-Philippe Andre 0f6268ff44 win: Attach config API with eo compositing 2016-06-24 17:10:21 +09:00
Jean-Philippe Andre 3ee261780a config: Implement support for audio_mute
Instead of being a key "audio_mute" + another key "channel"
I've simply implemented a number of different keys:
audio_mute (= all)
audio_mute_all
audio_mute_effect
...
2016-06-24 17:10:21 +09:00
Jean-Philippe Andre 07613bf2f6 config: Simplify Efl.Config API, make C helpers only
This removes the mixin functions and uses static inline functions
instead. Much cleaner, looks the same to C devs.
2016-06-24 17:10:21 +09:00
Jean-Philippe Andre 8b8430214a config: Add support for some enums 2016-06-24 16:57:04 +09:00
Jean-Philippe Andre 47a1fae200 efl: Introduce general Efl.Config API
This is to port elm_config to EO APIs.

The current implementation relies on the legacy API, by
simply forwarding calls.

The new API is simply efl_config_set("config_name", value)
where value is an Eina_Value (aka. generic_value).
The C interface proposes a few helpers like config_int_set,
config_double_set, etc...

Unfortunately at the moment, not all config options are
supported, as some rely on more complex types:
- lists
- color class and multiple arguments
- unset functions
- enums

Profiles are also not handled at this point.

@feature
2016-06-24 16:57:04 +09:00
Cedric BAIL c512bb68e7 ecore: fix Windows build by properly defining EAPI in all case for internal API user. 2016-06-23 10:53:46 -07:00
Cedric BAIL 5983792368 elementary: fix test of internal widget to redefine unaccessible variable. 2016-06-23 10:46:16 -07:00
Cedric BAIL 068f57a79d ecore: fix arguments to use Eo native array type. 2016-06-22 14:36:39 -07:00
Cedric BAIL b047bf7f64 eio: register one Efl_Io_Manager by default on the main loop at init time. 2016-06-22 13:19:13 -07:00
Cedric BAIL 10aadafcfd eio: rename eio_job to efl_io_manager.
There is still a lot of work to do in this API to make it efficient and
stable. Will try to get at it before 1.18 release.
2016-06-22 13:19:13 -07:00
Cedric BAIL ae207a5be6 ecore: add test for registered provider. 2016-06-22 13:19:13 -07:00
Felipe Magno de Almeida b09c1f8093 eolian-cxx: Added stringshare 2016-06-21 16:35:09 -03:00
Daniel Kolesa 7584960377 eolian: implement a stringshare builtin
This implements a new builtin, stringshare, which is replaced with the right
pointer to Eina_Strinshare as necessary. This allows simplifying binding code
(it can call the proper eina APIs, deal with lifetime etc).

It also removes the extern Eina.Stringshare typedef from eina_types.eot, which
was actually incorrect and would generate invalid code in binding generators.

@feature @fix
2016-06-21 14:41:18 +01:00
Daniel Hirt dbbb4bf8ad Canvas text: revert new behavior on text append
This was discussed and still wasn't decided whether this is required to be
supported internally.
The reason for this revert is that the behavior still needs tweaking to work
just right along with the legacy behavior.
2016-06-21 10:40:48 +00:00
Jean-Philippe Andre 269fc4f7a6 evas: Remove common interface and use provider_find
Evas.Common_Interface not only had a bad name, it also
wasn't in line with how we can get a loop object, for
instance.

Use eo_provider_find in each implementing class.
2016-06-21 16:13:04 +09:00
Jean-Philippe Andre 7bf8da2baa evas: Rename Evas.Object to Efl.Canvas.Object
One step closer to make the EO inheritance tree look like
it's all Efl.
2016-06-21 14:35:19 +09:00
Tom Hacohen 6998f3a8d2 Eo event: Add a test for stopping callbacks within another callback.
This tests that stopping callbacks is correctly preserved inside the
call and does not affect any surrounding callback calls.
2016-06-20 18:02:00 +01:00
Tom Hacohen 6202cc7485 Adjust the code according to the eo event stop changes.
This was changed in the previous commit.
2016-06-20 18:02:00 +01:00
Stefan Schmidt ecdbde7493 eo: remove now longer needed EO_BASE_BETA define from code base
This was needed when the eo composite object was still in beta. Since commit
d7c45e41d4 this is no longer the case. No beta
part left in eo base so we can safely remove this define.
2016-06-20 10:07:30 +02:00
Jean-Philippe Andre ace95e2f81 tests: Add test case for evas clipees get
This tests both legacy (list) and eo (iterator) APIs.
THis is a terrible test with a single item, though.
2016-06-17 11:37:39 +09:00
Jean-Philippe Andre e2eebc1221 Evas: Rename object focus to key_focus
The evas focus concept is valid and applies only to the
keyboard inputs.
2016-06-17 11:37:39 +09:00
Felipe Magno de Almeida 8e4f383d61 efl: Move promise parameter to return in data model
Summary:
Instead of:

efl_model_property_get("name", &promise);

now:

promise = efl_model_property_get("name");

Reviewers: stefan_schmidt, cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D4038
2016-06-16 22:01:07 -03:00
Daniel Hirt c9744965c0 Canvas test: remove style test for now 2016-06-16 19:15:20 +01:00
Daniel Hirt ed512ea49e Canvas Text: continue porting api and fixup bugs
Also: This merges style user and normal style into a list with precedence. This
allows for more flexibility while keeping the API clean.

@feature
2016-06-16 19:15:20 +01:00
Tom Hacohen c297ff4115 Canvas text cursor: introduce this new object
The text cursor is now an eo object. Consult the efl_canvas_text_cursor.eo file
for the API.

@feature
2016-06-16 19:15:20 +01:00
Daniel Hirt 3a6c648d28 Canvas text: introduce new text object
The implementation depends on creating different code paths from the now-legacy
behavior of text appending.

The annotation system introduced in this commit replaces the current way of
applying formats on text.
Up until now it has been quite a hassle for the user to control the formats, as
it required keeping track of the format positions with an opener and closer
formats almost every time (with the exception of own-closing formats).

The combination of Efl.Text API along with the Efl.Canvas.Text annotation API
essentially replaces the capabilities of the old format.

There is additional annotation API to allow more control, so be sure to check
the documentation/.eo files and the wiki page of Efl.Canvas.Text.

The style API now accepts actual strings of format style. There is not longer
need to instantiate as style with style_new() followed later by style_free().

@feature
2016-06-16 19:15:20 +01:00
Stefan Schmidt 6d54b94db5 tests: eio: use eina file infrastructure for temporary file creation
The tmp dir is not always /tmp.
2016-06-16 14:15:25 +02:00
Stefan Schmidt ff95c52ae7 tests: eio: silence unused paramater warnings in new eio_map test 2016-06-16 14:15:24 +02:00
Vivek Ellur e2dbd0c504 eio_map: Add test suite for eio map module
Summary:
Added test suite for eio map module

Signed-off-by: Vivek Ellur <vivek.ellur@samsung.com>

Reviewers: cedric

Subscribers: stefan_schmidt, raster, cedric

Differential Revision: https://phab.enlightenment.org/D3321
2016-06-16 14:15:24 +02:00
Jean-Philippe Andre 2d995fdedc tests: Use EO_CALLBACKS_ARRAY_DEFINE in all tests
This should make them work on Windows, too.
2016-06-16 13:10:34 +09:00
Felipe Magno de Almeida 210a740cc2 eolian-cxx: Add tests for @beta and @protected events 2016-06-15 12:22:39 -03:00
Felipe Magno de Almeida 8906998ef2 eolian-cxx: Add support for ref parameters and correct ownership handling 2016-06-14 22:44:02 -03:00
Andy Williams 6c0d51322b elementary: Fix repeated undo of character deletion
Let's not trigger further undo stack changes when we undo changes.
2016-06-14 22:47:22 +01:00
Jean-Philippe Andre ff0124bdae evas object: Mark event free as @beta
Use EO_EVENT_DEL instead.
2016-06-14 16:27:42 +09:00
Jean-Philippe Andre edc7675db6 tests: Remove eo evas object events
This is the last usage, apart from evas_callbacks.c itself.
2016-06-14 16:27:42 +09:00
Ji-Youn Park a75fb5763a evas_canvas: move evas_output_XXX API from eo to legach.
evas canvas will be removed from eo.
evas_output_XXX APIs are usually used by widget or e17.
I decided not open these kind of APIs to eo.
app can use the size of elm win instead of evas output apis.
2016-06-13 18:53:06 +08:30
Felipe Magno de Almeida 949af55947 eina: Add support for eina_safepointer in promises 2016-06-11 10:40:27 -03:00
Cedric BAIL 1d3cfc0aff eina: reenable all tests that where wrongfully disabled. 2016-06-10 14:10:13 -07:00
Cedric BAIL edc753d1a2 eina: add tests suite for Eina_Safepointer. 2016-06-10 14:09:41 -07:00
Daniel Kolesa 33c147f6d4 eolian: remove the unnecessary subtypes API
Inner type can now be retrieved as a base type of the type.
If the type has two inner types or more, there is a new API that allows you to
get the second inner type by calling it on the first one (same would apply to
getting third via second etc.).

This API is simpler to use and doesn't require an iterator.
2016-06-10 14:28:19 +01:00
Jean-Philippe Andre 79abba52c5 Evas: Rename Evas.Image into Efl.Canvas.Image.Internal
Make it abstract.
And add Evas.Image as a legacy-only class.
2016-06-10 13:21:20 +09:00
Lauro Moura 46843551c0 eina: Remove value type promises
All values in promises are now considered as by-pointer.
2016-06-09 22:38:54 -03:00
Lauro Moura 3b090b808b eina: Fixes on promises behavior when cancelling
- Free the cancel callbacks on promise delete
- Cancelling an ended promise should be a nop
- More tests to increase coverage
2016-06-09 19:14:14 -03:00
Daniel Kolesa 375179b47f eolian: support @protected for accessors (get/set)
Previously it was only possible to set it for the whole property.

@feature
2016-06-09 16:55:24 +01:00
Daniel Kolesa 1a34d89d20 eolian: fix incorrect doxygen param generation
The first param on methods was skipped for some reason.

@fix
2016-06-09 14:41:12 +01:00
Daniel Kolesa b87c4f6de8 eolian: refine the ref system to suit more cases
Now references are first class (but still restricted to one level). Unlike
pointers they only mark the type instead of introducing a whole new type.
2016-06-08 15:49:09 +01:00
Cedric Bail 122f5eb3a4 elementary: switch to legacy API for tests. 2016-06-07 16:29:53 -07:00
Daniel Kolesa 1637c21a76 eolian: support @ref on returns
This adds basic support for @ref on return types.
2016-06-07 15:26:09 +01:00
Cedric BAIL 2db02da4bd ecore: make sure lifecycle of Efl.Loop.Fd is correct. 2016-06-06 16:29:16 -07:00
Cedric BAIL cd0b50fada ecore: add a tests that ensure we do implement lifecycle correctly. 2016-06-06 15:41:24 -07:00
Cedric BAIL b1f62061b9 eio: remove eio_model that should already be part of Eio.h. 2016-06-06 11:01:16 -07:00
Daniel Kolesa 9752c44a48 eolian: add a new references system to help replace pointers
It's now possible to mark struct fields and function params as "references",
which causes them to become pointers in C (in bindings, they become whatever
is necessary). They're not a part of the type and are much more restricted
than pointers, allowing bindings to be easier. This system will be gradually
utilized and expanded as required.

@feature
2016-06-06 15:28:10 +01:00
Stefan Schmidt c840162f09 tests: evas: remove unused variable
We set it but never going to use it afterwards. We already tests the
efl_gfx_buffer_colorspace_get() elsewhere in this tests so we can ignore it
for now until we need it and bring it back together with a user.
2016-06-06 15:43:15 +02:00
Andy Williams 05f0134da4 elementary_code: Fix test failures post-merge
Looks like some were legitimate failures that were not being caught
in the previous setup
2016-06-06 14:28:17 +01:00
Tom Hacohen 8809ed1629 Merge elm code, a code editing widget into the efl
It was decided to merge this and mark the code as BETA for now.
It's currently being used by EDI and should also be used by enventor and etc.
2016-06-06 14:28:16 +01:00
Lauro Moura f15ae07188 eio: Fix leaks in tests 2016-06-06 04:32:32 -03:00
Lauro Moura 47dea6abc1 eina: Avoid promise early deletion when cancelled.
Cancelling a promise will fulfill it but won't actually free the memory. This
memory is under custody of the owner, who must either call value_set or
error_set to finish it.
2016-06-06 03:09:40 -03:00
Felipe Magno de Almeida 2a3d7860db eolian-cxx: Rewrite to accomodate new features of the C++ binding 2016-06-06 02:54:36 -03:00
Larry Jr e14042eabe eio: Fix Eio_Model promise accessor 2016-06-05 22:08:06 -03:00
Lauro Moura 217f3ce842 ecore: Fix ecore thread promises
Make sure we free the promise memory, set MAGIC numbers and avoid
leaking the underlying eina promise
2016-06-05 21:59:35 -03:00
Lauro Moura b28f6f2fce eina: Fix promise tests and avoid early deletion
- Progress notify refcount fixes, avoiding early deletion
- Avoid leaking memory on tests
2016-06-05 21:58:19 -03:00
Tom Hacohen aab8389a6f Eo: remove strict class checking for composite objects.
When compositing objects, we were checking that class_of(B) is in A's
inheritance tree before allowing attaching B as a composite object of A.
This is wrong and breaks a few cases, for example: B extends a class that
is in A's inheritance tree or B implements an interface that is in A's
inheritance tree.

Thanks to Marcel for reporting.
2016-06-05 10:57:07 +01:00
Cedric BAIL b7facb2f0b ecore: add a test for detecting the double free problem. 2016-06-03 17:00:12 -07:00
Cedric BAIL 5cc16b1c29 ecore: remove Ecore_Animator Eo object.
This is only a legacy API.
2016-06-03 17:00:12 -07:00
Felipe Magno de Almeida e98c57d9d4 eina: Remove more Eina_Promise* parameter in promise callback
Remove not very useful parameter to eina_promise_then callbacks.
2016-06-03 18:37:21 -03:00
Felipe Magno de Almeida e79eb53e8d eina: Remove Eina_Promise* parameter in promise callback
Remove not very useful parameter to eina_promise_then callbacks.
2016-06-03 18:15:57 -03:00
Felipe Magno de Almeida 8fec0d5139 eina: Remove unnecessary indirection to promises
Now when dealing with pointer types, we will not get pointer to
pointer semantics in callbacks and eina_promise_owner_value_set
for Eina_Promise.

It will work as expected:

Eina_Promise_Owner* promise = eina_promise_add();

void* p = malloc(sizeof(T));
eina_promise_owner_value_set(promise, p, &free);
2016-06-03 17:22:12 -03:00
Cedric BAIL d384012307 elementary: merging in elm_code widget.
Theme is not there as it should be manually merged into the elementary
default theme.
2016-06-02 17:19:08 -07:00
Daniel Kolesa b1946ca5d6 eolian: utilize the new void_ptr builtin across eo files
This lets me narrow down the remaining cases of pointers across the EFL.
The void pointers will later need to be reevaluated on per-case basis and
replaced appropriately where possible/feasible.
2016-06-02 13:00:26 +01:00
Jean-Philippe Andre 915e09aed3 Evas: Rename Evas.Rectangle as Efl.Canvas.Rectangle 2016-06-02 18:57:30 +09:00
Tom Hacohen a6a2338962 Revert "Eo: Remove eo_del() and make eo_unref() the replacement."
This reverts commit 546ff7bbba.

It seems that eo_del() is useful and removing it was creating bugs.
The issue is that the way we defined parents in eo, both the parent and
the programmer share a reference to the object. When we eo_unref() that
reference as the programmer, eo has no way to know it's this specific
reference we are freeing, and not a general one, so in some
circumstances, for example:
eo_ref(child);
eo_unref(child); // trying to delete here
eo_unref(container); // container is deleted here
eo_unref(child); // child already has 0 refs before this point.

We would have an issue with references and objects being freed too soon
and in general, issue with the references.

Having eo_del() solves that, because this one explicitly unparents if
there is a parent, meaning the reference ownership is explicitly taken
by the programmer.

eo_del() is essentially a convenience function around "check if has
parent, and if so unparent, otherwise, unref". Which should be used when
you want to delete an object although it has a parent, and is equivalent
to eo_unref() when it doesn't have one.
2016-06-01 13:33:21 +01:00
Daniel Kolesa 6fc482aa9b eolian: utilize the new builtin string type across eo files 2016-05-31 16:05:43 +01:00
Carsten Haitzler 47e3b171a3 efl test suite - test args event and args values 2016-05-31 17:16:14 +09:00
Felipe Magno de Almeida ad0166f792 eio: Fix eio_test_job_xattr test
Test wasn't enabled when modifications to function prototypes to
eio_job_file_xattr_list and eio_job_file_xattr properties were
made, so it got pushed inadvertidly without the necessary
changes to user code.
2016-05-30 15:54:01 -03:00
Felipe Magno de Almeida 058f07e759 eolian-cxx: Added tests for wrapper conversion in C++ API 2016-05-26 16:47:20 -03:00
Felipe Magno de Almeida 1ed8759e1a ecore: eldbus: Fix prototype for promise then_cb new prototype
Added Eina_Promise parameter and removed indirection for Eina_Error.
2016-05-26 13:35:07 -03:00
Felipe Magno de Almeida b0b8109cd5 eina: Make cancelled promises use EINA_ERROR_PROMISE_CANCELLED error code 2016-05-26 13:35:07 -03:00
Felipe Magno de Almeida 28bc891925 eina: Fix new prototype for then cb in test
Added Eina_Promise* parameter to function prototypes
2016-05-26 13:35:07 -03:00
Jean-Philippe Andre 99924852ab Efl: Remove part name in Efl.Container (use Efl.Part)
This touches Edje and also Elementary where part names are used.
This commit blew up in size since now all content part APIs
(get, set, unset) require to use Efl.Part instead.

This is a big refactoring commit, but no logic should
have been changed. Fingers crossed.
2016-05-26 19:55:50 +09:00
Carsten Haitzler a1a2bc5017 eina test suite - ooops reenable tests
accidentally snukc in commented disables in test suite as i was
hunting why eina test suite crashes while dealing with feedback on my
compare fixes etc.
2016-05-26 13:03:01 +09:00
Carsten Haitzler 7ee4eba33f efl - new cmp "fix" code - remove one duplicated cmp 2016-05-26 12:49:58 +09:00
Lauro Moura 7241b7375d eio: Adds Eo-based Eio API
The legacy Eio_File factory functions are replaced by an Eo object
called Eo_Job that return promises wrapping the async file operations.
With this commit, the legacy Eio callbacks are replaced by the following
Eo/Promises counterparts :

* Done_Cb -> Promise then success callback
* Error_Cb -> Promise then error callback
* Main_Cb -> Promise progress callback
* Filter_Cb -> Job object event (more below)

Events are used to deliver and get the filter data. To differentiate
between the named and direct versions, they come in "filter,direct" and
"filter,name" versions.

Monitors were wrapped inside a new class Eo_Sentry.

The user creates a sentry object and adds monitoring targets to it,
listening to events on it.

The sentry event info is composed of two strings. The source string
is the path being monitored, i.e. the one passed to eio_sentry_add, and
the trigger string is the path that actually triggered the event, e.g.
a new file created in a monitored directory.
2016-05-25 21:32:03 -03:00
Felipe Magno de Almeida de9be13d45 eina: Add promise parameter to then calllbacks
Added promise parameter to then callbacks so callbacks can steal
ownership of the value from the promise.
2016-05-25 21:32:03 -03:00
Lauro Moura 0eacdc03da eio: Call correct function to cleanup Eio_File.
The Eio functions operating on Eina_Files were just freeing
the Eio_File pointer on completion instead of calling eio_file_free
to unregister the thread.
2016-05-25 21:32:03 -03:00
Jean-Philippe Andre 35fc3f5130 Edje: Test proxy objects more
This tests that a cached object is not reused invalidly if
it was ref'ed.
2016-05-24 18:50:58 +09:00
Jean-Philippe Andre df375ca395 Edje: fix test case (switch to efl_part) 2016-05-24 18:50:58 +09:00
Carsten Haitzler b8b41e6683 ecore-con tests - remove WRONG connect check
sothe ecore-con tests were calling ecore_con_server_connected_get()
every time a server was created on a NUL server object. WTF? this is
pointless. testing if an api returns tre on being connected on an
invalid object? all it does is create lots of eo noise. remove so we
can see the real errors in the output.

@fix
2016-05-24 09:20:49 +09:00
Felipe Magno de Almeida 6e23780bb1 eolian-cxx: Fix generation of complex types in C++ binding
Fixed generation of complex types in C++ binding, with tests. This
problem came after the removal of the pointer types for top-level
complex types.
2016-05-23 17:34:50 -03:00
Felipe Magno de Almeida 8fd1656898 eolian-cxx: Add test for list and array complex types 2016-05-23 16:08:41 -03:00
Felipe Magno de Almeida b613d6f1d9 eolian: Allow promises to have a second type
Promises can have a second type, which is the progress type
2016-05-23 15:58:11 -03:00
Felipe Magno de Almeida e3c8b280c6 c++: Reorganized C++ binding generation
Moved all generation to a single Makefile_Cxx.am file instead of
throughout the whole project. And fixed C++ generation on Elementary
after elm merge.
2016-05-23 15:05:50 -03:00
Daniel Kolesa e984e5a11a eolian: remove pointers from complex and class types
Complex types (i.e. list, array, hash, accessor etc.) now do not require
pointers with them anymore (the pointer is implied) and the same goes for
class handles. Eolian now explicitly disallows creating pointers to these
as well. This is the first part of the work to remove pointers from Eolian
completely, with the goal of simplifying the DSL (higher level) and therefore
making it easier for bindings (as well as easier API usage).

@feature
2016-05-23 15:58:33 +01:00
Vincent Torri 63d5b07951 Efreet test: fix warning on Windows
Summary:
comp.h is redefining some macros on Windows. So just rename all the macros
with the TANGO prefix

Test Plan: compilatioN

Reviewers: cedric, jpeg, zmike

Differential Revision: https://phab.enlightenment.org/D3968
2016-05-21 10:40:34 -04:00
Tom Hacohen 7b2b623180 Eo: Fix compilation for people using GCC.
Apparently you can't cast when initializing static consts, even if
the cast is to the same type. This commit splits the macro used
so we have an additional one that casts and thus works with
eo_override().
2016-05-20 16:16:17 +01:00
Tom Hacohen 5f46df619b Eo tests: Fix compilation warnings with eoid disabled. 2016-05-20 11:39:36 +01:00
Tom Hacohen 06f65ab2b1 Eo: Implement eo_override() to enable overriding functions of objects.
This change lets you override the functions of objects so that those
functions will be called instead of the functions of the class. This
lets you change objects on the fly and makes using the delegate pattern
easier (no need to create a class every time anymore).
You can see the newly added tests (in this commit) for usage examples.

@feature
2016-05-20 10:25:00 +01:00
Tom Hacohen c450efdcde Eo: Improve error message when overriding functions. 2016-05-20 10:25:00 +01:00
Tom Hacohen e1efe2e651 Eo: Reorganise the vtable in classes and add pointer from objects.
This is the first step towards supporting eo_override().
More details about eo_override() to follow.
2016-05-20 10:25:00 +01:00
Tom Hacohen b5511464a1 Eo: Remove useless test.
We no longer have a call stack, so there's no need to have
this test.
2016-05-20 10:25:00 +01:00
Cedric Bail 4f43c27450 ecore: promise for timeout and job are clearly never optional, so return them. 2016-05-20 02:25:48 -07:00
Jean Guyomarc'h 4f7d159998 ignores: eo_suite_add_fallback 2016-05-18 21:57:02 +02:00
Jean Guyomarc'h 147ef32b2b efl: fix misleading indentation
GCC's -Wmisleading-indentation is complaining...
It is a warning flag introduced in GCC 6.x, and
is enabled by -Wall.
2016-05-18 21:57:02 +02:00
Felipe Magno de Almeida 5d5c04fd66 js fixes 2016-05-18 17:52:47 +02:00
Cedric Bail 75a53ece10 eo: for consistency use object like all our API. 2016-05-18 08:18:04 -07:00
Tom Hacohen 96624b9725 Eo: Fix singleton pattern and add a test to make sure it works. 2016-05-18 13:31:30 +01:00
Cedric Bail 443948e3bd eo: fix borked test. 2016-05-18 02:20:13 -07:00
Carsten Haitzler 8de2ba5d47 eina test suite vector - make correctness range 2x as big
make correctness rand 2 * DBL_EPSILON due to compilers, fastmath and
being a little inaccurate sometimes at the bottom end of precision.

@fix
2016-05-18 02:02:45 +09:00
Carsten Haitzler 54272809ed ecore audio test - improve samples for ecore audio test 2016-05-18 02:02:45 +09:00
Carsten Haitzler 43661180f7 efl - key/data/value/obj attach to eo objects - make these properties
the key data now is a property so they come out in bindings really
nicely like:

  obj.key_data["blah"] = x;

  x = obj.key_data["blah"];

etc.
2016-05-18 02:02:45 +09:00
Daniel Kolesa 7782c0bcb9 eolian: add event_prefix and have classes follow that or eo_prefix by default
Previously events used to use class name as a prefix and ignored eo_prefix
when specified. This is no longer the case. Events follow eo_prefix by default
now. In order to get around this for classes where this is undesirable, a new
field event_prefix was added which takes priority over eo_prefix. If neither
is specified, class name is used like previously.

@feature
2016-05-17 17:50:43 +01:00
Tom Hacohen 546ff7bbba Eo: Remove eo_del() and make eo_unref() the replacement.
We used to have eo_del() as the mirrored action to eo_add(). No longer,
now you just always eo_unref() to delete an object. This change makes it
so the reference of the parent is shared with the reference the
programmer has. So eo_parent_set(obj, NULL) can free an object, and so
does eo_unref() (even if there is a parent).

This means Eo no longer complains if you have a parent during deletion.
2016-05-17 16:23:23 +01:00
Tom Hacohen e9c4e7bf76 Eo name: Rename Eo.Base.id to Eo.Base.name.
This is there to reduce confusion with Eo_Id and also the name
is just better.
2016-05-17 16:00:13 +01:00
Cedric Bail 559441bdd5 ecore: make timeout test that the timeout does happen at least after it is supposed to.
The test had to been relaxed to allow the server to be overloaded !
2016-05-15 06:44:49 -07:00
Tom Hacohen 96c4c88070 Efl: Remove "legacy_prefix: null;" as it's now the default. 2016-05-12 17:27:35 +01:00
Daniel Kolesa 1a0566452f eolian: do not generate legacy without explicit class legacy_prefix 2016-05-12 17:27:34 +01:00
Daniel Kolesa 7e94eb22b4 eolian: mark pure virtual funcs outside of implements
This is a better syntax and should've been like this in the first place.
2016-05-12 16:15:24 +01:00
Tom Hacohen 6cacef2503 Eo abstract class: Rename to Eo.Class. 2016-05-12 14:33:40 +01:00
Stefan Schmidt 3256a60282 tests: eio: make sure we cleanup eio_test_xattr_set correctly
We missed tmpstr_del and shutting down eina here. This test segfaults from
time to time on Jenkins. Not sure this was the actual cause but better clean
it up anyway.
2016-05-11 10:17:11 +02:00
Jee-Yong Um 557381a070 eet: add a helper to setup hash with generic value storage
Summary:
add a macro to setup eet_data_descriptor for hash with
generic value storage.

Test Plan: make check (test case is included in eet test suite)

Reviewers: cedric, raster

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3925

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-05-10 16:36:22 -07:00
Tom Hacohen 138d4e1353 Efl model: Remove the no longer needed .Base hack. 2016-05-10 11:36:35 +01:00
Felipe Magno de Almeida 1c5ce16565 eina: Add eina_promise_race composition function
Added eina_promise_race function that composes multiple
promise objects into a new promise which is fulfilled
when one of the promises are fulfilled, or fails
when one of the promises have failed.
2016-05-09 19:10:26 -03:00
Jean-Philippe Andre 5ba58353f0 Edje: Fix test case to show proper use of part APIs
The one and only valid use case is calling a function directly on
the part handle, like:
  func(part_get(obj, "part"), args).

This does not change the actual proxy object lifecycle or resolve
any potential issues, but this should clear up things in terms
of scope for proper (supported) use.

efl_content_get may become efl_part() and return a temporary object,
valid for a single function call. Those are "details" still to be
refined.
2016-05-09 14:42:47 +09:00
Felipe Magno de Almeida 6d43adaaf4 eina: Fix memory leaks in promise 2016-05-07 13:55:18 -03:00
Cedric BAIL 359657f1f1 ecore: add tests case for Efl.Loop.Fd. 2016-05-06 15:35:36 -07:00
Felipe Magno de Almeida 236c13df34 eina: Add progress notify callback feature for Promise Owners
Add a way for users of the promise owner to get notified when a
promise progress is registered. Also added a convenience composition
function that creates a promise which is fulfilled when another
promise has a progress notification.
2016-05-06 12:41:42 -03:00
Tom Hacohen 537b138a23 Eo composite: change composite objects to not be tied to parent
This commit breaks behaviour!
Re-parenting no longer detaches composite objects, so watch out.

Now you can have an object be a composite object of an object although
it's not its child. This allows widgets to do things like having an
object as the child of a child object while still making it a composite
object to the main object.

With this change, composite objects don't keep a reference to the child,
but instead composite "bonds" are implicitly removed when either the
parent or the child are destructed.
2016-05-05 16:45:12 +01:00
Felipe Magno de Almeida 6124039c8f eolian-cxx: Added test for the removal of the .Base class requirement
Test creates class with the same name as the namespace of another class
2016-05-04 21:14:26 -03:00
Cedric BAIL a1bd7a7499 ecore: add timeout promise test. 2016-05-04 15:42:59 -07:00
Cedric BAIL 950701b738 ecore: silence warning in job test. 2016-05-04 15:42:59 -07:00
Marcel Hollerbach c66695bedb eo: replace loop_get with object_find
Summary:
object_find is more generic, so other mechanisms can also reuse the
code.
The object itself has to support the function, so there is no need for
eo_isa which would have a negative performance impact.
The base class implementation calls interface_get on the parent, so a
override of the function can just call the super function to continue in
the recursion.

Test Plan: just run the eo test suite

Reviewers: raster, tasn, jpeg

Reviewed By: tasn, jpeg

Subscribers: felipealmeida, netstar, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3909
2016-05-04 10:43:55 +02:00
Larry Jr 5230309b02 Eio: fixed eio_model_test_monitor_add
fix filename comparison in the test for deleted file
2016-05-03 18:48:01 -03:00
Larry Jr 24864af5c4 Eldbus: re-enable eldbus_tests_model by default 2016-05-03 16:49:29 -03:00
Larry Jr d418e98237 Eldbus: fixed eina_promise callback in eldbus test model 2016-05-03 16:49:29 -03:00
Cedric BAIL 0a77ae5c4a elementary: fix build with missing function. 2016-05-03 11:18:06 -07:00
Stefan Schmidt fc51b44ed4 tests: eio: re-enable eio test cases
Have been disabled with 0c76f82a. They pass here so re-enabling.
2016-05-03 11:30:23 +02:00
Stefan Schmidt b917eb4c25 tests: eio: use the correct eina_promise_* functions
When these changes got it with 0c76f82a31
they used the non existing symbols ecore_promise_value_get and
ecore_promise_then (most likely due to an unfinished refactoring)

Make sure we actually use the correct eina_promise_ symbols and add NULL
for the error callback which is now needed.
2016-05-03 09:36:37 +02:00
Cedric Bail 664d677201 ecore: add test case for Efl.Loop.Job. 2016-05-02 18:17:09 -07:00
Cedric Bail cfdc09fa93 ecore: fix promise test wrong use of EINA_UNUSED. 2016-05-02 18:17:09 -07:00
Larry Jr ba20e94201 Eldbus: eldbus_model_test disable by default
This test assumes an existing dbus-daemon running.
2016-05-02 18:37:04 -03:00
Larry Jr 7bbc5ec623 Eldbus: fixed property_set in Eldbus.Model_Proxy 2016-04-29 20:55:37 -03:00
Felipe Magno de Almeida e69f41001b eio: Fix unused variable warnings in test
Use of EINA_UNUSED in unused parameters
2016-04-29 17:32:23 -03:00
Felipe Magno de Almeida 46903d76f5 eolian: Fix promise generation with multiple parameters
When generating multiple parameters, they inadvertedly got
replaced by __eo_promise. Replacing all arguments to the
promise pointer.
2016-04-29 17:15:51 -03:00
Larry Jr 0c76f82a31 Efl, Eio, Eldbus, Elementary: new model API use eina_promise
Efl - efl_model_base changed to use eina_promise
Eio - eio_model use efl_model_base with promise
Eldbus - elddbus models use promise now
Elementary - elm_view_list and elm_view_form use new models with promise

updated all related examples and tests
2016-04-29 13:21:24 -03:00
Jean-Philippe Andre 0c2027b2af Edje: Add test case showing lifecycle of proxy object
This is for efl_content_get proxy objects (BOX & TABLE).
2016-04-29 13:32:01 +09:00
Tom Hacohen 7c4fce78df Eo tests: Mark unused variables as such. 2016-04-26 16:29:18 +01:00
Jean-Philippe Andre ff8ee01432 Efl: Rename some packing functions and return bool
This renames some APIs from Efl.Pack in order to try and
make them more sensible. Feedback welcome.

Also, most APIs now return bool, where false is quite unlikely
to happen.
2016-04-26 16:48:55 +09:00
Jean-Philippe Andre f19da66843 Edje: Add test case for edje table
This tests the EO and Legacy APIs
2016-04-26 14:09:36 +09:00
Jean-Philippe Andre 12146ddea6 Edje: Return text defined in EDC in part_text_get
This function was returning only the text defined by part_text_set.
This is a behaviour change, as part_text_get() no longer returns NULL
if there is a string defined in EDC. But this now means that the actual
value displayed on screen can be retrieved by a simple API call.

@feature
2016-04-26 11:36:23 +09:00
Jean-Philippe Andre e2176ed6a3 Edje: Replace edje_box_part with a fake eo proxy
This is basically an implementation of eo_part() but only
for Edje Box APIs. Legacy API is implemented on top of the
EO API.
2016-04-26 11:36:23 +09:00
Jean-Philippe Andre 24177057d0 Edje tests: Add test case for access_part_list
This tests eo and legacy apis
2016-04-26 11:36:23 +09:00
Jean-Philippe Andre e1092b84eb Edje: Adapt to Efl.Container
This basically renames swallow into content.
2016-04-26 11:36:23 +09:00
Jean-Philippe Andre 902950018b Efl: Introduce Efl.Container and unify APIs
This removes Efl.Pack_Named which had a terrible name,
removes Elm.Container which should have been renamed
Efl.Ui.Container anyway, and introduces an interface
Efl.Container instead.

The hierarchy tree is now changed as objects don't inherit
from Efl.Container (it's an interface, not a regular class)
but only implement it. Obviously it is very easy to
reintroduce an Efl.Ui.Container parent class if we need it,
but I guess it should have some actual logic. It's basically
part of what Elm.Widget already does.

Some function names have been modified to look better in C
with the efl_content prefix.

@feature
2016-04-26 11:36:23 +09:00
Felipe Magno de Almeida 535a069a23 eolian-cxx: Remove .Base requirement
Remove requirement that class can't have the same name as another
class's namespace.
2016-04-21 18:31:53 -03:00
Stefan Schmidt a41f9ad870 tests: eo: switch to generic eo_key_del, fix build
Since 5e09d1307b we use the generic eo_key_del
for all of these.
2016-04-21 11:41:44 +02:00
Carsten Haitzler 5e09d1307b eo base - remove the duplicated key dels and just do eo_key_del() now
this rationalizes all the duplicated key dels (key_data, key_obj and
key_value).
2016-04-21 18:02:31 +09:00
Carsten Haitzler 26b5eb8a26 eo base - add loop_get for base class
base class objects will ask their parent object to get the loop. this
means it recurses all objects regardless of type until it finds an
object that returns a proper loop object - eg a loop object returns
itself, a window, gfx/ui object returns the mainloop object etc. etc.

@feature
2016-04-21 15:19:36 +09:00