Commit Graph

27348 Commits

Author SHA1 Message Date
Jongmin Lee 56d7f22b51 elm/interface_scrollable: check parameters before using them
Summary: it crashes when calling elm_interface_scrollable_loop_get() function with NULL parameters.

Test Plan: call elm_interface_scrollable_loop_get() function with NULL parameters.

Reviewers: Hermet, woohyun, kimcinoo, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9082
2019-06-11 08:27:49 -04:00
Woochanlee e67c1f28d1 efl_ui_win: Added more gesture config values for gesture manager.
Summary:
https://phab.enlightenment.org/T7544

This is for set config values for gesture manager.

C# will use gesture manager instead of elm_gesture_layer.

Those config values should import to gesture manager to recognize and handle gestures.

Reviewers: segfaultxavi, stefan_schmidt, bu5hm4n, zmike, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: Jaehyun_Cho, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7962
2019-06-11 16:17:48 +09:00
Mike Blumenkrantz 6e048a4069 tests/efl_ui: reset active view counter structs between tests
Summary: this fixes running the tests with CK_FORK=no

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9080
2019-06-10 09:54:22 -04:00
Mike Blumenkrantz 2785c822d1 efl-wl: add missing docs for efl_wl_global_add()
Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8900
2019-06-10 08:57:35 -04:00
Marcel Hollerbach 2ae6055d80 edje_cc: protect array lookup
it seems with those two actions here in the commit, do use id in a
different way the other actions do. This is commit protects against
this.

Differential Revision: https://phab.enlightenment.org/D9078
2019-06-09 13:21:45 +02:00
Alastair Poole e8e637a79a edje_cc_out: Exit instead of segfault on OpenBSD.
Until the cause of these issues can be found exit and
print error messages to console. edje_cc is currently
not reliable on OpenBSD. Until then anyone wanting to
use EFL on this platform will need pre-compiled .edj
files.
Differential Revision: https://phab.enlightenment.org/D9077
2019-06-09 13:15:09 +02:00
Marcel Hollerbach 8ae4dbfb3f efl_ui_active_view: fix view_manager_scroll
the problem that can be observed when clicking permanently on a view in
the view_manager_scroll. You will see things jump arround uncontrolled,
then when you quickly drag and drop, you will also see a lot of weird
moving arround artifacts. The reason for this is, that progress was not
correctly resetted, additionally, mouse_active also was not resetted
correctly in one case.

fix T7988

Reviewed-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Differential Revision: https://phab.enlightenment.org/D9074
2019-06-07 13:20:54 +02:00
Marcel Hollerbach 66010e5a9f efl_ui_active_view: fix plain view_manager
the problem here is, when we update content. We need to unset visibility
to the *old* content, and set visibility to the *new* content. This is
now finally fixed.

fix T8002

Reviewed-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Differential Revision: https://phab.enlightenment.org/D9073
2019-06-07 13:20:47 +02:00
Carsten Haitzler 08ea94e9f9 efreetd - timeout in 2 not 10sec to have fewer hangs on shutdown/exit 2019-06-06 13:52:20 +01:00
Cedric BAIL 1f8d367138 eio: fix Efl.Io.Model properties iterator.
It kind of worked by luck for 6 months, but really shouldn't. This
is now a custom iterator that will walk the string part of the properties
only. It could become a generic iterator if necessary one day, but
for now, it is fine just here.

T7771

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9075
2019-06-05 13:40:26 -07:00
Woochanlee 7ecc1815ba efl_gesture_manager: Delete type property.
Summary:
User already know the gesture type.
And the gesture type(Efl.Event.Description) can't using after binding.

T7959

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7959

Differential Revision: https://phab.enlightenment.org/D9033
2019-06-05 20:31:41 +09:00
Carsten Haitzler a4bcd15498 ecore_evas wl - make ERR's into WRNS as they really are just that 2019-06-04 15:23:55 +01:00
Jaehyun Cho 4e8e1dc280 efl_canvas_animation: fix final_state_keep logic
Previously, final_state_keep did not work correctly with animation
repeat.
e.g. repeat mode is restart and repeat count is 1, then final_state_keep
did not work.

Now, final_state_keep logic has been fixed to work correctly.
2019-06-04 21:57:00 +09:00
Jaehyun Cho 9eb0b28cc7 efl_canvas_animation: fix numerical error on map effect calculation
Previously, for a single canvas animation, map effect was applied in
animator callback without resetting previously applied map effect.
This increased numerical error because each time map effect factors
(e.g. scale, degree) should be calculated based on the current map
coordinates.

To resolve this numerical error, now the previously applied map effect
is reset before applying the current map effect in animator callback.
2019-06-04 21:56:58 +09:00
Taehyub Kim 28adabd214 efl_ui_layout_orientation: fix the bitwise condition logic
Summary: fix the bitwise condition logic

Reviewers: Jaehyun_Cho, zmike

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9067
2019-06-04 20:14:04 +09:00
Carsten Haitzler 223ba9acc3 efl proc/exe envrion work again - after a break earlier on freebsd
efl seemingly has been broken on freebsd for a while - environ the
symbol does not exist for SHARED LIBS on freebsd (discussin had been
had on this already, but i gave up). use dlsym as the escape mechanism
so we build on freebsd again.
2019-06-04 02:23:52 +02:00
Carsten Haitzler 768bb43ed3 elm - tests - generator - be python2 explicit so we build on freebsd
no python bonary there (no symplink) but need to be explicit about
python2 or 3 - so do so and we now build on freebsd...
2019-06-04 02:23:52 +02:00
Mike Blumenkrantz f05c862ac0 elm_test/ui.bg: use full white+opaque for unchecked 'bg color' state
Summary:
using 0,0,0 (black) with 0 alpha (transparent) here causes the clipper for the
image to draw a fully transparent rectangle, which means that no pixels for
the clipped image are visible.

the expectation when using this test is that enabling the bg color will shade
the image with a red tint, and disabling the bg color will return the image to
its normal color. the current version of this test gives the impression that
disabling the color setting on this widget breaks the widget, which is not
accurate. currently.

fix T7984

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7984

Differential Revision: https://phab.enlightenment.org/D9066
2019-06-03 12:55:59 -04:00
Mike Blumenkrantz 012ca46377 gl_generic: directly copy existing image when changing orientation
Summary:
in gl engines, orientation is applied during the draw. this is different from
sw engines where the orientation is directly applied to the internal pixel data
which results in a state change of the object internals.

this preserves image cache state and allows the image to be loaded normally instead
of displaying a black rectangle if orientation is set prior to a texture being
created

@fix
Depends on D8916

Reviewers: Hermet, cedric

Reviewed By: Hermet, cedric

Subscribers: Hermet, cedric, #reviewers, #committers

Tags: #efl_rendering

Differential Revision: https://phab.enlightenment.org/D8918
2019-06-03 08:56:11 -04:00
Marcel Hollerbach bed3fa5904 meson: remove unneeded install: flags
Summary:
when install is not set, meson take the value of install_dir. So when
this is removed, things will continue working correctly.

Reviewers: zmike, stefan_schmidt, cedric, segfaultxavi

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9065
2019-06-03 08:46:29 -04:00
Lauro Moura d83d89e882 csharp: Do some iterations on exit.
So we can kinda properly clean up things before shutting down.
2019-05-31 18:01:04 -03:00
Vitor Sousa fcf5f1d2e2 csharp: Refactor wrapper lifetime.
Summary:
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.

Depends on D8678

Test Plan: `ninja test` and `make test`

Reviewers: lauromoura, felipealmeida, woohyun, segfaultxavi

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9014
2019-05-31 17:44:12 -03:00
Lauro Moura 937da0b12c csharp: Add some tests
Summary:
- Wrappers losing C# ref while alive in Eo
- Inherited instances being collected

Also cleanup GC and loop queue before each test

Reviewers: vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9063
2019-05-31 17:41:14 -03:00
Lauro Moura 37941b757d csharp: Fix testing under dotnet
Summary: Fix LD_LIBRARY_PATH so it can still find the custom exports lib

Reviewers: bu5hm4n, vitor.sousa, segfaultxavi, felipealmeida

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9020
2019-05-31 17:28:00 -03:00
Xavi Artigas a5467e1aec Remove unused Efl.Gfx.Path_Change_Event
Summary:
This struct was throwing documentation warnings, but it turns out it
is unused. Better to remove it for clarity.

Test Plan: Everything builds and passes tests.

Reviewers: zmike, bu5hm4n, cedric, devilhorns

Reviewed By: devilhorns

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9062
2019-05-31 17:41:31 +02:00
Mike Blumenkrantz a17ab7f044 elm_test: add text mask case to masking demo
Summary: Depends on D8853

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8872
2019-05-31 09:19:26 -04:00
Mike Blumenkrantz fd48c95f49 edje_cc: remove compile fails when setting a complex object as a clipper
Summary:
this is now supported
Depends on D8852

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8853
2019-05-31 09:19:26 -04:00
Mike Blumenkrantz 7387410019 elm_test: add smart object mask test to existing masking test
Summary:
this adds another masking functionality using a layout object to the test
when the toggle mask button is clicked enough times
Depends on D8849

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8850
2019-05-31 09:19:26 -04:00
Mike Blumenkrantz 1b4ce987a7 evas: enable setting any object as a clipper
Summary:
now that various other bugs related to clipping/masking/drawing have
been fixed, this "just works"

@feature

Reviewers: Hermet, cedric

Reviewed By: Hermet, cedric

Subscribers: Hermet, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8852
2019-05-31 09:19:26 -04:00
Mike Blumenkrantz d1bc3ea258 elm/fileselector_button: null fileselector model pointer on delete
Summary:
the data for this object may be further referenced during deletion
after this point without triggering errors, so ensure that pointers
which are accessible with api functions do not persist after deletion

@fix

Depends on D8985

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8986
2019-05-30 13:10:53 -04:00
Mike Blumenkrantz d3ef3d6af1 tests/elm: explicitly denote some error/warning messages in unit tests
Summary:
these blocks intentionally trigger warnings/errors, so use test macros
to indicate this

Depends on D8969

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8970
2019-05-30 13:09:19 -04:00
Mike Blumenkrantz ca5b68a620 elm/gengrid: handle gengrid finding of nearest visible item when not realized
Summary:
FIXME--

@fix
Depends on D8960

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8961
2019-05-30 13:09:10 -04:00
Marcel Hollerbach 5292729e37 efl_ui_active_view: reset count to -1 if no content is left
Summary:
otherwise we say content is active that is not active anymore.
This fixes currently failing testcases.

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9057
2019-05-30 19:07:53 +02:00
Daniel Kolesa ba8e4dc17f eolian: use c_name when building complex C symbol names 2019-05-30 17:01:27 +02:00
Marcel Hollerbach 2f28d0c593 efl_ui_active_view: update index accordingly
Summary:
The -1 here only worked for cases where we delete widgets at position 0.
When we are deleting something then we need to stay in the virtual
position where the view is right now, but *then* we need to animate
again into the direction where have real content. This commit ensures
that this is the case

fix T7989

Depends on D9056

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7989

Differential Revision: https://phab.enlightenment.org/D9055
2019-05-30 16:58:53 +02:00
Marcel Hollerbach 65deb248e3 efl_ui_active_view_manager_*: fix bugging animation
Summary:
we should protect against multiple requests to the same "to" index.
Otherwise either the speed could increase dramatically, or we start to
oscilate arround the final position, based on the progress sign.
Those ifs here are fixing it.

fix T7988

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7988

Differential Revision: https://phab.enlightenment.org/D9056
2019-05-30 16:57:14 +02:00
Daniel Kolesa 9cba6a4f0e eolian: allow complete symbol renaming for C
This adds a new unified syntax for giving declarations C names.

Classes: class @c_name(Foo) Foo ...
Types: type @c_name(Foo) Foo: Bar ...
Structs: struct @c_name(Foo) Foo ...

and so on. Type instances properly inherit those. This also cleans
up some other parts of the source code.

Fixes T6716.
2019-05-30 16:29:51 +02:00
Xavi Artigas 8113f3f565 Efl.Ui.Active_View: Update Docs
This should clarify how the different components of this new widget are meant
to be used.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9044
2019-05-30 11:48:19 +02:00
Marcel Hollerbach 37266b93a5 efl.ui.pager: remove!
This can be done with Efl.Ui.Active_View

Reviewed-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8907
2019-05-30 11:48:18 +02:00
Marcel Hollerbach bdc63d57d5 efl_ui_tab_pager: migrate to active_view
This now migrates to active_view. When we get back to this widget for
stabelization. This is only the first step for loosening efl.ui.pager so
it can be removed. For now the API of efl_ui_tab_pager stayes the same.

Reviewed-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8906
2019-05-30 11:48:17 +02:00
Marcel Hollerbach 79fe0121ee efl_ui_active_view: introduce a experimental new widget
this widget tries to replace efl.ui.stack efl.ui.flip & efl.ui.pager
In general those widgets do the same thing, they get content. And
display them with some sort of animations. The new idea here is, that
the basic widget active_view only handles the ownership etc. of the
content that gets added to this. Then there is a view_manager object. The
view_manager object gets notified over the new contents, and requests for
displaying particular contents. The transition then handles those
things.

The version here is feature complete with Efl.Ui.Stack and Efl.Ui.Pager.
Additional features can be implemented in the corresponsing transition
classes. Examples and tests will follow

Reviewed-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8784
2019-05-30 11:48:16 +02:00
Godly T.Alias cdfcd02886 Genlist: Fix for genlist item field update
Summary: Avoid unnecessary operations on unrealized item when item field update is called

Test Plan: Call item_field_update on an unrealized item

Reviewers: cedric, raster, SanghyeonLee

Reviewed By: SanghyeonLee

Subscribers: #reviewers, rajeev.jnnce, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9019
2019-05-30 15:46:53 +09:00
SangHyeon Jade Lee 57233f552c efl_ui: rename list empty item to list placeholder item.
Summary:
legacy full style item is introduced Efl.Ui.ListEmptyItem Class in new Efl Interface,
but using "Empty" name is too ambiguous to present style usage.
Thanks to @cedric and @segfaultxavi,
I found better name for this class, Efl.Ui.ListPlaceHolderItem,
as item hold the place which need to be replaced and relayouted by user generated content.

Depends on D8582

Reviewers: cedric, segfaultxavi, eagleeye

Reviewed By: eagleeye

Subscribers: cedric, #reviewers, segfaultxavi, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9034
2019-05-30 15:40:31 +09:00
SangHyeon Jade Lee 01cb1c32bd efl_ui : refactoring efl.part in item based classes.
Summary:
Most of item-based class will have similar efl.part such as text, icon, end.
creating this efl part per each class will be very hard to maintaining the class
and unnecessary eo generation.
so combine them in efl.parts of efl_ui_item.
sub item classes can use this efl.part by declairing ther own eo definition.

Reviewers: cedric, Jaehyun_Cho, segfaultxavi, eagleeye

Reviewed By: cedric, eagleeye

Subscribers: herb, woohyun, q66, lauromoura, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8582
2019-05-30 15:01:24 +09:00
Cedric BAIL 0e73a88133 ecore: add simple test for property_string_add.
Reviewed-by: Lauro Neto <Lauro Moura <lauromoura@expertisesolutions.com.br>>
Differential Revision: https://phab.enlightenment.org/D8756
2019-05-29 15:53:26 -07:00
Cedric BAIL c84c421267 ecore: add simple logic to generate synthetic string property assembling value of other properties.
I have choosen to use ${} as the property marker, but I am open to other suggestion. Let
me know if you have other suggestion.

This patch also fix recursion on properties changed to properly explore parents dependencies,
avoid infinite loop and emit properties changed by added property logic or property text
on the Efl.ViewModel.

Reviewed-by: Lauro Neto <Lauro Moura <lauromoura@expertisesolutions.com.br>>
Differential Revision: https://phab.enlightenment.org/D8755
2019-05-29 15:53:24 -07:00
Vitor Sousa a86a0931f1 eo: add events to track the ownership status of an Eo object
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.

We also add benchmarks for sharing (i.e. increasing the refcount) and them
unsharing objects, in order to evaluate the performance impact of this patch.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8678
2019-05-29 15:53:23 -07:00
Christopher Michael 343698f7ec evas_inline: Clean up evas_object_plane_changed function
Summary:
This file is full of functions called as:
foo(eo_obj, obj);

Most of them can be reduced to foo(obj); and internally get the eo_obj
with obj->object

This would make it impossible to screw up calling them passing an
unrelated pair, and make calling code a little more readable.

ref T7230
Depends on D9050

Reviewers: raster, cedric, zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7230

Differential Revision: https://phab.enlightenment.org/D9051
2019-05-29 15:37:36 -04:00
Christopher Michael 8c5d5ada65 evas_inline: Clean up evas_object_is_on_plane function
Summary:
This file is full of functions called as:
foo(eo_obj, obj);

Most of them can be reduced to foo(obj); and internally get the eo_obj
with obj->object

This would make it impossible to screw up calling them passing an
unrelated pair, and make calling code a little more readable.

ref T7230

Depends on D9049

Reviewers: raster, cedric, zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7230

Differential Revision: https://phab.enlightenment.org/D9050
2019-05-29 15:37:36 -04:00
Christopher Michael 70ea7ba9da evas_inline: Clean up evas_object_is_opaque function
Summary:
This file is full of functions called as:
foo(eo_obj, obj);

Most of them can be reduced to foo(obj); and internally get the eo_obj
with obj->object

This would make it impossible to screw up calling them passing an
unrelated pair, and make calling code a little more readable.

ref T7230

Depends on D9048

Reviewers: raster, cedric, zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7230

Differential Revision: https://phab.enlightenment.org/D9049
2019-05-29 15:37:36 -04:00
Christopher Michael c10a4dcd18 evas_inline: Clean up evas_object_is_proxy_visible function
Summary:
This file is full of functions called as:
foo(eo_obj, obj);

Most of them can be reduced to foo(obj); and internally get the eo_obj
with obj->object

This would make it impossible to screw up calling them passing an
unrelated pair, and make calling code a little more readable.

ref T7230

Depends on D9046

Reviewers: raster, cedric, zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7230

Differential Revision: https://phab.enlightenment.org/D9048
2019-05-29 15:37:36 -04:00
Christopher Michael 94d1b0f3bf evas_inline: Clean up evas_object_is_visible function
Summary:
This file is full of functions called as:
foo(eo_obj, obj);

Most of them can be reduced to foo(obj); and internally get the eo_obj
with obj->object

This would make it impossible to screw up calling them passing an
unrelated pair, and make calling code a little more readable.

ref T7230

Depends on D9045

Reviewers: raster, cedric, zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7230

Differential Revision: https://phab.enlightenment.org/D9046
2019-05-29 15:37:36 -04:00
Christopher Michael ef23de1ea4 evas_inline: Clean up evas_object_was_visible function
Summary:
This file is full of functions called as:
foo(eo_obj, obj);

Most of them can be reduced to foo(obj); and internally get the eo_obj
with obj->object

This would make it impossible to screw up calling them passing an
unrelated pair, and make calling code a little more readable.

ref T7230

Reviewers: raster, cedric, zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7230

Differential Revision: https://phab.enlightenment.org/D9045
2019-05-29 15:37:36 -04:00
Daniel Kolesa 194d769175 eolian: fix unit version check 2019-05-29 21:02:33 +02:00
Lauro Moura bf1d2d86e4 eolian-cxx: Fix some warnings from cppcheck
Differential Revision: https://phab.enlightenment.org/D9052
2019-05-29 11:26:47 -07:00
Cedric BAIL c96c9a5b83 ecore: enable property reflection support in Efl.CompositeModel.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8754
2019-05-29 11:17:02 -07:00
Cedric BAIL 075d655a19 eina: add test for eina_slstr_copy_new_length.
Summary: Depends on D8800

Reviewers: zmike

Reviewed By: zmike

Subscribers: zmike, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7832

Differential Revision: https://phab.enlightenment.org/D9016
2019-05-29 13:49:36 -04:00
Cedric BAIL 2a3bf30abc eina: add eina_slstr_copy_new_length.
Reviewers: SanghyeonLee, bu5hm4n, zmike, segfaultxavi, lauromoura, felipealmeida, raster

Reviewed By: bu5hm4n, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7832

Differential Revision: https://phab.enlightenment.org/D8800
2019-05-29 13:49:26 -04:00
Mike Blumenkrantz 772f48bdac tests/elm_focus: explicitly set widgets to expand+fill in test
Summary:
some widgets do not create a minimum size for themselves, resulting in
a 0x0 layout which can affect tests that rely on object visibility to
succeed without errors
Depends on D9007

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9008
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 3cafd53212 tests/genlist: fix some shadowed variable warnings
Summary: Depends on D9006

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9007
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 68e299c17e tests/elm: explicitly denote cases where error messages are intentional
Summary:
we want to make it clear in our tests where it is intended that warnings
and errors may occur
Depends on D9005

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9006
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 3a88a71a26 ecore-imf/xim: only call ecore_x_shutdown if init was previously called
Summary:
this isn't a perfect fix, but it's probably the best that can be done
given the current ecore-imf module api which calls the exit() module
function unconditionally during module cleanup even if the module was
never initialized

@fix
Depends on D9003

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9005
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 7b5fa23e9b emotion: don't update crop clipper geometry if crop clipper doesn't exist
Summary:
this object does not exist if no image border is set

@fix
Depends on D9002

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9003
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 05e70b25d5 elm_widget_item_static_focus: check for adapter existence in unrealize cb
Summary:
adapter can be null if it was previously destroyed

@fix

Depends on D9001

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9002
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz b0ab9feadf elm/scroller: return immediately from updating focused scroll region without content
Summary:
there is nothing to update here if the scroller has no content to update

@fix
Depends on D9000

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9001
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz f65ffd257b elm/map: move setting initial zoom to later in construction
Summary:
this ensures that all necessary objects exist in order to successfully
perform the zoom

@fix
Depends on D8999

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9000
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 3ef9e5ac4c elm/list: return early from min_limit_cb if list object is dead
Summary:
no further recalculating should be done on dead objects

@fix
Depends on D8998

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8999
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz f5d92b5297 elm/interface_scrollable: return immediately from setting region if no content
Summary:
this is a valid case and should be handled without erroring

@fix
Depends on D8997

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8998
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 3d6c345dce elm/index: create event_rect[0] earlier in construction
Summary:
this ensures that the object exists during init functions which make calls
on it

@fix
Depends on D8996

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8997
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 16940c5310 elm/genlist: handle genlist finding of nearest visible item when not realized
Summary:
FIXME--

@fix
Depends on D8995

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8996
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz e6cb461ea6 elm/genlist: handle cache item deletion without errors
Summary:
@fix
Depends on D8994

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8995
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 4c405a28ca elm/genlist: trigger unrealize event after unsetting unrealized flag
Summary:
this flag is accessed by other components (e.g., focus) during the event
and so it must reflect the emitted event

@fix
Depends on D8993

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8994
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz ea9399f12a elm/genlist: unify all creation of calc jobs, skip if genlist is dead
Summary:
there is no need to recalculate any genlist attributes if the genlist is
dead

@fix

Depends on D8992

Reviewers: cedric, bu5hm4n

Reviewed By: cedric, bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8993
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 87e589a6b9 elm/gen*: only call focus_object_setup_order_non_recursive if realized
Summary:
this function cannot process unrealized items

@fix
Depends on D8990

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8992
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 9144055498 elm/gengrid: trigger unrealize event after unsetting unrealized flag
Summary:
this flag is accessed by other components (e.g., focus) during the event
and so it must reflect the emitted event

@fix
Depends on D8989

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8990
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz ba3998544b elm/code: check for cursor layout existence before emitting signals to it
Summary:
non-editable widgets do not have this object and will trigger errors

@fix
Depends on D8988

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8989
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 282c7672f6 elm/popup: remove del callback for internal table object during destruction
Summary:
the table object's destruction is no longer relevant after this point and
its callback can trigger unnecessary errors

@fix
Depends on D8986

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8988
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 3f3582af26 elm/fileselector: return early in theme_apply during construction
Summary:
the remainder of this function is used to setup styles for subobjects
which don't yet exist at this point

@fix
Depends on D8984

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8985
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 4046628633 efl_ui/widget: skip updating access info during parent_set(NULL) if dead
Summary:
no need to update access info for dead objects

@fix
Depends on D8983

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8984
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 97a50b43ca efl_ui/video: do not set 0x0 aspect hint
Summary:
this is an error

@fix
Depends on D8982

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8983
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz f1b12b92e4 efl_ui/progressbar: check for part existence before using parts
Summary:
some progressbar styles do not have certain parts, so it's necessary to
check part existence on theme load to avoid triggering unnecessary
errors

@fix

Depends on D8981

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8982
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 6e77c039a7 efl_ui/layout: only freeze internal layout during delete if it exists
Summary:
if the layout object does not exist here then there is nothing to freeze

@fix
Depends on D8980

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8981
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz f4d13d3671 efl_ui/layout: do not trigger sizing eval on subobj delete if layout is dead
Summary: @fix

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8980
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 1986a30162 efl_ui/layout: do not trigger sizing eval on hint change if object is dead
Summary:
this fixes a huge number of errors during object deletion

@fix
Depends on D8979

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8987
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 5e3532655b efl_ui/image: check image object existence before using it in sizing
Summary:
when triggered before the image is loaded, this code cannot be run

@fix
Depends on D8978

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8979
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz c83023565e efl_ui/check: check icon swallow existence before getting its content
Summary:
some check styles do not have this part

@fix
Depends on D8977

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8978
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz dded40c73b eldbus: don't print warnings for user-canceled calls
Summary:
these are intentionally canceled and not something to be concerned with

@fix
Depends on D8974

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8976
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz ca4b517414 efl/io_model: check for parent object existence before removing wref
Summary:
if the wref automatically removes this pointer then there's no need to
remove the wref on the pointer

@fix
Depends on D8973

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8974
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz f1b29fbbe7 ecore-x: protect ecore_x_shutdown from creating a negative init count
Summary:
@fix
Depends on D8972

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8973
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 2cf3dc7a39 ecore-evas: check for internal evas presence before using it during free
Summary:
some engines do not have an evas

@fix
Depends on D8971

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8972
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz f8c8f9c16c efl_ui/button: check icon swallow existence before getting its content
Summary:
some button styles do not have this part

@fix
Depends on D8970

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8971
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 695dfb650a elm/slider: check for interval/range state before using that functionality
Summary:
the part elm.dragable2.slider only exists when the slider is set to range
mode, so verify that this mode is active before attempting to use that part

@fix

Depends on D8968

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8969
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 1051a1ca46 elm/slider: avoid emitting double events when range slider value changes
Summary:
in range mode, there are two slider endpoints, but only one event should be
emitted if a change is detected during update

@fix
Depends on D8967

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8968
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz f0a136f999 elm/map: ignore zoom events during construction which cannot be handled
Summary:
sd->obj is null until after the object is finalized, so this codepath
cannot be processed until then

@fix
Depends on D8966

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8967
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz fb63dfae77 elm: fix value of datadir when running in tree
Summary:
this makes it possible to successfully run elm_test out of the tree
without installing

@fix
Depends on D8965

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8966
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 210ea6a808 elm: don't attempt to load clouseau when running in tree
Summary:
clouseau doesn't work anyway
Depends on D8964

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8965
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz bd5d957364 elm/hovers: don't trigger more errors when setting null hover parent
Summary:
null is not a valid subobject, do not attempt to add it

@fix
Depends on D8963

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8964
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 2e8f714979 elm/gengrid: handle focus events when no previous focus item was set
Summary:
this triggers fewer error messages

@fix
Depends on D8962

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8963
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz da877d9e63 elm/gengrid: more null checks for setting mirrored state during construction
Summary:
sd->obj is only non-null later in construction, so add even more checks for it
here

@fix
Depends on D8961

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8962
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 1ba2a99b9a elm/gengrid: handle cache item deletion without errors
Summary:
@fix
Depends on D8959

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8960
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz a9ef4ab348 elm/entry: use edje functions directly for interacting with edje objects
Summary:
this eliminates a number of errors triggered when processing class hierarchy
to reach the desired subobject with these edje functions

@fix
Depends on D8958

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8959
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 396f150fb4 elm/diskselector: trigger sizing eval during theme set only if finalized
Summary:
this can't be successfully completed until the object has been fully constructed

@fix
Depends on D8957

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8958
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 82697854b3 elm/diskselector: fix handling in theme data setup
Summary:
the previous code checked for the object which was required to execute
the remainder of the function, then returned if that object existed instead
of continuing with the function. hello?

@fix
Depends on D8956

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8957
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz b265bb0e2b elm/colorselector: return early from theme apply if object is not yet finalized
Summary:
the remainder of this function cannot be handled until objects are set up
later in construction

@fix
Depends on D8955

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8956
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz d09edd7242 elm/layout: do not trigger sizing eval at end of canvas_group_add
Summary:
this can never succeed as there will never be an object to successfully
size with at this point

@fix
Depends on D8954

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8955
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 75bdc620a1 elm/layout: do not trigger sizing eval on subobj deletion if no resize_obj set
Summary:
this has no effect since the resize_obj is what determines sizing

@fix
Depends on D8953

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8954
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 0dc166adbd efl_ui_focus_manager/calc: handle redirect setting if no previous redirect set
Summary:
use same pointer for conditional to improve readability, avoid passing null to
efl_ui_focus_manager_reset_history() which cannot be passed null

@fix

Depends on D8952

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8953
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 9c2547db0c eina/prefix: ignore magic files when running in tree
Summary:
this just can't work.

@fix
Depends on D8951

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8952
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 655c816539 eina/file: use INFO log level when eina_file_open fails
Summary:
this function is commonly used to detect the existence of files using
its return value. for this purpose, printing warnings any time the file
cannot be opened is spammy and not very helpful in the context of detecting
actual errors.
Depends on D8950

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8951
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 0f5cec8d51 efl_canvas_layout: permit part_type_get on invalid parts
Summary:
this is the only way to determine whether a part is invalid, so it should
be usable without triggering errors

@fix
Depends on D8948

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8949
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz a8fda441be edje/load: (more) correctly handle part updates after changing edje group
Summary:
if a part changes its type, verify that the new type is compatible AND
exists before attempting to re-set the previous state, otherwise take
action and print warning

@fix
Depends on D8947

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8948
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz bf7b030517 ecore/timer: fix handling of timer freeze during construction
Summary:
timer has no loop pointer until it is finalized

@fix
Depends on D8918

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8947
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 16e6cb7c7f gl_generic: handle image orientation setting when texture has not been created
Summary:
this occurs when orientation is set during image construction

@fix

Reviewers: segfaultxavi, cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl_rendering

Differential Revision: https://phab.enlightenment.org/D8916
2019-05-29 12:29:03 -04:00
Mike Blumenkrantz 738241c0bd edje/calc: correctly handle swallow/group objects as clippers for state clips
Summary:
in the case where the clipper being set was an indirect object, it's necessary
to resolve the lookup for that part and use the actual part object to avoid
setting a placeholder rect as the clipper

@fix
Depends on D8850

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8851
2019-05-29 12:29:03 -04:00
Xavi Artigas f68e93be8d Efl.Ui.Flip: Silence warning
The Efl.Ui.Orientation enum is actually made of flags, which we can OR
together, and it includes bitmasks for easier manipulation.
gcc expects switch() statemenets to include all enum values and nothing
but the valid enum values, which is abit too restrictive for flags.
Casting to int removes the warning.
2019-05-29 15:13:32 +02:00
Yeongjong Lee 56ab05660e efl_ui_relative_layout: prevent infinite loop in chain calculation
Test Plan:
test code
```
EAPI_MAIN int
elm_main(int argc, char **argv)
{
   Eo *win, *layout, *btn1, *btn2, *btn3;

   win =  efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get());
   layout = efl_add(EFL_UI_RELATIVE_LAYOUT_CLASS, win,
                    efl_content_set(win, efl_added));

   btn1 = efl_add(EFL_UI_BUTTON_CLASS, layout);
   btn2 = efl_add(EFL_UI_BUTTON_CLASS, layout);

   efl_ui_relative_layout_relation_right_set(layout, btn1, btn2, 0.0);
   efl_ui_relative_layout_relation_right_set(layout, btn2, btn1, 0.0);

   efl_ui_relative_layout_relation_left_set(layout, btn2, btn1, 1.0);
   efl_ui_relative_layout_relation_left_set(layout, btn1, btn2, 1.0);

   elm_run();
   return 0;
}
ELM_MAIN()
```

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9032
2019-05-29 17:24:30 +09:00
Yeongjong Lee e3a791c4b1 efl_ui_relative_layout: allow to respect the min size of its child
Summary: It will have the same policy as the Efl.Ui.Box, Table.

Test Plan: elementary_test -to 'efl.ui.relative_layout'

Reviewers: Jaehyun_Cho, herb

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9029
2019-05-29 17:24:21 +09:00
Marcel Hollerbach 8721caf787 efl_ui: add a helper for not tollerating errors in a testsuite
Summary:
We now also fail in the focus tests

Depends on D9021

Reviewers: zmike, cedric, segfaultxavi

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9022
2019-05-28 12:01:57 -04:00
Marcel Hollerbach 52b2701bc3 efl_ui_suite: fix errors in focus tests
Summary:
there have been a few cases where things were just wrong. Like missing
regular nodes in a focus manager that received focus, and stuff like
this. This now fixes all those cases.

Reviewers: zmike, cedric, segfaultxavi

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9021
2019-05-28 12:01:50 -04:00
Vincent Torri a21974367c Evil: fix infinite loop with setlocale
Summary: evil_setlocale was defined as setlocale in evil_private.h *before* evil_setlocale, hence evil_setlocale was calling itself. The solution was to not call evil_private.h in evil_locale.c

Test Plan: compialtion and elementary_test

Reviewers: zmike, raster, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7985

Differential Revision: https://phab.enlightenment.org/D9030
2019-05-28 11:37:03 -04:00
Xavi Artigas 93909d89e5 eolian: allow parts named like methods
Summary:
The C# bindings turn parts into class properties, so part names cannot clash
with method names.
However, a "Part" prefix has been recently added, just like it was done for
events, and therefore this eolian restriction can be lifted.
With this patch part name clashes are only checked among parts, just like it
is done for events.

Relates to D8582

Test Plan: Everything still builds, because we have no part-method name clashes in the tree, but now they are possible.

Reviewers: q66, SanghyeonLee

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9031
2019-05-28 17:13:49 +02:00
Alastair Poole 7024b19ab1 build: Fix on OpenBSD.
This adds support for OpenBSD with meson build
system. Also use better paths. This resolves
further issues when building EFL.`

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9028
2019-05-28 12:02:48 +02:00
Jaehyun Cho 48c53841a4 efl_ui_stack: fix not to keep final state of push/pop animations
It is just required to show pushed content and hide popped content after
the push/pop animations.
Therefore, it is not required to keep the final state of the push/pop
animations after finishing the push/pop animations.
2019-05-27 19:50:33 +09:00
Vincent Torri 7a882ab02c ecore_evas win32: fix warning reported by clang
Test Plan: compilation

Reviewers: zmike, raster, cedric, Hermet

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9025
2019-05-27 15:58:51 +09:00
Vincent Torri 0732606118 Evas gesture: do not use abs when dealing with double, use fabs instead
Summary: clang reports a warning here. We compare the result of abs (casting to an int, returning an int) to a double value. Hence we should use fabs instead

Test Plan: compilation

Reviewers: Jaehyun, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9024
2019-05-27 15:56:41 +09:00
Hermet Park 7eef03a041 efl_ui_textpath: redraw text properly.
It needs redraw since text draw depends on the obj' size.
2019-05-27 14:36:44 +09:00
Daniel Kolesa 223c0a0fdc eolian: add runtime API to get file format version
This is useful for FFI based bindings (like the Lua or Python ones)
and so on.
2019-05-26 18:35:48 +02:00
Daniel Kolesa 21790b055b eolian: prevent parsing when eo file version is too new 2019-05-26 18:30:02 +02:00
Daniel Kolesa b4dd54617f eolian: add test for file versioning 2019-05-26 18:26:49 +02:00
Daniel Kolesa 891396897b elua: add version_get API for units in eolian bindings 2019-05-26 18:21:27 +02:00
Daniel Kolesa 7dcbdef56d eolian: add API to query unit version 2019-05-26 18:19:20 +02:00
Daniel Kolesa db1b637fae eolian: initial versioning implementation
This implements initial support for specifying unit versions.
The default version is 1, specifying the basic feature level.

If you want to specify another version, you need to specify
something like `#version 2` at the beginning of the .eo or
.eot file; the version number must be higher than 0 and lower
than USHRT_MAX (typically 65536).

The beginning of the file is now called the "header section";
other things may be added into the header section later.
Version cannot be specified twice, and it cannot be specified
once other contents (like types or class definition) appear.
Comments do not count as other contents, so those are fine
to appear before #version.

@feature
2019-05-26 18:16:01 +02:00
Daniel Kolesa 13ddc5dbc1 eolian: rename @warn_unused and its associated API
@warn_unused in syntax is now called @no_unused - this is because
"warning about unused" is a C thing (or rather, an extension to C)
and various languages might want to use stricter behavior for this.

Its associated API does the reverse now - it lets you query whether
being unused is allowed at all. This is to match future behavior
of Eolian (once it supports versioning) that will likely reverse it.

@feature
2019-05-26 17:41:22 +02:00
Daniel Kolesa d0fed247bb eolian: remove param @nonull
This has been deprecated for a while and is not strictly necessary
- as a part of an effort to stabilize Eolian, remove this. Eolian
will eventually gain support for versioning and use a reversed
behavior (i.e. no NULL by default), but the API it wlll use for
that will be very different. Features can always be added, it's
much harder to drop them.

@feature
2019-05-26 17:25:15 +02:00
Xavi Artigas 38d7d33354 Rename Efl.Ui.Direction -> Efl.Ui.Layout_Orientation
Summary:
This clarifies a bit the whole Orientation vs. Direction confusion, at the
expense of longer names (Image_Orientation vs. Layout_Orientation).
Also, the interfaces are now adjectives (Orientable) and the enums have long
names (*_Orientation).

Pretty big patch, but no functional changes.

Relates to T7863

Test Plan:
Everything builds and passes tests.
Elementary_tests show same behavior, including the "inverted" widgets, which
are the only parts which received a bit of code changes.
Proof:
https://travis-ci.org/Enlightenment/efl/builds/536277282

Reviewers: zmike, bu5hm4n, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8946
2019-05-24 12:30:32 -04:00
Xavi Artigas 00851ea53b Fix last missing reference to old efl_orientation headers
This is now efl_gfx_orientable.
We are not building the C++ examples, so I did not pick this up sooner.
Travis does not build C++ bidings at all.
2019-05-24 11:28:09 +02:00
Jaehyun Cho 663a5ec27a efl_mono: fix autogen make check error
Previously, autogen make check error happened because
some .eo.h files were not generated but were included in
libefl_mono_native_test.h.

Now, all .eo.c and .eo.h files are generated.
Also CLEANFILES are fixed to include all the generated files.
2019-05-24 18:21:59 +09:00
Lauro Moura 8984de4e0c csharp: Fix autotools build
Summary: After the tests split

Reviewers: vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9015
2019-05-23 21:13:23 -03:00
Mike Blumenkrantz 029b20fa82 efl/gesture: include .h file in private header, not .c file
Summary:
a generated eolian c file cannot be included multiple times or else it will
create multiple definitions of symbols defined in that file and break the build

ref 54175998d5
fix T7960

Reviewers: devilhorns, vtorri

Reviewed By: vtorri

Subscribers: cedric, #reviewers, #committers

Tags: #efl_build

Maniphest Tasks: T7960

Differential Revision: https://phab.enlightenment.org/D8945
2019-05-23 13:55:50 -04:00
Mike Blumenkrantz f012eb6d57 elm_widget_item_static_focus: mark param as used
Summary: Depends on D8935

Reviewers: bu5hm4n, devilhorns

Reviewed By: bu5hm4n, devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8936
2019-05-23 09:32:11 -04:00
Mike Blumenkrantz 28ac4d08cc efl_ui_focus_manager_sub: handle manager change when tree is set to unfocusable
Summary:
in this case, the event is emitted and no manager exists because the objects
are not focusable

@fix

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8935
2019-05-23 09:32:00 -04:00
Mike Blumenkrantz 0d8856b24a elm_color_class: use legacy event for genlist selection
Summary:
this fixes the selection callback and makes the widget work again

@fix

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl_widgets

Differential Revision: https://phab.enlightenment.org/D8913
2019-05-23 09:31:50 -04:00
Mike Blumenkrantz bca846d846 evas/render: fix proxy clipping when source_clip is disabled
Summary:
when source_clip is disabled, the clipper used should be the one used by
the proxy object. previously this would never be the case, meaning that
disabling source_clip had no effect

@fix
Depends on D8879

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8880
2019-05-23 09:31:42 -04:00
Vincent Torri e851aa6e52 Emotion gst1 module: fix "empty if statement" warning
Summary: the macro GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS can be undefined (see gst core doc), hence the if statement may have no body

Test Plan: compilation

Reviewers: zmike, raster, cedric, Hermet

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8939
2019-05-23 20:25:27 +09:00
Vincent Torri baaa053659 Emotion gst1 module: remove whitespaces
Reviewers: zmike, cedric, raster, Hermet

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8938
2019-05-23 20:24:46 +09:00
Shinwoo Kim 451959973d Efl.Ui.Textpath: fix a size problem
Summary:
Textpath set its hint_size using its position and calulated path information.
The path information is calculated using center postion, radius & start angle.
For example, if textpath position is 0,0 and center positon of path is 100,100
and radius 50, then text will be located on the rigth side of textpath object.

Moreover there is another problem.

[Step to reproduce]
1. Launch elementary_test
2. open Efl.Ui.Textpath
3. see circle is not center aligned.
4. click Clockwise 1 ~ 2 times center position is changed repeatedly.

This occurs because textpath size is calculated by position_set.
It does not make sense that changing postion defines its size.

So this patch is setting textpath hint_size using only given center position.
The text will position on the middle of textpath object always.

Reviewers: Hermet, jsuya

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8930
2019-05-23 20:11:44 +09:00
Lauro Moura 708f67c488 csharp: Split test files
Summary: Make it easier to add new tests

Reviewers: vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8937
2019-05-22 17:32:46 -03:00
Xavi Artigas 12cab54b9c Rename Efl.Gfx.Orientation -> Efl.Gfx.Image_Orientation
Summary:
This will help disambiguate later on when we rename Efl.Ui.Direction
to Efl.Ui.Layout_Orientation.

Relates to T7919

Test Plan: Everything still builds and passes tests.

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8934
2019-05-22 14:16:16 -04:00
Christopher Michael d15b37eea1 benchmarks: Fix copy-paste error
Coverity reports this as a copy-paste error, and checking the code it
certainly looks that way, so lets call the proper hash function here

Fixes CID1401052

@fix
2019-05-22 08:48:11 -04:00
Hosang Kim 020a59b0f2 ecore_ipc: close dialer io closer when dialer is deleted.
Summary:
dialer uses copier class, so dialer's close on invalidate flag is EINA_FALSE.
Therefore dialer io closer is not closed automatically.

Reviewers: barbieri, raster, Hermet, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8922
2019-05-22 08:01:58 -04:00