summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* csharp: WIP - Avoid string leaksdevs/lauromoura/remove_eina_mono-rebasedLauro Moura2019-12-042-3/+11
| | | | | | | These dicts will tie the lifetime of the native strings to the lifetime of the C# wrapper they are used with. PS: What about strings in struct fields?
* csharp: WIP iterate test to check for leaksLauro Moura2019-12-041-1/+2
|
* csharp: Move collection conversions to a new fileLauro Moura2019-12-036-155/+190
|
* csharp: Add ownership info to AccessorToIEnumerableLauro Moura2019-12-032-6/+11
|
* csharp: Fix passing acessor with ownershipLauro Moura2019-12-037-8/+182
| | | | | | | | When passing an owned acessor from a converted collection we need a way to unpin the passed data when the accessor is freed. This commits adds a thin wrapper around the CArray accessor that unpins the data when freed.
* csharp: Add accessor test receiving a C# collectionLauro Moura2019-12-031-10/+30
|
* csharp: add move information to EnumerableToAccessorLauro Moura2019-12-032-4/+20
| | | | | Still need to fix the converted accessor ownership, maybe by creating a custom accessor class that released the pinned memory when is freed.
* eina_mono: replace Accessor, iterator with IEnumerableYeongjong Lee2019-12-0312-125/+256
|
* csharp: Replace accessor tests with IEnumerable.Lauro Moura2019-12-032-3/+4
|
* FreeBSD: Link against OpenSSL in base.Alastair Poole2019-12-031-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: When pulling in OpenSSL and building against the port there are some linker complications. For example, doing a TLS HTTP transaction will crash in libcurl which was built against OpenSSL in base. If we link against FreeBSD's OpenSSL these issues are resolved. Test Plan: On FreeBSD use the openssl port and build EFL against it. 1) Upload a screenshot in E (segv). 2) Click on a link to image in terminology over HTTPS (segv). Reviewers: bu5hm4n, raster Reviewed By: raster Subscribers: cedric, Peter2121, #reviewers, q66, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D10789
* Efl.Canvas.Gesture_Zoom: typo in docsXavi Artigas2019-12-031-1/+1
|
* tests/ecore_wl2: Add test for ecore_wl2_window_title functionsWoochanlee2019-12-031-0/+20
| | | | | | | | | | | | | | | | | | Summary: tests/ecore_wl2: Add test for ecore_wl2_window_title functions ref T8016 ref D10743 Reviewers: devilhorns Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T8016 Differential Revision: https://phab.enlightenment.org/D10761
* tests/ecore_wl2: Add test for ecore_wl2_window_class functionsWoochanlee2019-12-031-0/+20
| | | | | | | | | | | | | | | | | | Summary: tests/ecore_wl2: Add test for ecore_wl2_window_class functions ref T8016 ref D10743 Reviewers: devilhorns Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T8016 Differential Revision: https://phab.enlightenment.org/D10759
* ecore-wl2: Move ecore_wl2_window_buffer_transform_set to be internalChristopher Michael2019-12-032-11/+11
| | | | | | | This function is unused outside of EFL internals, so there is no need for it to be a public API. ref T8013
* ecore-wl2: Move ecore_wl2_window_buffer_attach to be internalChristopher Michael2019-12-032-18/+18
| | | | | | | As this function is not used outside of EFL itself, it can be moved to be internal and not an exposed API function ref T8013
* Efl.Ui.Spotlight_Container: update docs after push/pop changesXavi Artigas2019-12-031-4/+6
| | | | Differential Revision: https://phab.enlightenment.org/D10784
* efl_ui_spotlight_manager_stack: fix positioningMarcel Hollerbach2019-12-031-4/+20
| | | | | | | | | | | we also need to reemit the position of current active element. Otherwise the indicator will display a wrong value. This is already done in any other spotlight manager. fixes T8499 Differential Revision: https://phab.enlightenment.org/D10782
* efl_ui_spotlight_container: reverse push and pop semanticsMarcel Hollerbach2019-12-032-8/+8
| | | | | | | | | | | before this commit, push would add before the current element, pop would return to the next higher element. after this commit, push would add after the current element, pop would return to the previous element. ref T7991 Differential Revision: https://phab.enlightenment.org/D10781
* eina - threadqueue - revert series of comments that moved to mempoolsCarsten Haitzler (Rasterman)2019-12-031-27/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert "eina: remove no longer used function _eina_thread_queue_msg_block_real_free" This reverts commit 695b44526c968787374fd421327422a6eea710a7. Revert "eina/threadqueue: use mempool_del for hash free function" This reverts commit b0cb3b935a8faf2d67bae38a54683946cb01d0b9. Revert "eina_thread_queue: use normal mempools for block allocation" This reverts commit 14ae3e3dec7866e74f2990dca417eac44da41058. Why? Threadqueue is a highly performance sensitive API. _eina_thread_queue_msg_block_new() may be called quite often. Doing a hash lookup to then find a mempool handle to then allocate from was not the same as what was there and was going to be far more costly. This would have actual performance impact as we have to compute a hash and rummage through a hash, hunt for an environment var too. The original code looked at a spare block pool where blocks *MAY* be of different sizes (not always the same size so using a mempool is actually wrong and will stop threadqueue from being able to send larger messages at all). If you send large messages, larger blocks would have been allocated and put in this pool. In almost all cases the first item in the pool would be big enough so we don't hunt and the find pulls out the first memory, resets the fields that are needed and returns that block. If it needs a bigger one, it does hunt. This is going to be rare that such big blocks are needed so I never tried to optimize this (but it could be done with an array of sizes to make a walk to find the right sized element cheap if the need arises). Performance dropped quite a lot. On aarch64 The above mempool usage dropped message rate from 1037251 msg/sec to 610316. On x86 it was even worse. It dropped from 2815775 msg/sec to 378653. So backing this out sees the message rate is 7.4 times faster and on aarch64 it's 1.7 times faster. So moving to a mempool was actually just wrong (size is not always the same). Also this ended up with a mempool of 64k for thread queue blocks even if we only sent messages sporadically, as opposed to a single 4kb block. So backing this out saves memory by only having 1 or 2 4k blocks around most of the time, not a 64k mempool. So the above patch then follow-on patches were done without accounting for the performance implications. There were good reasons to do what I did - because this code was highly tuned even to the point where I used atomics instead of locks specifically to cut down some contention overhead. Beware when you change something that there may be steep performance implications. 7.4 times faster to go back to what was there is a great example.
* elementary_test: remove duplicated fileStefan Schmidt2019-12-031-396/+0
| | | | | | | | | | This file is identical with test_naviframe.c and has no reference in our build system. Found by the use of the Duplo duplicated code checker tool. Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com> Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de> Differential Revision: https://phab.enlightenment.org/D10777
* gesture_manager: Changed function param to reduce internal function calls.Woochanlee2019-12-037-27/+19
| | | | | | | | | | The filter_event function calling a lot of times when it runs. This can help performance by reducing the number of calls to the efl_data_scope_get() function. Reviewed-by: Hermet Park <hermetpark@gmail.com> Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de> Differential Revision: https://phab.enlightenment.org/D10437
* csharp: Simplify field_argument_assignmentLauro Moura2019-12-021-2/+3
| | | | | | | | | | | | | | Summary: Avoid extra generator calls. Reviewers: jptiz Reviewed By: jptiz Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D10774
* fix jpeg loading which freed the wrong ptrCarsten Haitzler (Rasterman)2019-12-021-6/+8
| | | | | fixes T8497 @fix
* tests/ecore_wl2: Fix bad window testChris Michael2019-12-021-0/+6
| | | | | | | | | | Small patch to fix issue where merge of patch did not go so well, and thus caused Coverity to report an issue where window was not being initialized. ref T8016 fixes CID1408311
* introduce efl_ui_{pager/scroller}Marcel Hollerbach2019-12-028-7/+85
| | | | | | | | | | They are just helpers, so a user does not need to handcreate spotlight managers. This also leaves us the possibility of letting spotlight_managers beeing @beta. ref T7991 Differential Revision: https://phab.enlightenment.org/D10773
* efl_ui_test_spotlight: check correct transitions without animationMarcel Hollerbach2019-12-021-5/+23
| | | | | | | this introduces the test requested in D10701. And checks that all signals are correctly delivered even if animations are frozen Differential Revision: https://phab.enlightenment.org/D10767
* efl_ui_spotlight_container: bring in min / max handlingMarcel Hollerbach2019-12-025-12/+122
| | | | | | | | | | | | | | | the spotlight now is setting the overall correct min and max size on itself. Additionally, the page size is now clamped to the size of the container. Correct min size of the container is defined to the MAX min size of all the content. The correct max size of the container is defined to the MIN max size of all the content. ref T7991 Differential Revision: https://phab.enlightenment.org/D10766
* efl_ui_spotlight: do not inherit from layout anymoreMarcel Hollerbach2019-12-022-10/+1
| | | | | | | | | | | | | | | | | | before we inherited from layout, however the theme of the layout was basically just the event part, and the holder part for the indicator. The indicator part is going to be refactored into something else anyways, since the indicator should be useable on other widgets as well. Which means, only the event part is left, which is only used by the scroller spotlight manager, (and now moved there). With the move from this away we are saving round about 0.2KB of pure edje accounting. Additionally, we are saving in perf 4% that is spend in _efl_canvas_layout_efl_gfx_entity_size_set, which also makes this less CPU intensive when resizing (Or even just starting is also enough). ref T7991 Differential Revision: https://phab.enlightenment.org/D10765
* efl_ui_spotlight_indicator: make this undependend from the main widgetMarcel Hollerbach2019-12-024-5/+60
| | | | | | | | | | | | | | the main widget before presented a layout to hold the indicator, however, for the causual case, this is not really needed. The indicator itself is anyways going to be a more general prupose widget soon, where the layout here can be taken as an starting point. Additionally, this fixes general displaying of the indicator, before the box padding refactor, a padding would have changed the minsize of the mix, this is not the case anymore, which forces us to calculate the minsize of the indicator theme. Differential Revision: https://phab.enlightenment.org/D10764
* efl_ui_spotlight: move event rectangleMarcel Hollerbach2019-12-023-17/+12
| | | | | | | | | | | for now the eventrect was a swallow part, created by the container, set to the edje layout. However, the only real user for this is the scroll spotlight manager. Which means, we have mostly unneeded element resized by edje, which is quite an overhead. With this commit, this is moved to the scroll manager, which makes the usage with stack and plain less memory heavy. Differential Revision: https://phab.enlightenment.org/D10763
* efl_ui_spotlight: ensure correct positioningMarcel Hollerbach2019-12-021-2/+15
| | | | | | | if something is just repositioned, but not resized, it would not have been placed correctly. This fixes that. Differential Revision: https://phab.enlightenment.org/D10762
* efl_canvas_text: documentation for style setAli Alzyod2019-12-021-3/+317
| | | | | | | | | | | | | | | | | Summary: Depends on D10607 Original Material: https://www.enlightenment.org/_legacy_embed/evas_textblock_style_page.html Reviewers: woohyun, segfaultxavi, AbdullehGhujeh Reviewed By: segfaultxavi Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D10729
* efl_part: declare stableMarcel Hollerbach2019-12-021-4/+4
| | | | | | | | | | | | | | | | Summary: last release we declared efl_part.eo stable. But we accidently forgot efl_part()... Reviewers: segfaultxavi Reviewed By: segfaultxavi Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D10772
* tests/ecore_wl2: Add test for ecore_wl2_window_aspect functionsWoochanlee2019-12-021-3/+19
| | | | | | | | | | | | | | | | | | | | Summary: tests/ecore_wl2: Add test for ecore_wl2_window_aspect functions ref T8016 ref D10743 Reviewers: devilhorns Reviewed By: devilhorns Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T8016 Differential Revision: https://phab.enlightenment.org/D10747
* ecore_wl2: Add APIs to get window properies.Woochanlee2019-12-022-0/+78
| | | | | | | | | | | | Summary: Creates APIs to get property. Reviewers: devilhorns Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D10743
* Revert "Revert "evas map: diable high quality texture mapping feature.""Hermet Park2019-12-021-1/+7
| | | | This reverts commit 94c193e40b3111664344bf41beb22006bfab2670.
* eolian_gen: fix fallback 0 default values for slicesDaniel Kolesa2019-12-021-0/+10
|
* eolian: emit correct c_name for keyword builtinsDaniel Kolesa2019-12-021-1/+1
|
* eolian_aux: do not leakMarcel Hollerbach2019-12-021-0/+1
|
* efl_canvas_text: correct password behaviour with efl_text_password_get/setAli Alzyod2019-12-022-1/+12
| | | | | | | | | | | | | | | | | Summary: In simple words: when we create efl_canvas_text object, efl_text_password_get will return TRUE. which is wrong, efl_text_password_get should return FALSE, unless user change the password using efl_text_password_set Reviewers: woohyun, zmike, segfaultxavi, tasn Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D10735
* edje - min calc - ix more regressions due to optimizationsCarsten Haitzler (Rasterman)2019-12-011-4/+0
| | | | | | | | | again 37b55172b0d46d71f772af8fba17e1fb1b7c6c2c broke min size calc. this time it was for mouse cursors. the entry cursor was 0 sized after commit 37b55172b0d46d71f772af8fba17e1fb1b7c6c2c. this disables the "don't cacle if its 0 sized) which isnt a valid thing to skip - you caqn min size calc a 0x0 edje ... and it should then return a valid min size given that design/layout.
* icon_dummy: replace existing image.Alastair Poole2019-12-011-0/+0
| | | | | | | This icon is used whenever an icon cannot be found. It's most commonly found within E itself. The previous iteration has been with us since at least Black and White (theme), which is pre E17. Tried to keep it simple yet informative.
* eo files: Avoid container<ptr(value_type)> usage.Lauro Moura2019-11-2914-20/+20
| | | | | | | | | | | | | | | | | | | Summary: Value types are already assumed to be stored by pointer (e.g. `int val = *(node->data);`) This commit just changes the current usage of the `ptr` modifier in the ptr, not affecting the parser. Reviewers: q66, segfaultxavi, bu5hm4n, felipealmeida Reviewed By: q66 Subscribers: cedric, #reviewers, #committers, brunobelo Tags: #efl Differential Revision: https://phab.enlightenment.org/D10769
* tests/ecore_wl2: Add test for ecore_wl2_window_available_rotations functionsWoochanlee2019-11-291-0/+28
| | | | | | | | | | | | | | | | | | | Summary: tests/ecore_wl2: Add test for ecore_wl2_window_available_rotations functions ref T8016 Reviewers: devilhorns Reviewed By: devilhorns Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T8016 Differential Revision: https://phab.enlightenment.org/D10755
* elementary: stabilize Efl.Ui.Relative_ContainerYeongjong Lee2019-11-291-1/+1
| | | | | | | | | | | | | | | | Summary: ref T8380 Reviewers: segfaultxavi, woohyun, zmike, bu5hm4n, cedric Reviewed By: segfaultxavi Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T8380 Differential Revision: https://phab.enlightenment.org/D10641
* here comes a new exampleMarcel Hollerbach2019-11-292-1/+479
| | | | | Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D10733
* efl_ui_position_manager_grid: avoid zero division caseWooHyun Jung2019-11-291-0/+1
| | | | | | | | This fixes the issue of zero division when columns is zero. Sometimes columns can be zero when "pd->viewport.w = 0". Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de> Differential Revision: https://phab.enlightenment.org/D10768
* vector cache: skip animation update as possible.Hermet Park2019-11-291-2/+11
| | | | | | | Since the vector file data is shareable among the multiple vg instances, vfd could keep the requested frame data already by the other instance. This case vector cache quickly return the vector data withouth any further progress.
* evas vector: operate cached vector file data per evas instances.Hermet Park2019-11-292-7/+8
| | | | | | | each vfd loaders construct vector tree data, these can be belongs to evas instance, they are not likely shareable. We should operate vfd separately.
* docs: nitpickingXavi Artigas2019-11-281-4/+3
| | | | | We should not refer to individual library names anymore. They are all part of EFL now!