Commit Graph

57205 Commits

Author SHA1 Message Date
Stefan Schmidt e04df31bfb ci: stay with 17.04 for Ubuntu on Travis builds
There is some glitch with 17.10 and systemd in our build. Roll back here
to keep the Travis build stable until this is investigated.
2018-01-04 08:46:10 +01:00
Mike Blumenkrantz cca561e94e efl-wl: add function to get the parent of an extracted surface
@feature
2018-01-03 18:46:54 -05:00
Cedric BAIL 0f7c5582a4 ecore_con: we should just stop using ecore_main_loop_get. 2018-01-03 12:49:10 -08:00
Cedric BAIL fd0bcc201b eio: switch code to simpler pattern with efl_loop_promise_new. 2018-01-03 12:16:25 -08:00
Cedric BAIL 5628ecddd6 ecore: introduce efl_loop_promise_new to simplify creation of Eina_Promise. 2018-01-03 12:16:25 -08:00
Cedric BAIL 5efb8f3eb2 ecore: add some documentation for efl_loop_future_scheduler_get. 2018-01-03 12:16:25 -08:00
Cedric BAIL b8ab0ca1f5 ecore: efl_loop_future_scheduler_get actually should be considered a const method. 2018-01-03 12:16:25 -08:00
Cedric BAIL c19ef91020 Revert "efl_loop: move scheduler_get to eo API"
This reverts commit f910ba248e.

The scheduler is meant to be used only in C, not by bindings so there isn't really
a use for it in the loop class. Now this patch was triggered due to complexity in
using future/promise, so will do a follow up patch to improve that.
2018-01-03 11:21:34 -08:00
Stefan Schmidt 8a10f09b14 ci: add forgotten Ubuntu 17.10 Dockerfile
Oops, sorry for the Travis break due to this.
2018-01-03 16:59:04 +01:00
Davide Andreoli 2f69ba27d3 Put in a new (experimental) doc generator built only by templates
This is (in my mind) meant to replace the current elua generator.

Currently the generated output is pratically identical to the elua
one, just some little difference here and there, some for thecnical
reasons and some just for my preference.

I consider this work just a starting point, extending the
templates we can now easily improve our docs. Whithout the need
to touch a single line of code.

Really I think this is a great improvements, and this are some
numbers to prove it:

Current elua implementation:
4185 lines of code in 7 lua files
generation time: ~ 7 seconds

New generator:
115 lines of python + 513 lines of templates
generation time: ~ 8 seconds (can be optimizd ALOT)

To generate the full Efl.* docs just run "./gendoc.py -v" in this folder.

...will wait for reviews (in particular from @andy and @q66)
2018-01-03 16:54:51 +01:00
Andy Williams d280ab7410 docs: Fix eo_add -> efl_add 2018-01-03 14:44:39 +00:00
Stefan Schmidt 24bdcd43f8 ci: add Archlinux Dockerfile and use it in Travis 2018-01-03 15:34:38 +01:00
Stefan Schmidt 2938d6335c ci: update travis distro builds for Ubuntu and Fedora to newer versions
We already have the needed Dockerfiles for the latest releases and they
work fine. Make sure Travis runs use them.
2018-01-03 15:34:37 +01:00
Davide Andreoli ee53d64dcb Pyolian: quite complete documentation for usage and template syntax
The same content is available in phab wiki at:
https://phab.enlightenment.org/w/pyolian/
2018-01-03 14:00:33 +01:00
Andy Williams f910ba248e efl_loop: move scheduler_get to eo API 2018-01-03 12:46:06 +00:00
Andy Williams 8e23f6abff Merge branch 'devs/xartigas/typos' 2018-01-03 09:21:33 +00:00
Andy Williams c82d565c48 docs: Fix exmplanation for edje_file_iterator 2018-01-03 09:19:54 +00:00
Carsten Haitzler 0ccf813112 eina debug - use pthread _sigmask instead of sigprocmask like elsewhere
elsewhere in efl we moved to pthread_sigmask but eina debug didn't, so
mirror the changes here too. at this point in time when we are
initting eina debug this shouldnt really matter much as we're single
threaded until this pthread_Create is called. after that tough...
we're not. signals + threads is a nightmare though... horrible
horrible...
2018-01-03 13:05:16 +09:00
Davide Andreoli a2b24d0948 Pyolian: fix segfault on shutdown
also improve abit all_namespaces performance by using a set (hashable)
2018-01-02 21:52:57 +01:00
Davide Andreoli b9ed84f4ed Pyolian: implement an utility class: Namspace
Update tests and generator to use this new feature
2018-01-02 15:44:43 +01:00
Marcel Hollerbach b8f4dc296f ecore_con: switch from 1234 to AF_UNSPEC
there are systems where sa_family_t is a enum, so assigning 1234 will
lead to compililation errors on picky systems
2018-01-02 14:35:31 +01:00
Stefan Schmidt 6ef22f70d1 ci: travis: add new docker file for Fedora 27 release 2018-01-02 14:18:14 +01:00
Stefan Schmidt 53485e5949 benchmarks: eine: include header for using time()
../src/benchmarks/eina/eina_bench_sort.c: In function ‘eina_bench_sort_eina’:
../src/benchmarks/eina/eina_bench_sort.c:52:10: warning: implicit declaration of function ‘time’ [-Wimplicit-function-declaration]
    srand(time(NULL));

Found due to the nice quite build output in our meson feature branch.
2018-01-02 14:18:14 +01:00
Davide Andreoli 3388077bc3 Pyolian: implemented doc tokenizer 2018-01-02 13:58:08 +01:00
Xavi Artigas ee61190af8 Typo in error message 2018-01-02 13:56:04 +01:00
Xavi Artigas e4e48aa4f9 Typo in example 2018-01-02 13:56:04 +01:00
Carsten Haitzler 9bedda14b3 efl loop - rename ecore_main_loop_get to efl_main_loop_get
ecore_main_loop_get() is really a new "eo api" but it's using our old
ecore_* namespace, so move to the new efl namespace.
2018-01-02 16:13:54 +09:00
Amitesh Singh 44b6aa16c1 Efl.Gfx.Color: add color_class_code.set/get{} method 2018-01-02 15:41:34 +09:00
Carsten Haitzler c3e322be28 efl loop - make param as unused to remove warning 2018-01-02 15:11:06 +09:00
Davide Andreoli e7a26af330 Pyolian: better equality test, new hierarchy prop and some tests 2018-01-01 08:37:13 +01:00
Davide Andreoli dd97383887 Pyolian: a fix and some new utils 2018-01-01 08:37:13 +01:00
Davide Andreoli 77fba4119b Pyolian generator: also make the classes visible in the template ctx 2018-01-01 08:37:13 +01:00
Davide Andreoli b5e3853e9d pyolian: make the library and the generator importable from another folder 2018-01-01 08:37:13 +01:00
Andy Williams 763942d8c7 Fix and simpligy windows behaviour.
Author: Vincent Torri
2017-12-31 19:57:48 +00:00
Andy Williams d234458dfc Fix and simpligy windows behaviour.
Author: Vincent Torri
2017-12-31 16:08:31 +00:00
Andy Williams 0a068ac549 elm_code: Fix usage of basename 2017-12-31 15:28:23 +00:00
Jean Guyomarc'h 541d6527fa elm: fix memleak in combobox
@fix
2017-12-30 10:14:41 +01:00
Jean Guyomarc'h a71ea3f9dc elm: fix typo in elm_list documentation 2017-12-30 10:14:41 +01:00
Davide Andreoli 15c7bbf5fa Pyolian template-based generator.
This is a really powerfull tool that can be used to generate anything eolian
releted  just providing a template file. You can then render the template
with the wanted scope (class, namespace, enum, etc)

For example give a try at this (from the src/srcipts/pyolian folder):
./generator.py test_gen_class.template --cls Efl.Loop.Timer

or ./generator.py -h for the full help

Next step: maybe generate the new efl API doc using this tool?
@andy I think this will make your life much easier :)
2017-12-28 16:10:04 +01:00
Davide Andreoli 455f241463 New python bindings for eolian
This are manually written ctype bindings for eolian, that means they
run on the standard python library (nothing to install) and can run
without any build step (in fact ctypes just open the so/dll file at runtime)

Next step will be (soon) a template based generator for eolian that will
be a lot of fun :)
2017-12-28 13:53:54 +01:00
Carsten Haitzler b27ca559f6 remove elgacy ecore event usage in futures that limit to mainloop only
also eina_procmis was not threadsafe so cannto use loops in different
threads at all until this was made safe. needed to disable the old
ecore_event using code in for ecore futures and create a new efl loop
message future and handler instead ... but now a quick experiment with
multiple loops in 10 threads plus mainloop have timers at least work.
i need to test more like fd handlers etc etc. but it's a step.
2017-12-28 02:24:12 +09:00
Carsten Haitzler 6ccfea3d51 Efl_Ui.h - remember to define EWAPI too 2017-12-27 14:55:15 +09:00
Carsten Haitzler b7eb3c5fe8 elm_priv.h - improve defines, EAPI EWAPI etc. because sub-includes need
this also makes it build for windows
2017-12-27 14:54:13 +09:00
Carsten Haitzler bfeded7252 ecore/efl loop - use efl_loop_time_get on loop obj where needed
stop using the legacy ecore_loop_time_get() func when it should be
coming from the loop object's loop time. also ecore_time_get should
never fall back on ecore_loop_time_get for similar reasons.

part of making the ecore/efl loop a non-global instance (allow loops
in threads)
2017-12-27 01:40:07 +09:00
Carsten Haitzler 27ac9a2be2 ecore main loop - fix fd handler clearning
so loop object destruction was clearing out fd handlers but those may
be later deleted by destructors of child objects. so leave legacy
fdh's and just remove them from the list
2017-12-23 21:13:47 +09:00
Andy Williams 46fbbef13a docs: Group our API landing page by namespace 2017-12-22 17:30:52 +00:00
Andy Williams 7b4441e2b8 ecore: Reduce the number of lines in our error log
And align for readability
2017-12-22 14:48:28 +00:00
Daniel Kolesa efb419fd74 eolian: prevent unnecessary hash table allocs 2017-12-22 15:36:31 +01:00
Daniel Kolesa 65ea735fd7 eolian: remove the toplevel information 2017-12-22 15:36:31 +01:00
Daniel Kolesa 7da6675c34 eolian: perform partial class validation every time
This makes sure that duplicate method/part/etc checks are done on
every database update, removing the need for clunky toplevel
checks and improving reliability. It also sacrifices some
performance but it shouldn't be too bad (if a class is already
validated, some checks are avoided to speed things up).
2017-12-22 15:36:31 +01:00