If elm_object_item_del is called in pop_cb and pop_cb returns
EINA_FALSE, then the given item is destructed by _item_noref when
efl_unref is called after pop_cb.
After the above destruction, efl_del is called after the above efl_unref
and it deletes the item again.
Not to delete item after the item is destructed, efl_del after pop_cb is
removed.
this is a 1:1 port with minimal changes other than what's necessary to
integrate into the new framework
Differential Revision: https://phab.enlightenment.org/D11383
this is consistent with the rest of efl naming
ref T8503
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D11376
Evaluate return code of mkdir() and print error if it fails.
CID: 1419844
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11429
Coverity pointed these out as we deferences after null check.
Looking into it showed these use of a bitwise operator on vars where it
does not make any sense (to me). They look like wrongly done NULL
checks. Switchign them over to a logical OR operator.
CID: 1419876, 1419869, 1419868, 1419862, 1419854, 1419849
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11432
If dt equals EX_FONTS_DIR we would have returned already.
CID: 1419879
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11430
Handle the error case and propagate the error upwards.
CID: 1419855
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11428
strdup() would not be happy about a NULL to copy, but we have
eina_strdup in place already to handle this gracefully.
CID: 1419846
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11421
Check if we can initialize correctly and return failure if not.
CID: 1419872, 1419864, 1419867, 1419850
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11420
Before we leave the fucntion here we need to free our temporaray paths
variable.
CID: 1419860
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11411
Allocate extra space for the terminating null byte and / of the string.
Switch to snprintf() as well.
CID: 1419863
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11410
Summary:
remove warnings.
../src/bin/elementary/test_ui_spotlight.c:1126:9: warning: 'view' may be used uninitialized in this function [-Wmaybe-uninitialized]
...
Test Plan: N/A
Reviewers: YOhoho, Hermet, Jaehyun_Cho
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11418
Make sure we free local resources before we break.
CID: 1419845
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11414
We need to amke sure we free this images before we return.
CID: 1419848
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11413
We only opened it read only, but this should still be closed before
leaving.
CID: 1419853
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11412
Before we leave the scope here this needs to get free'd up or it will
leak.
CID: 1419877
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11408
If we hit this error path we need to release the allocated buffer.
CID: 1419878
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11407
Summary:
this patch is related with @D11365.
rather than undoing optimization edje calc,
this patch introduces a user_set property which enables edje_calc
to respect user set property.
Reviewers: bu5hm4n, eagleeye, YOhoho, Hermet, zmike
Reviewed By: zmike
Subscribers: zmike, cedric, #reviewers, #committers, woohyun, eagleeye, bu5hm4n
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11366
When a get and/or set from property is defined to return, explicitly,
a Eina.Success_Flag, the mono generator will check the return value
and generate an exception if the call fails.
Resolves T8383.
Reviewed-by: João Paulo Taylor Ienczak Zanette <joao.tiz@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D11281
Adds a special case for "accessor" complex types in `implicit operator` for
structs and `IntPtr`s, in which an IEnumerator must be converted to/from an
IntPtr.
Reviewed-by: YeongJong Lee <cleanlyj@naver.com>
Reviewed-by: Felipe Magno de Almeida <felipe@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D11210
Make Get and Set methods internal for properties that get the
property syntax generated.
Reviewed-by: João Paulo Taylor Ienczak Zanette <joao.tiz@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D11252
Summary:
Json vector animation requires the json loader to be loaded.
Therefore, if the loader does not load,
it prints an appropriate error message and disables the feature.
Depends on D11228
Test Plan: N/A
Reviewers: Hermet, Jaehyun_Cho, id213sin
Reviewed By: Hermet
Subscribers: raster, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11230
so you can see the overflow outside and edje object, add padding as an
option to move the obj inside the win. this means also nuking the
over-engineered box stacking thing... :)
Adds documentation for tuple-value properties (properties with
multiple values), so the following Eo:
```
@property multi_valued_prop {
[[ A multi valued property. ]]
get {}
set {}
values {
prop1: int; [[ Dummy property's first element. ]]
prop2: int; [[ Dummy property's second element. ]]
}
}
```
Generates the following documentation:
```
/// <summary>A multi valued property.<br/>
/// Since EFL *current version*.</summary>
/// <value>A tuple containing the following information:
/// <list type="bullet">
/// <item><description><c>prop1</c> (<c>Item0</c>): Dummy property's first element.</description></item>
/// <item><description><c>prop2</c> (<c>Item1</c>): Dummy property's second element.</description></item>
/// </list></value>
```
Note: This commit also adds a default separator between tag name and
parameters in `generate_opening_tag`.
Ref T8468.
Differential Revision: https://phab.enlightenment.org/D10889
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
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
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
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
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
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
Either commented out, blank lines or no needed includes.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11288
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
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
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
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
spotlight moved away from layout, this could have also been solved with
setting a edje object as resize object. However, this commit now
contains the spotlight internally.
The resons why containing it internally is better:
- You now only have one way of selecting a page, marking it as selection
via the selectable API
- You cannot build race conditions between selecting a page and setting
the active_element anymore
- The tab_pager is now also just a simple single_selectable implementor,
which makes this whole usage more convinient.
- There is now a event you can listen to if you want to know if
something has changed the selected item
- push and pop would have never worked correctly in the tab_pager, as
the item would have appeared always before the item was "faded" in. This
possibility is not given anymore
Last but not least, this makes tab_pager usable again, the tab bar is
displayed again.
Differential Revision: https://phab.enlightenment.org/D10775
EFL failed to build from source in Fedora Rawhide as a result of the update to GCC 10. GCC 10 enables -fno-common by default, and this found three issues in EFL:
# The eina benchmark code defined int key_size in a header that was included in multiple places.
# The elementary test code defines the "dt1", "dt2", "dt3" vars in two code files which are compiled together (but these variables do not appear to be used globally)
# The eio test code defines the "ee" var in two code files which are compiled together (but this variable does not appear to be used globally)
I've fixed these issues and confirmed locally that the code builds again in Fedora.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11259
Summary: There is no reason that `efl_player_playback_position_get` is in blacklist..
Test Plan: meson build -Dbindings=mono,cxx -Dmono-beta=true
Reviewers: Jaehyun_Cho
Reviewed By: Jaehyun_Cho
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D11152
Summary:
Move autoplay and playback_loop method from Efl.Ui.Vg_Animation/
and The playback_loop changed from looping
because it conflict with the efl_ui_scrollable's symbol.
Efl.Ui.Image and Efl.Ui.Image_Zoomable is needed implements about this method.
So it temporarily set the @empty marker.
ref T8476
Test Plan:
elementary_test -to "Vector Graphics Animation"
check to 'loop'
Reviewers: Hermet, bu5hm4n, zmike, Jaehyun_Cho, jsuya
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers, woohyun, kimcinoo
Tags: #efl
Maniphest Tasks: T8476
Differential Revision: https://phab.enlightenment.org/D11212