Commit Graph

65121 Commits

Author SHA1 Message Date
Lucas Cavalcante de Sousa 4f3b3a33f5 efl_mono: Create insert list/array c# wrapper for eina_value.
Implements Insert() method to eina.Value containers (array/list). The
Insert() (src/bindings/mono/eina_mono/eina_value.cs) method wraps native functions implemented with c
(src/lib/eina/eina_inline_value.x).
Resolves T7402

Differential Revision: https://phab.enlightenment.org/D11298
2020-02-13 15:26:50 -03:00
João Paulo Taylor Ienczak Zanette 93d4ffc940 csharp: Prevent using system dll for eflcustomexportsmono
If EFL is installed system-wide, `CustomExports` would use the system
(`/usr`) dll instead of local build's, causing new implemented binding calls to
native functions to crash with no entry point found for them.

This patch fixes it by ensuring that the local build's
`libeflcustomexportsmono.dll` will be used.

Reviewed-by: Felipe Magno de Almeida <felipe@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D11343
2020-02-13 15:22:46 -03:00
SangHyeon Jade Lee 04b82b3f87 evas_textblock : remove wrong condition check for size_t value
Summary:
pos in cursor handle is defined size_t type,
(see efl_canvas_textblock_internal.h)
which is unsigned int, and always bigger or equal to 0.

Reviewers: bowonryu, ali.alzyod

Reviewed By: ali.alzyod

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11333
2020-02-13 20:14:55 +09:00
Hermet Park d62f967ed6 canvas textblock: + null handling 2020-02-13 19:16:01 +09:00
Hermet Park db0f08fbae canvas textblock: + null safety 2020-02-13 19:05:43 +09:00
Hermet Park 680eb03276 ui text: code refactoring
replace unreacheable code with EINA_UNUSED properly
2020-02-13 18:53:33 +09:00
Hermet Park 6684f41626 canvas font: correct wrong masking length.
the masking length should be x2 - x1 otherwise,
it will try to mask over regions with dirty pixels.

@fix
2020-02-13 16:50:21 +09:00
Yeongjong Lee 17f0d23e37 vg_common_json: use %zu for size_t
Summary:
Fixes a compiler warning
```
../src/static_libs/vg_common/vg_common_json.c: In function '_get_key_val':
../src/static_libs/vg_common/vg_common_json.c:16:34: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'unsigned int' [-Wformat=]
```

Test Plan: ninja build

Reviewers: Hermet, jsuya

Reviewed By: jsuya

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11327
2020-02-13 11:31:00 +09:00
Carsten Haitzler 2636853b7f eo - fix - fix alignment of eo object class structs - it was wrong
the alignbment logic was wrong. we have to use the worst case. that
means 8 or 16 byte alignment. eina mempool alignment logic is wrong
for this as it assumes an array of typoes of all the same size...

this fixes crashes seen on armv7 with sigbus in new gesture code which
got unlucky.

@fix
2020-02-12 21:11:18 +00:00
Stefan Schmidt 7c653df450 ci: enable exactness build on travis
Summary:
With exactness merged into efl we can finally enable some exactness
testing on our CI. As a first step we will run around 47 tests from our
elementary_tests recordings.

The base data is already in the specific docker image to avoid
downloading on each run. We also need to use a dedicated branch from the
repo while we are still working out all the problems to make exactness
recordings really independent from their env.

Depends on D11317

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11318
2020-02-12 12:10:07 -05:00
Stefan Schmidt bf2b9adec5 exactness_player: fix running of exactness player after compile fix
Summary:
The last compile fix broke the execution of exactness. When replacing
_POSIX_PATH_MAX with PATH_MAX here we did not catch that it would
overwrite out of bounds here as the original _POSIX_PATH_MAX is limited
to 256 while PATH_MAX can go up to 4096. This screws up the size of the
memset.

Reviewers: zmike, bu5hm4n, vtorri, ali.alzyod

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11317
2020-02-12 12:10:04 -05:00
João Paulo Taylor Ienczak Zanette 9510702ede csharp: Fix managed name when solving Get/SetType name clash
Summary:
If you declare a property called "type", the generated getter method
would be called "GetType", clashing with "System.Object.GetType" method. The
current workaround for that is to straight-forwardly insert the respective
class/abstract's Eolian name into the function name (becoming, for example
"GetMy_ClassType"), sometimes getting inconsistent to not only other methods
but also with documentation (leading to XML errors, since a cref doc would
reference "GetMyClassType", which doesn't exists).

This patch fixes that by wrapping the Eolian name with the already existing
`managed_name` function.

Test Plan: Run ninja tests.

Reviewers: zmike, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11331
2020-02-12 16:43:25 +01:00
Mike Blumenkrantz cc777c05f8 tests/layout: modify api ordering test to verify theme signal emission
ensure that signals queued during construction are always emitted

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11162
2020-02-12 16:04:48 +01:00
Yeongjong Lee 63e20ed28d efl_ui_panes: remove duplicated press/unpress event
pressed/unpressed event will be emitted by efl_input_clickable_press/unpress.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11116
2020-02-12 16:04:45 +01:00
Yeongjong Lee b7db2edeec elc_fileselector: add NULL check for eina_value_type_get
Reviewers: Jaehyun_Cho, Hermet, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11314
2020-02-12 09:07:48 -05:00
Yeongjong Lee 2170a99388 elm_interface_scrollable: prevent calling APIs with NULL edje object
Summary:
Is is unnecessary to call edje_object_ functions if `edje_obj` is NULL.

Also, It prevents printing 6 eo warnings
```
WRN<30343>:eo ../src/lib/eo/eo.c:644 _efl_object_call_resolve() NULL passed to function efl_layout_signal_emit().
```

Test Plan:
`EINA_LOG_LEVELS=eo:2 elementary_test`
`EINA_LOG_LEVELS=eo:3 elementary_test -to focus`

Reviewers: bu5hm4n, Jaehyun_Cho, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11315
2020-02-12 09:07:48 -05:00
Carsten Haitzler 6981d09f9b eina - promise - be safe if no scheduled_entry is there
something is causing a scheduled entry to be called with no scheduled
entry: https://phab.enlightenment.org/T8490 - valgrind trace
aattached. i can't see it so i don't know what. the only protection i
can put in is this.
2020-02-12 09:53:22 +00:00
Xavi Artigas 3e88b3b9f9 Tabs: remove them
They have been known to crash some old compilers and have
severe performance penalties on non-power-of-two architectures
like the Chitauri 13-bit processors.

Tabs also cause eye strain, vomits, brain tumors and bad breath.
2020-02-12 10:44:06 +01:00
Jérémy Zurcher bcdfe21e9e eo : fix 8e6e1860c3, _efl_object_event_future_scheduler_get(…) returns a pointer 2020-02-12 09:08:59 +01:00
Wonki Kim b0a7532dad evas: remove redundant conditions.
Summary:
conditions of the inner and outer statement are identical.
this patch removes a condition of them.

Reviewers: jsuya, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11324
2020-02-12 16:48:16 +09:00
Wonki Kim 8e6e1860c3 eo: remove potentional NULL dereferencing
Summary: this patch removes a potentional NULL dereferencing

Reviewers: jsuya, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11325
2020-02-12 16:47:33 +09:00
Wonki Kim 7417436526 edje_cc : remove potential NULL dereferencing
Summary: this patch removes potential NULL deferencing in edje_cc

Reviewers: jsuya, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11326
2020-02-12 16:47:00 +09:00
Yeongjong Lee 69352e7abe efl_ui_position_manager_list: add NULL check for memory allocation
Reviewers: Jaehyun_Cho, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11312
2020-02-12 16:45:40 +09:00
Shinwoo Kim 2f852c92e8 evas_render: initialize variable
Summary:
evas_object_image_load_region_get could be called with following stack.

(#0) evas_object_image_load_region_get
(#1) evas_render_proxy_subrender
(#2) evas_filter_context_proxy_render_all
(#3) evas_filter_object_render
(#4) evas_object_text_render

This means that evas_object_image_load_region_get is called by text object.
In this case, the load region value has garbabe, and it leads to invalid
memory access which is detected by Assan(T8610).

This patch initialize variable before using evas_object_image_load_region_set.

Reviewers: Hermet, jsuya, bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11316
2020-02-11 09:03:43 -05:00
Yeongjong Lee eb4af00c30 elm perf_test: fix warning of implicit conversion of floating point
Summary:
The result of integral division is converted into floating point.
In order to fix this warning, it changes denominator to double from integer.

Reviewers: Jaehyun_Cho, Hermet, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11313
2020-02-11 08:56:34 -05:00
Hermet Park fbf792896f canvas proxy: fix broken proxy source clip set behavior.
Some internal logic has been wrongly changed while it's on refactoring.

Fixed by reverting it.
2020-02-11 21:45:56 +09:00
Ali Alzyod 4f99a37aee efl.canvas.textblock: allow all white spaces in style string not just space
Summary:
style string can contain any kind of white spaces and it will be fine

For example
```
"font=sans font_size=30 color=red "
```
Is the same as
```
"font=sans\tfont_size=30\n  color=red "
```

Reviewers: woohyun, segfaultxavi, tasn, zmike

Reviewed By: segfaultxavi

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8532

Differential Revision: https://phab.enlightenment.org/D11303
2020-02-11 12:10:00 +01:00
Xavi Artigas f546a57003 docs: ecore_animator's default framerate is 60 not 30
This was changed in 81242af6f9 without updating the docs.
2020-02-11 11:03:49 +01:00
Stefan Schmidt 5f1047c8b4 exactness_player: make use of PATH_MAX define instead of posix variant
The use of _POSIX_ has lead to a compile problem on old Ubuntu (16.04)
versions. We use PATH_MAX everywhere else so follow suit here.

Fixes T8613

Reviewed-by: Ali Alzyod <ali198724@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11305
2020-02-10 14:01:47 +01:00
Hermet Park 98f2c3d5ee evas object: + null check for safety 2020-02-10 21:23:20 +09:00
Alastair Poole 7f727c1366 elm_code_widget: Display cursor within widget.
Only render the cursor when its within the bounds of the
widget.
2020-02-09 21:14:42 +00:00
Lucas Cavalcante de Sousa fdbc2a5b32 efl: `eina_value_list_vinsert` assumes that the position is always valid
Summary:
The eina_value_list_vinsert at src/lib/eina_inline_value.x was not checking if the desired position was valid:
When inserting in an empty list in any out of bounds position it actually createded a list with the head being the desired value.
When inserting in a non-empty list in an out of bounds position caused a c error.
Now both cases return EINA_FALSE

Ref T8611

Test Plan:
Meson configured with -Dbindings=mono,cxx -Dmono-beta=true, and tests runned
with ninja test all.

Reviewers: felipealmeida, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8611

Differential Revision: https://phab.enlightenment.org/D11301
2020-02-07 13:52:15 -05:00
Marcel Hollerbach 1e4713a25c exactness: fix osx build
edje depends on more than just edje_cc.
2020-02-07 15:04:03 +01:00
Ali Alzyod 6ce2698bb5 efl.ui.textbox: prevent longpress + right click from working on scrollbars
summary_: Longpress and right click one textbox scrollbars will not show up the menu.

Reviewers: woohyun, bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8604

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11295
2020-02-07 14:20:29 +01:00
Stefan Schmidt ea3c30ca1e exactness: cleanup some coding style isues
Just a few that I spotted when looking over the code.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11290
2020-02-07 11:31:28 +01:00
Stefan Schmidt 248f3d9d6b exactness: fix init/shutdown handling of efl components in various binaries
The init/shutdown handling for efl libraries was a bit sloppy and
unbalanced in the exactness binaries. Switching over to use
ecore_eas_init/shutdown here instead of doing all libs individually.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11289
2020-02-07 11:31:25 +01:00
Stefan Schmidt 6a4e297ec8 exactness: remove unused code
Either commented out, blank lines or no needed includes.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11288
2020-02-07 11:31:21 +01:00
Stefan Schmidt 93bdf120d0 exactness: remove no longer needed EO and BETA API defines
This has been in place during development and not updated for recent
changes and merge into efl master.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11287
2020-02-07 11:31:18 +01:00
Stefan Schmidt 594643b39e exactness: print out statistics at the end of the run
Given a better overview after the wall of text we are seeing from
starting and stopping jobs in parallel.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11286
2020-02-07 11:31:16 +01:00
Daniel Zaoui 50dbfcf31d exactness: import code from external repo into efl.git
Exactness has been developed in a separate git repo for many years. This
finally moves it over into efl. Having it in tree allows us for easier
testing with our current main target elementary_test and integration
into our CI system (patches for this are work in progress already).

We are only importing the lib and binary for test execution, not the
full set of test data. This is would be over 500MB and thus it will stay
in a different repo and only made available during the actual testing.

[The original patch was made by Daniel Zaoui. Over the course of review
and testing it got extended with build fixes for API changes and mingw
compilation support from Stefan Schmidt and Michael Blumenkrantz]

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11285
2020-02-07 11:31:13 +01:00
Stefan Schmidt 78ad088dd7 elementary: build elementary_test additionally as shared object
For our exactness testing we are dlopen() the elementary_test
executable. Until glibc 2.30 this was posible with -pie, but it changed
in the glibc version. They no longer allow these executables to be
dlopen()'ed.

As a workaround for now we are building elementary_test also as a shared
object file which we load and use in the exactness testing process.

The code came from Marcel Hollerbach and I only tested it and fixed up a
small detail.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11284
2020-02-07 11:31:10 +01:00
Jaehyun Cho e938a34f05 elm_index: keep backward compatibility on size calculation
To keep backward compatibility on size calculation, elm_index implements
group_calculate and the size calculation in the removed sizing_eval is
added to the implemented group_calculate in elm_index.
2020-02-07 16:16:26 +09:00
Daniel Kolesa d815c26f9c eolian: fix missing stringshare_ref
This was properly applied to all cases except this one where it
was overlooked/forgotten. That resulted in the @c_name() feature
with enums being broken because of bad memory.

Fixes T8596.
2020-02-06 14:43:38 +01:00
abdulleh Ghujeh f5e13284d7 Evas Textblock: update obstacle test
Summary:
Update the test to check that the first character is rendered after the obstacle.
To ensure that the obstacle feature keeps working correctly.

Reviewers: ali.alzyod, woohyun

Reviewed By: ali.alzyod

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11033
2020-02-06 15:36:30 +09:00
Marcel Hollerbach e710d42fc0 eolian_cxx: fix a last few since errors
sinace has to be > 1.22 and the tests need to reflect that.
2020-02-05 19:42:44 +01:00
Xavi Artigas debc17e4b4 docs: Remove incorrect doc tag
This was breaking build with cxx bindings enabled.
2020-02-05 18:53:43 +01:00
Ali Alzyod 3560b0f62f evas_object_textbox: deal with <br> <tab> without closing '/'
This causes many issues because textbox functions deals with <br> <tab> differently depending that user write them with or without '/' at the end (for example <br> vs <br/>)
while most functionaliity are the same (like viewing <br> and <br/> are the same).
cursor dealing with these tags can be differently.
now we will assume <br> <tab> are already have there own closing tag, even if it is missing

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11293
2020-02-05 17:41:24 +01:00
Lucas Cavalcante de Sousa 269ed1ca34 bindings-cxx: fix missing @since tags at stable c#/cpp tests
Story:
This revision got landed twice, I do not know what happend, but when i
wanted to land that initially with git phab, something reseted the state
of this revision to the initial version, and also changed the
authorship. This time, this commit contains all changes, and the correct
authorship, sorry for the noise.

Summary:
Add @since tags at stable (not tagged with @beta) `.eo` c#/c++ tests. Doing so,
eolian_enforce_since shouldn't accuse at stable tests.
Depends on D11264
Resolves T8600

Reviewers: zmike, segfaultxavi, woohyun, bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8600

Differential Revision: https://phab.enlightenment.org/D11265
2020-02-05 17:15:33 +01:00
Marcel Hollerbach 534cd92c87 eolian: finally error on missing since tags
this is actaully usefull ... for people not forgetting things.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Differential Revision: https://phab.enlightenment.org/D11266
2020-02-05 16:31:01 +01:00
Marcel Hollerbach 4a81eb6468 eot files: fixup all since tags
these tags have been wrong. eolian does not allow anything < 1.22
2020-02-05 16:30:57 +01:00