Wonki Kim [Mon, 3 Jun 2019 08:04:37 +0000 (17:04 +0900)]
build: fix a tizen am file to follow convention
Change-Id: I3033a39d548cabf87d5b4648e2146a938302b17c
Lauro Moura [Mon, 20 May 2019 23:23:53 +0000 (20:23 -0300)]
csharp: Do some iterations on exit.
So we can kinda properly clean up things before shutting down.
Vitor Sousa [Fri, 31 May 2019 20:43:11 +0000 (17:43 -0300)]
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
Lauro Moura [Fri, 31 May 2019 20:34:59 +0000 (17:34 -0300)]
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
Lauro Moura [Fri, 31 May 2019 19:58:19 +0000 (16:58 -0300)]
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
Xavi Artigas [Fri, 31 May 2019 15:11:04 +0000 (17:11 +0200)]
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
Mike Blumenkrantz [Thu, 30 May 2019 17:16:12 +0000 (13:16 -0400)]
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
Mike Blumenkrantz [Thu, 30 May 2019 17:15:51 +0000 (13:15 -0400)]
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
Mike Blumenkrantz [Thu, 30 May 2019 17:15:43 +0000 (13:15 -0400)]
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
Mike Blumenkrantz [Thu, 30 May 2019 17:15:30 +0000 (13:15 -0400)]
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
Mike Blumenkrantz [Thu, 30 May 2019 17:10:53 +0000 (13:10 -0400)]
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
Mike Blumenkrantz [Thu, 30 May 2019 17:09:19 +0000 (13:09 -0400)]
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
Mike Blumenkrantz [Thu, 30 May 2019 17:09:10 +0000 (13:09 -0400)]
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
Marcel Hollerbach [Thu, 30 May 2019 17:02:12 +0000 (19:02 +0200)]
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
Daniel Kolesa [Thu, 30 May 2019 15:00:52 +0000 (17:00 +0200)]
eolian: use c_name when building complex C symbol names
Marcel Hollerbach [Thu, 30 May 2019 14:57:36 +0000 (16:57 +0200)]
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
Marcel Hollerbach [Thu, 30 May 2019 14:56:54 +0000 (16:56 +0200)]
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
Daniel Kolesa [Thu, 30 May 2019 14:20:09 +0000 (16:20 +0200)]
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.
Xavi Artigas [Wed, 29 May 2019 15:35:19 +0000 (15:35 +0000)]
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
Marcel Hollerbach [Thu, 16 May 2019 17:29:35 +0000 (19:29 +0200)]
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
Change-Id: I1550e754285bfd729a634243d712d0cafd085c18
Marcel Hollerbach [Thu, 16 May 2019 17:13:30 +0000 (19:13 +0200)]
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
Marcel Hollerbach [Sun, 28 Apr 2019 10:28:55 +0000 (12:28 +0200)]
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
Change-Id: I1c2540c15206b50beecf14209cac6557c8900c8f
Godly T.Alias [Thu, 30 May 2019 06:46:27 +0000 (15:46 +0900)]
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
SangHyeon Jade Lee [Thu, 30 May 2019 06:07:42 +0000 (15:07 +0900)]
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
Change-Id: I9a515afca2b6f4fbe8732170d4bc7663c0f2648d
SangHyeon Jade Lee [Thu, 30 May 2019 04:22:03 +0000 (13:22 +0900)]
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
Cedric BAIL [Sun, 28 Apr 2019 18:03:09 +0000 (11:03 -0700)]
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
Cedric BAIL [Sun, 28 Apr 2019 17:59:57 +0000 (10:59 -0700)]
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
Vitor Sousa [Thu, 23 May 2019 18:41:57 +0000 (18:41 +0000)]
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
Christopher Michael [Wed, 29 May 2019 19:37:18 +0000 (15:37 -0400)]
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
Christopher Michael [Wed, 29 May 2019 19:37:13 +0000 (15:37 -0400)]
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
Christopher Michael [Wed, 29 May 2019 19:37:07 +0000 (15:37 -0400)]
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
Christopher Michael [Wed, 29 May 2019 19:36:59 +0000 (15:36 -0400)]
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
Christopher Michael [Wed, 29 May 2019 19:36:53 +0000 (15:36 -0400)]
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
Christopher Michael [Wed, 29 May 2019 19:36:46 +0000 (15:36 -0400)]
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
Daniel Kolesa [Wed, 29 May 2019 19:02:33 +0000 (21:02 +0200)]
eolian: fix unit version check
Lauro Moura [Wed, 29 May 2019 18:13:53 +0000 (18:13 +0000)]
eolian-cxx: Fix some warnings from cppcheck
Differential Revision: https://phab.enlightenment.org/D9052
Cedric BAIL [Sun, 28 Apr 2019 17:58:41 +0000 (10:58 -0700)]
ecore: enable property reflection support in Efl.CompositeModel.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8754
Cedric BAIL [Wed, 29 May 2019 17:49:36 +0000 (13:49 -0400)]
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
Cedric BAIL [Wed, 29 May 2019 17:49:26 +0000 (13:49 -0400)]
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
Stefan Schmidt [Wed, 29 May 2019 16:20:15 +0000 (12:20 -0400)]
ci/travis: add meson windows cross build
Summary:
catchup with the windows cross build autotools build we have and provide
the matching meson build.
Depends on D9042
Reviewers: bu5hm4n, zmike, vtorri
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9043
Stefan Schmidt [Wed, 29 May 2019 16:20:10 +0000 (12:20 -0400)]
travis: re-enable updated mingw windows cross-build
Summary:
Updated mingw toolchain (6.0 plus gcc 9.3) based on Fedora 30.
Also updated ewpi with more and newer cross compiled deps.
Depends on D9041
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9042
Stefan Schmidt [Wed, 29 May 2019 16:20:00 +0000 (12:20 -0400)]
ci: enhance native bootstrap script for cross builds
Summary:
So far we only did generate a newer eolian_gen binary here due to the
frequent changes, but we really need way more native tools when doing the
cross build. Edje_cc, eet and elm_prefs_cc to name them.
Maintaining a special target for these (when they need almost all of
efl/elm anyway) looks like a burden so we are going with a full efl
build. Still speeding it up quite a bit by disabling bindings, examples
and tests when dong the native tooling build.
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9041
Mike Blumenkrantz [Wed, 29 May 2019 13:32:06 +0000 (09:32 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:31:58 +0000 (09:31 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:31:54 +0000 (09:31 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:31:49 +0000 (09:31 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:31:33 +0000 (09:31 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:31:28 +0000 (09:31 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:31:23 +0000 (09:31 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:31:17 +0000 (09:31 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:31:12 +0000 (09:31 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:31:06 +0000 (09:31 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:30:59 +0000 (09:30 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:30:54 +0000 (09:30 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:30:49 +0000 (09:30 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:30:43 +0000 (09:30 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:30:37 +0000 (09:30 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:30:31 +0000 (09:30 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:29:57 +0000 (09:29 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:29:51 +0000 (09:29 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:29:45 +0000 (09:29 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:29:20 +0000 (09:29 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:29:14 +0000 (09:29 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:29:08 +0000 (09:29 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:28:47 +0000 (09:28 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:26:15 +0000 (09:26 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:26:08 +0000 (09:26 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:25:24 +0000 (09:25 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:25:14 +0000 (09:25 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:25:08 +0000 (09:25 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:23:44 +0000 (09:23 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:23:29 +0000 (09:23 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:23:23 +0000 (09:23 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:23:18 +0000 (09:23 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:23:12 +0000 (09:23 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:22:25 +0000 (09:22 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:18:31 +0000 (09:18 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:18:26 +0000 (09:18 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:18:20 +0000 (09:18 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:18:15 +0000 (09:18 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:18:09 +0000 (09:18 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:18:01 +0000 (09:18 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:17:55 +0000 (09:17 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:17:24 +0000 (09:17 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:17:18 +0000 (09:17 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:17:12 +0000 (09:17 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:17:07 +0000 (09:17 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:17:00 +0000 (09:17 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:16:53 +0000 (09:16 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:16:48 +0000 (09:16 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:16:41 +0000 (09:16 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:16:35 +0000 (09:16 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:16:30 +0000 (09:16 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:15:13 +0000 (09:15 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:15:06 +0000 (09:15 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:14:56 +0000 (09:14 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:14:08 +0000 (09:14 -0400)]
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
Mike Blumenkrantz [Wed, 29 May 2019 13:13:10 +0000 (09:13 -0400)]
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
Xavi Artigas [Wed, 29 May 2019 13:13:32 +0000 (15:13 +0200)]
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.
Yeongjong Lee [Wed, 29 May 2019 08:24:30 +0000 (17:24 +0900)]
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