summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-05-22csharp: Add a SafePtr wrapper in debug modedevs/lauromoura/pin-unpinLauro Moura
This wrapper will trigger `ObjectDisposedException` when trying to call a method on object after it was disposed. It is enabled only with `--buildtype=debug` when configuring meson.
2019-05-22csharp: Add test on DelLauro Moura
2019-05-22csharp: Move EoWrapper to a proper fileLauro Moura
2019-05-22benchmark: Increase benchmark granularity even moreLauro Moura
2019-05-21benchmark: Increase benchmark granularityLauro Moura
2019-05-21csharp: Do some iterations on exit.Lauro Moura
So we can kinda properly clean up things before shutting down.
2019-05-21csharp: Fix build under dotnetLauro Moura
2019-05-21csharp: Refactor wrapper lifetime.Vitor Sousa
This commit makes use of the `ownership,shared` and `ownership,unique` events from Efl.Object in order to avoid the C# wrapper from being collected while C code holds a reference to the object. For example, creating a list of items in a for loop and attaching events to them would fails without this commit, as the C# GC may collect the wrapper. The basic idea is that we use a `WrapperSupervisor`, which is stored in the Eo data storage, with a GCHandle allocated for the lifetime of the underlying Eo object. This supervisor takes care of holding either a weak C# reference (when in unique mode, allowing the wrapper to be GC'd) or a hard C# reference (when in shared mode, making the wrapper non-collectable while the Eo has extra references). One limitation is that object graphs can leak if a shared object in the graph - an Eo child for example - stores a hard reference to another object in the graph as a C# field. In this example, this causes the parent to always have a hard C# reference (from the child) as the child is non-collectable due to the parent holding an Eo reference to it.
2019-05-21eo: add events to track the ownership status of an Eo objectVitor Sousa
Summary: Some user code may want to track an object ownership in regard to whether it is kept by just one owner or shared between many owners. This is specially true for code provided by bindings to other programming languages, where different kinds of resource management may take place. The event `ownership,unique` is triggered whenever the object refcount goes from two to one, as a signal that it has just one owner from now on. The event `ownership,shared` is triggered whenever the object refcount goes from one to two, as a signal that it has multiple owners from now on. It will not trigger when further increasing the refcount to any value beyond two. Reviewers: lauromoura, felipealmeida, cedric, bu5hm4n, segfaultxavi Subscribers: #reviewers, woohyun, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8678
2019-05-21eo: benchmark for sharing (i.e. many refs) and them unsharing objectsVitor Sousa
2019-05-21eolian-cxx: Fix some warnings from cppcheckLauro Moura
2019-05-21csharp: Add some testsLauro Moura
- Wrappers losing C# ref while alive in Eo - Inherited instances being collected Also cleanup GC and loop queue before each test
2019-05-21csharp: Split test filesLauro Moura
Make it easier to add new tests
2019-05-21evas/scale_sample: even more code deduplicationXavi Artigas
Summary: how many times was this block of code copied around??? no functional changes Depends on D8848 Reviewers: segfaultxavi Reviewed By: segfaultxavi Subscribers: segfaultxavi, cedric, #reviewers, #committers Tags: #efl_rendering Differential Revision: https://phab.enlightenment.org/D8849
2019-05-21evas/scale_sample: remove unnecessary clamping to mask geometryMike Blumenkrantz
Summary: this is now handled entirely in the masking helper function no functional changes Depends on D8847 Reviewers: segfaultxavi Reviewed By: segfaultxavi Subscribers: segfaultxavi, cedric, #reviewers, #committers Tags: #efl_rendering Differential Revision: https://phab.enlightenment.org/D8848
2019-05-21evas/scale_sample: further deduplicate masking codeMike Blumenkrantz
Summary: by adding a couple extra params to existing functions, we can reuse existing code instead of copying it around and adding more bugs no functional changes Depends on D8846 Reviewers: segfaultxavi Reviewed By: segfaultxavi Subscribers: segfaultxavi, cedric, #reviewers, #committers Tags: #efl_rendering Differential Revision: https://phab.enlightenment.org/D8847
2019-05-21evas/scale_sample: deduplicate masking codeMike Blumenkrantz
Summary: these functions provide identical functionality to the inline blocks no functional changes Depends on D8841 Reviewers: Hermet Reviewed By: Hermet Subscribers: Hermet, cedric, #reviewers, #committers Tags: #efl_rendering Differential Revision: https://phab.enlightenment.org/D8846
2019-05-21Eio: avoid symbolic link on WindowsVincent Torri
Summary: On Windows, symbolic links do not exist Test Plan: compilation Reviewers: zmike, raster, cedric Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8931
2019-05-21eina: move builtin detection to eina_config.hMarcel Hollerbach
Summary: this means we don't need to handle this in the buildtool at all. Reviewers: vtorri, zmike Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8553
2019-05-21eolian: remove @nullable keywordDaniel Kolesa
This was an experiment that never properly took off and was never used by any generator. Its use was highly variable, so it could not be relied upon. We will still want to reverse the current behavior eventually (no null by default), but that will be done with eo file versioning in the future. @feature
2019-05-21docs: remove obsolete docgen from the treeDaniel Kolesa
This has long been replaced with tools/edocgen.git and most likely does not even work.
2019-05-21elm_entry: prevents invalid cursor position updatesBowon Ryu
Summary: sd->cursor_pos is updated in _entry_cursor_changed_signal_cb. Generally, there is no problem. But in some cases, before the _entry_cursor_changed_signal_cb is called there is a situation in which cursor_pos is updated through _elm_entry_efl_ui_widget_theme_apply. In this case, before _entry_cursor_changed_signal_cb is called, in _elm_entry_efl_ui_widget_theme_apply () cursor_pos = sd->cursor_pos; The wrong cursor_pos is set here. Because it is the value before sd->cursor_pos is updated. This causes an invalid cursor position when entering a key into the entry. This patch prevents sd->cursor_pos from being updated with invalid values. Reviewers: zmike, woohyun Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8923
2019-05-21Efl.Ui.Textpath: support center align for each directionShinwoo Kim
Summary: The textpath draws text from the start_angle. User needs to set correct start_angle to center the text. This start_angle could be changed according to each parameters of circle_set such as x, y, radius, direction and text itself. So this patch is introducing direction EFL_UI_TEXTPATH_DIRECTION_CC(W)_CENTER. The center of textpath will be located at the start_angle with this direction. Test Plan: I will add example if this patch is acceptable. Reviewers: Hermet, jsuya Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8892
2019-05-21Efl.Ui.Textpath: draw text immediately in the position.setShinwoo Kim
Summary: Efl.Ui.Textpath was drawing its text on the job. Because of this, textpath was slower than other objects which are scrolling on the same scroller. So this patch makes textpath not use job in the position.set. Reviewers: Hermet, jsuya Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8924
2019-05-20autotools: add new ui_image tests to proper makefileXavi Artigas
2019-05-20elm_test: add efl.ui.image tests which mimic elm_image testsMike Blumenkrantz
Summary: these should look and feel the same as the original tests. should. Depends on D8914 Reviewers: segfaultxavi Reviewed By: segfaultxavi Subscribers: segfaultxavi, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8915
2019-05-20elm_test: fix some bugs in elm_image testsMike Blumenkrantz
Summary: * passing label object to elm_image_file_get * using fill hint during weight set @fix Reviewers: devilhorns Reviewed By: devilhorns Subscribers: devilhorns, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8914
2019-05-20Rename Efl.Orient -> Efl.Gfx.OrientationXavi Artigas
Summary: And the Efl.Orientation interface -> Efl.Gfx.Orientable (with proper c_prefix so it is not too cumbersome to use from C). Also, turned the theme_rotation_apply() parameter into an int to avoid confusion. Fixes T7919 Depends on D8912 Test Plan: Everything continues to build and pass tests Reviewers: zmike, bu5hm4n, cedric, Hermet, Jaehyun_Cho Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Maniphest Tasks: T7919 Differential Revision: https://phab.enlightenment.org/D8926
2019-05-20Merge Efl.Orient and Efl.Flip into the same enumXavi Artigas
Summary: This is similar to how it is in Evas, and simplifies the Efl.Orientation interface, which only needs one property now. Relates to T7919 Test Plan: Everything builds and tests pass. There's only one example of efl_orientation_set() so there's not much to test yet. Reviewers: zmike, bu5hm4n, cedric, Hermet, Jaehyun_Cho Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Maniphest Tasks: T7919 Differential Revision: https://phab.enlightenment.org/D8912
2019-05-20remove Evil.h when not necessary, include evil_private.h when necessaryVincent Torri
Test Plan: compilation Reviewers: zmike, raster, cedric Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8925
2019-05-20evas example: add a png scale down example.Hermet Park
Reviewers: cedric, #committers, zmike Reviewed By: #committers, zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8886
2019-05-20meson: fix installed .eo files and fix cross compileMarcel Hollerbach
Summary: if things are a array in a array, then flattening only seems to work when the first element is a target object. But not when the first element is then also an string, then the string in the array gets concatted and added to root array. This is a meson bug, investigation going on. Additionally, this fixes installed .eo files, as we might want to installed gesture files when we require them in other objects. Reviewers: Jaehyun_Cho, zmike Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8910
2019-05-20Evas: remove Evil.h when not needed and use evil_private when neededVincent Torri
Test Plan: compilation Reviewers: zmike, raster, cedric Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8921
2019-05-20Efl.Pack_Table: remove table_directionXavi Artigas
Summary: The only implementation of this interface, `Efl.Ui.Table`, only supports two fill directions (horizontal or vertical), therefore the table_direction property which supports primary and secondary directions is unnecessarily complicated. Remove it and use only `Efl.Ui.Direction.direction` to select the fill direction. Also, expanded the documentation. Fixes T7962 Test Plan: Everything builds and tests pass. Efl.Ui.Table elementary_test still work. Examples need to be adjusted to stop using table_direction. Reviewers: zmike, YOhoho, bu5hm4n, SanghyeonLee, Jaehyun_Cho Reviewed By: YOhoho Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T7962 Differential Revision: https://phab.enlightenment.org/D8902
2019-05-17bin/ecore_evas: remove useless inclusion of Evil.hVincent Torri
Test Plan: compilation Reviewers: zmike, raster, cedric Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8917
2019-05-17bin/eet and ecore_con: remove Evil.h when not necessary and include ↵Vincent Torri
evil_private.h when necessary Test Plan: compilation Reviewers: raster, zmike, cedric Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8911
2019-05-17eolian tests: rename owning.eo.c to clear confusionDaniel Kolesa
2019-05-17efl_mono: generate efl_canvas_text.eo.csJaehyun Cho
To use canvas text in efl csharp bindings, it is permitted to generate efl_canvas_text.eo.cs.
2019-05-17Eet: remove useless inclusion of Evil.hVincent Torri
Test Plan: compilation Reviewers: raster, zmike, cedric Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8909
2019-05-17bin/efl and ecore: include evil_private.h when appropriateVincent Torri
Test Plan: compilation Reviewers: raster, zmike, cedric Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8908
2019-05-17evas_gesture: fix meson.build to build and install correctlyJaehyun Cho
2019-05-17evas_vg_node: Move change flag value settingJunsuChoi
Summary: _node_change function is only executed when the flag is none to prevent duplicate calls. If CHANGE_MATRIX_FLAG is added to the flag in advance, _node_change function does not operate normally. Test Plan: cd ./src/examples/evas gcc -o evas_vg_simple evas-vg-simple.c `pkg-config --libs --cflags evas ecore ecore-evas eina ector eo efl` -lm ./evas_vg_simple Reviewers: Hermet, kimcinoo, smohanty Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8895
2019-05-16Evil: remove fall through warningVincent Torri
Summary: gcc and clang support the usage of "fall through" comment to suppress this warning Test Plan: compilation Reviewers: raster, zmike, cedric Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8904
2019-05-16Eina: replace Evil.h with evil_private.h and remove Evil.h when not necessaryVincent Torri
Test Plan: compilation Reviewers: raster, zmike, cedric Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8903
2019-05-16docfx: Use the public repo url for www-contentXavi Artigas
Otherwise, you need to have credentials, etc.
2019-05-16eolian: rename eolian_event_c_name_getDaniel Kolesa
This is for consistency with the new eolian_class_c_macro_get as well as for better clarity, as c_name_get is already provided by Object and refers to something else.
2019-05-16eolian: rename eolian_typedecl_enum_field_c_name_getDaniel Kolesa
This is to allow for better object oriented APIs, as the `c_name` field would be inherited from Object. This also makes it more clear in C.
2019-05-16eolian: add API to retrieve the C name of an objectDaniel Kolesa
This is to prepare for type/class renaming support. This adds the necessary API to retrieve C-specific names. Other refactoring is necessary elsewhere for now. This also renames the old API eolian_class_c_name_get to eolian_class_c_macro_get to avoid conflict as well as clarify the intention.
2019-05-16Eo: replace Evil.h with evil_private.hVincent Torri
Test Plan: compilation Reviewers: q66, raster, zmike Reviewed By: q66 Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8905
2019-05-16csharp: fix formatting in generated .eo.cs codesWooHyun Jung
Summary: There was duplicated scope_tab, so I removed it. Test Plan: - ./autogen --enable-csharp-bindings - make Reviewers: lauromoura, felipealmeida, Jaehyun_Cho, YOhoho, segfaultxavi Reviewed By: segfaultxavi Subscribers: segfaultxavi, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8901