summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* eolian: Avoid segfault when parsing types like inlist<int>.devs/lauromoura/eolian-inlist-inarrayLauro Moura2019-01-301-1/+2
|
* eolian_gen: support for iterative freeing of struct fieldsDaniel Kolesa2019-01-301-40/+57
|
* eolian_gen: better freeing for inarrayDaniel Kolesa2019-01-291-6/+57
| | | | | | | This one will only loop the inarray if it contains a struct with owned fields, however it will not do iterative free for container fields in that kind of struct. That may be added later, or Eolian might be restricted further.
* eolian_gen: free inlist nodes with the proper free functionDaniel Kolesa2019-01-291-1/+3
|
* eolian: disallow container nesting and freefuncs for builtinsDaniel Kolesa2019-01-291-5/+33
| | | | | | | | | It is now not possible to put e.g. lists inside hashes, at least not for public API, as writing freeing logic and stuff for that is too complex. It is also now not allowed to override free functions for builtin types, except mstring and inlist.
* eolian: prevent inlist structs from being found in normal lookupsDaniel Kolesa2019-01-291-2/+7
| | | | | | We don't want to be able to make aliases to inlist structs and stuff as they're potentially internal/not really present in public API.
* eolian: remove free function builtins and rework ownability checksDaniel Kolesa2019-01-291-60/+32
| | | | | Eolian will not provide any builtin free functions anymore, with the exception of mstring for which it defaults to 'free'.
* eolian_gen: remove usage of freefuncs from builtinsDaniel Kolesa2019-01-291-15/+81
| | | | | The freefuncs for builtin containers are now generator-specific matter. Freefuncs still apply for user types.
* eolian: add support for inlist structsDaniel Kolesa2019-01-298-21/+184
| | | | | | | | | | | | | | | | | | | | | | | | | | | The inlist<T> syntax can now never refer to an ordinary type, T must be a new special type of struct called inlist struct. This inlist struct differs from regular structs in a couple ways: 1) They are stored separately. Just like structs, enums, aliases have their own storage, so do inlist structs. 2) They can't be @extern, nor they can be opaque. 3) They are their own type of typedecl. 4) When they contain only one field, this field must be a value type always, cannot be a pointer. Like regular structs, they can have arbitrary fields, and they can have a pre-set free function via @free(). When used with inlist, the free function set on the inlist struct via @free() will be inherited onto the inlist<T> type, except when previously overridden. In C, the inlist structs will be generated exactly like ordinary ones, except they will have EINA_INLIST before the first field. Other binding generators can deal with them as they wish, for example to provide high level interfaces to them. @feature
* eolian: make sure inlist/inarray only take value typesDaniel Kolesa2019-01-281-0/+13
| | | | | | While technically valid, it doesn't make sense for inlist/inarray to contain non-value types, as then one might as well just use a list.
* docs: Fix assorted typos in legacy documentationXavi Artigas2019-01-2834-131/+130
| | | | Samsung reported a long list of typos in our legacy docs, this fixes them.
* edje_cc: check return value of fseeksYeongjong Lee2019-01-282-4/+8
| | | | | | | | | | | | Reviewers: Jaehyun_Cho, zmike Reviewed By: Jaehyun_Cho Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D7796
* epp: fix correct parameters for cpp_error_with_lineYeongjong Lee2019-01-281-1/+1
| | | | | | | | | | | | Reviewers: zmike, Jaehyun_Cho Reviewed By: Jaehyun_Cho Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D7795
* efl_ui_dnd: fix the wrong parameter passingTaehyub Kim2019-01-281-1/+1
| | | | | | | | | | | | | | Summary: fix the wrong parameter passing Reviewers: Jaehyun_Cho Reviewed By: Jaehyun_Cho Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D7797
* evas vg: improve masking render logic.Hermet Park2019-01-286-53/+77
| | | | | | | | | | | Previous masking image is generated on vg rendering time, though context is changed to main vg rendering to masking, This had a issue that ector context switching which is not allowed in software backend because of asynchronou method. Now, this improvment brings the masking rendering move to vg render pre step with synchronous rendering method, then use the masking surface in the main vg rendering.
* eolian-cxx: Add constructor_defLauro Moura2019-01-282-1/+87
| | | | | | | | | | | | | | Summary: To be used generating argument-aware constructors in C#. Reviewers: felipealmeida, vitor.sousa Reviewed By: felipealmeida Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D7794
* elementary: Declare style as a Widget constructorLauro Moura2019-01-281-0/+3
| | | | | | | | | | | | | | Summary: Despite being required as a use case for C# constructors, style is not yet listed as a constructing property. Reviewers: bu5hm4n, Jaehyun_Cho, segfaultxavi, zmike, felipealmeida Reviewed By: felipealmeida Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D7793
* eo: Replace ptr(Eina.Strbuf) with plain strbuf.Lauro Moura2019-01-282-1/+9
| | | | | | | | | | | | | | Summary: Also fix CXX compilation after this change. Reviewers: cedric, felipealmeida Reviewed By: felipealmeida Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D7792
* efl_ui_list_view_seg_array: remove seg_array from Elementary.hLarry Lira2019-01-285-4/+4
| | | | | | | | | | | | | | | | | Summary: Change seg_array to private This is a leftover of https://phab.enlightenment.org/D7724 Reviewers: felipealmeida, cedric, SanghyeonLee Reviewed By: felipealmeida Subscribers: segfaultxavi, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D7780
* evas_clip: do not set clip->changed to trueShinwoo Kim2019-01-281-16/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: [Issuse] The issue solved by this commit occurs with 'export EVAS_GL_PARTIAL_DISABLE=0'. The _efl_canvas_object_clip_set set clip->changed to true, but did not add the clip object to e->pending_objects. So there is no chance to reset it to false. (Please refer to evas_render_object_recalc.) The clip->changed is always ture so its clipees cannot change its 'changed' to true. Because if 'changed' is true, evas_object_change returns before calling evas_object_change for its clipees. (Please see evas_object_change.) So 'changed' of clipees is false always, and clipees cannot call render_pre in _evas_render_phase1_direct, and eglSwapBuffersWithDamage is not called. This caused rendering issue. This could be rare case. The _efl_canvas_object_clip_set is called when the clipper and its clipees are out of view. [Solution] I would like to explain why removing line setting clip->changed to true makes sense. First, the following commit added line setting clip->changed to true. (1) committ 5e8d46e884930f109a28147cda4ce002e6836017 Author: Carsten Haitzler <raster@rasterman.com> Date: Wed Sep 22 04:37:51 2004 +0000 clip bug fix :) And following commit removed line calling evas_damage_rectangle_add which is part of commit (1) above. (2) commit 8767a80b0dbda4e2c3a6b2a41a04bf35f43a3ed1 Author: Carsten Haitzler (Rasterman) <raster@rasterman.com> Date: Wed Apr 16 16:14:16 2014 +0900 fix overdraw issue in evas when clips change Between above two commits, another commit calling evas_object_change(clip) was added. This commit sets clip->changed to ture, and adds clip object to e->pending_objects by evas_object_change -> evas_render_object_recalc. (3) commit 4aca7949f581eaaf943785759b542acd8fc6794c Author: Carsten Haitzler <raster@rasterman.com> Date: Wed Nov 2 04:03:55 2005 +0000 fix excess overdraw bug So we do not need the remains of commit (1). REMOVE!! :-] Reviewers: raster, Hermet, jypark Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D7767
* elm_photo: implement remaining efl.file methodsMike Blumenkrantz2019-01-262-1/+31
| | | | | | | ref T5719 Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de> Differential Revision: https://phab.enlightenment.org/D7788
* efl_ui_image: implement efl.file.mmap_getMike Blumenkrantz2019-01-262-1/+7
| | | | | | | | | | this returns the current file, though the result is that the "current file" could be changed asynchronously after this function is called ref T5719 Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de> Differential Revision: https://phab.enlightenment.org/D7781
* Implement missing APIs in elm_photoXavi Artigas2019-01-262-0/+15
| | | | | | | | | | This widget does not seem to support dragging things on top of it, so implement the missing property drag_target as a readonly EINA_FALSE. Ref T5719 Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de> Differential Revision: https://phab.enlightenment.org/D7779
* evas_canvas3d_mesh: implement get methods for efl.file file and mmap propsMike Blumenkrantz2019-01-263-3/+26
| | | | | | | | | | also add unit tests for new methods ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de> Differential Revision: https://phab.enlightenment.org/D7785
* ecore: make ecore_audio_out abstractMarcel Hollerbach2019-01-267-5/+40
| | | | | | | | | | | | | | ecore_audio does define format and source, those are then used in some leave classes, ecore_audio is only used in the tests, and should not be used externally. Therefore make it abstract. The other missing implementations are in the leave classes, They are resolved with providing empty implementations, since no format switching is supported. ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D7782
* evas_canvas3d_primitives: make unused functions emptyMarcel Hollerbach2019-01-261-0/+4
| | | | | | | | | | | it appears that primiteves where not designed to redirect notify calls etc. to its children elements (if there are any). Thus those can be empty. ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D7778
* efl_net_dialer_websocker: set cannot be called hereMarcel Hollerbach2019-01-262-1/+7
| | | | | | | | | | | the state of eos is decided weather on internals, therefore calling set on it does not work, and should never do anything. ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es> Differential Revision: https://phab.enlightenment.org/D7777
* efl_ui_tab_page: implement missing apiMarcel Hollerbach2019-01-262-0/+8
| | | | | | | | unset is now implemented, and is mirrored to the main object, just like in the setter above. Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D7760
* efl_ui_pan: implement content interfaceMarcel Hollerbach2019-01-262-9/+27
| | | | | | | | | | the last two functions for the content interface have been missing. Now the pan object can also unset and set new content ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D7757
* efl_ui_scroller: support the complete efl.content APIMarcel Hollerbach2019-01-262-1/+22
| | | | | | | | | content_get and content_unset was not added. ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D7756
* efl_ui_slider: this does not use anything from Efl.ContentMarcel Hollerbach2019-01-261-2/+1
| | | | | | Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es> Differential Revision: https://phab.enlightenment.org/D7783
* efl: introduce efl_ui_direction_readonlyMarcel Hollerbach2019-01-268-3/+31
| | | | | | | | | | | the readonly mixin implement the efl_ui_direction interface and prints a error in case it is written. ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es> Differential Revision: https://phab.enlightenment.org/D7755
* elm_fileselector_entry: resolve missing interface api by compositionMarcel Hollerbach2019-01-262-0/+4
| | | | | | | | | | | this patch will redirect every elm_interface_fileselector call to the added fileselector button. This resolves the missing fileselector API on the fileselector entry. ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D7754
* elm_fileselector_button: support the whole interfaceMarcel Hollerbach2019-01-264-1/+68
| | | | | | | | | | this adds full support of the full elm_fileselector interface to elm_fileselector_button. ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D7753
* elm_fileselector: improve documentationMarcel Hollerbach2019-01-261-1/+1
| | | | | | | | lets safe up the time of the next one trying to figure out what current_name is. Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es> Differential Revision: https://phab.enlightenment.org/D7752
* elm_code: remove the implementation of efl.access.textMarcel Hollerbach2019-01-261-1/+1
| | | | | | | | | its not implementing any of those functions, so better drop it ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D7751
* elm: add container api for the two objectsMarcel Hollerbach2019-01-264-2/+17
| | | | | | | | | | this resolves unimplemented API by just mirroring the calls to different API calls. ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D7749
* edje: implement container apiMarcel Hollerbach2019-01-263-0/+112
| | | | | | | | | | | | | | | the container api returns the number of added swallows. the content iterator returns a iterator over all swallowed objects. The reason this is only for swallows is that the interface explicitly mentions UI elements at the count. Since i am believing the the result of the count operation should mirror to the amount of elements in the iterator, the iterator only returns swallowed objects. ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D7748
* efl_task: remove efl.io.* interfacesWooHyun Jung2019-01-256-315/+9
| | | | | | | | | | | | Remove efl.io.* interfaces from efl_task, and make other extended classes properly. ref T7657 Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de> Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Reviewed-by: Derek Foreman <derekf@osg.samsung.com> Differential Revision: https://phab.enlightenment.org/D7747
* gesture_manager: Filter events we add hooks forDerek Foreman2019-01-253-2/+23
| | | | | | | | | | | | Gesture manager doesn't care about focus manager events, animation events, and various other things it's currently hooking. We can save a lot of pointer indirection nonsense by only paying attention to events it can actually do something with. Differential Revision: https://phab.enlightenment.org/D7764 Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
* gesture_manager: Use private data getter to save some lookupsDerek Foreman2019-01-253-8/+18
| | | | | | | | | We frequently process an array of several events at once, so we can now look up the gesture manager private data once for the entire array. Differential Revision: https://phab.enlightenment.org/D7763 Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
* gesture_manager: Add a call to get private dataDerek Foreman2019-01-252-0/+9
| | | | | | | | | We end up looking this up multiple times, having a getter will sometimes allow us to get it and use it multiple times. Differential Revision: https://phab.enlightenment.org/D7762 Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
* eolian: clear the unimplemented implement set for each treeDaniel Kolesa2019-01-251-0/+5
| | | | | | | | We keep a hash tracking implements that were already errored on so that we don't print some errors multiple times. The problem is that it wasn't getting cleared when switching to a new inheritance tree so errors from an interface implemented in multiple distinct inheritance trees would only get printed once.
* docs: Fix Efl.Object Freeze and Thaw docsXavi Artigas2019-01-251-13/+28
| | | | | | | | | | | | | | | | | | Summary: Fixes T7641 Test Plan: Only docs affected. Reviewers: zmike, cedric Reviewed By: cedric Subscribers: bu5hm4n, cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T7641 Differential Revision: https://phab.enlightenment.org/D7707
* efl-mono: Add new dependencies to autotoolsFelipe Magno de Almeida2019-01-251-2/+8
| | | | | | | | | | | | | | Summary: This fix make check for csharp bindings Reviewers: woohyun Reviewed By: woohyun Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D7770
* efl_ui_pager : Add missing meson config for pager test.JunsuChoi2019-01-251-0/+2
| | | | | | | it occur to build fail in meson build. Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org> Differential Revision: https://phab.enlightenment.org/D7768
* Revert "Revert "efl_ui_pager: add tests for efl_ui_pager""Stefan Schmidt2019-01-259-0/+1783
| | | | | | | | | | | | This reverts commit a686b7d9fee99c631756eca2ce3e2dad1e296f0d. Turns out in my eagerness to un-break the build I did not check the patch queue before reverting. If I would have done this I would have seen the fix for the break alreay being submitted by Junsu Choi. This is my bad, the two reverts could have been avoid. Sorry. Note to self: give yourself a moment, and check the patch queue, before rushing out a revert. :/
* Revert "efl_ui_pager: add tests for efl_ui_pager"Stefan Schmidt2019-01-259-1783/+0
| | | | | | | | | | | | | This reverts commit 0b79064f4c5c383bf75833c7f3b64cd9a2d37af9. Appreciating the new tests but they are breaking the meson build. /usr/bin/ld: src/bin/elementary/aea5856@@elementary_test@exe/test.c.o: in function `my_win_main': test.c:(.text+0x501e): undefined reference to `test_ui_pager' /usr/bin/ld: test.c:(.text+0x504d): undefined reference to `test_ui_pager_scroll' collect2: error: ld returned 1 exit status Once the meson build break is fixed this could go in again.
* efl_ui_pager: add tests for efl_ui_pagerJaeun Choi2019-01-259-0/+1783
|
* efl_ui_pager: remove unnecessary linesJaeun Choi2019-01-251-20/+5
|