Commit Graph

27431 Commits

Author SHA1 Message Date
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
Vincent Torri 8db978aa4c include evil_private.h in last files, and disable symbolic links on Windows in a couple of files
Test Plan: compilation

Reviewers: zmike, raster, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8933
2019-05-22 07:59:05 -04:00
Christopher Michael af70c4ff6d ecore-evas-drm: Check if vblank is supported
Small patch to check if the video driver supports drmWaitVBlank. If
not, we can fall back to timer based animators and avoid freezing (due
to usage of vsync'd animators).

@fix
2019-05-22 07:44:00 -04:00
Christopher Michael ead88ff2ad ecore-drm2: Add API to check if vblank is supported
This patch adds a small API that we can use to check if the current
video driver supports the usage of drmWaitVBlank. This check is
required for certain drivers (like vbox) which do not support
drmWaitVBlank and thus are causing our animators in ecore_evas to
freeze. We can now use this API from within Ecore_Evas to disable
vsync'd animators and fall back to timer based ones.

@feature
2019-05-22 07:44:00 -04:00
Xavi Artigas 3081d9b8ea evas/scale_sample: even more code deduplication
Summary:
how many times was this block of code copied around???

no functional changes
Depends on D8848

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_rendering

Differential Revision: https://phab.enlightenment.org/D8849
2019-05-21 20:27:15 +02:00
Mike Blumenkrantz 7c78938689 evas/scale_sample: remove unnecessary clamping to mask geometry
Summary:
this is now handled entirely in the masking helper function

no functional changes
Depends on D8847

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_rendering

Differential Revision: https://phab.enlightenment.org/D8848
2019-05-21 20:27:05 +02:00
Mike Blumenkrantz 6d0233afb8 evas/scale_sample: further deduplicate masking code
Summary:
by adding a couple extra params to existing functions, we can reuse
existing code instead of copying it around and adding more bugs

no functional changes

Depends on D8846

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_rendering

Differential Revision: https://phab.enlightenment.org/D8847
2019-05-21 20:26:57 +02:00
Mike Blumenkrantz 4542cfcbea evas/scale_sample: deduplicate masking code
Summary:
these functions provide identical functionality to the inline blocks

no functional changes
Depends on D8841

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: Hermet, cedric, #reviewers, #committers

Tags: #efl_rendering

Differential Revision: https://phab.enlightenment.org/D8846
2019-05-21 20:26:45 +02:00
Vincent Torri 03fffc3bdc Eio: avoid symbolic link on Windows
Summary: On Windows, symbolic links do not exist

Test Plan: compilation

Reviewers: zmike, raster, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8931
2019-05-21 13:35:01 -04:00
Marcel Hollerbach 1f0ae2e349 eina: move builtin detection to eina_config.h
Summary: this means we don't need to handle this in the buildtool at all.

Reviewers: vtorri, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8553
2019-05-21 12:28:47 -04:00
Daniel Kolesa 5ea0195661 eolian: remove @nullable keyword
This was an experiment that never properly took off and was never
used by any generator. Its use was highly variable, so it could
not be relied upon. We will still want to reverse the current
behavior eventually (no null by default), but that will be
done with eo file versioning in the future.

@feature
2019-05-21 16:04:35 +02:00
Daniel Kolesa 34ef9c3139 docs: remove obsolete docgen from the tree
This has long been replaced with tools/edocgen.git and most likely
does not even work.
2019-05-21 15:44:30 +02:00
Bowon Ryu b5a7ee2ae4 elm_entry: prevents invalid cursor position updates
Summary:
sd->cursor_pos is updated in _entry_cursor_changed_signal_cb.
Generally, there is no problem.
But in some cases, before the _entry_cursor_changed_signal_cb is called
there is a situation in which cursor_pos is updated through _elm_entry_efl_ui_widget_theme_apply.

In this case,
before _entry_cursor_changed_signal_cb is called,
in _elm_entry_efl_ui_widget_theme_apply ()
cursor_pos = sd->cursor_pos; The wrong cursor_pos is set here.
Because it is the value before sd->cursor_pos is updated.
This causes an invalid cursor position when entering a key into the entry.

This patch prevents sd->cursor_pos from being updated with invalid values.

Reviewers: zmike, woohyun

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8923
2019-05-21 09:30:04 -04:00
Shinwoo Kim 205e5a5fe8 Efl.Ui.Textpath: support center align for each direction
Summary:
The textpath draws text from the start_angle. User needs to set correct
start_angle to center the text. This start_angle could be changed according to
each parameters of circle_set such as x, y, radius, direction and text itself.

So this patch is introducing direction EFL_UI_TEXTPATH_DIRECTION_CC(W)_CENTER.
The center of textpath will be located at the start_angle with this direction.

Test Plan: I will add example if this patch is acceptable.

Reviewers: Hermet, jsuya

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8892
2019-05-21 14:31:12 +09:00
Shinwoo Kim eaa2e12542 Efl.Ui.Textpath: draw text immediately in the position.set
Summary:
Efl.Ui.Textpath was drawing its text on the job. Because of this, textpath was
slower than other objects which are scrolling on the same scroller.
So this patch makes textpath not use job in the position.set.

Reviewers: Hermet, jsuya

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8924
2019-05-21 10:47:58 +09:00
Xavi Artigas ddd306b0eb autotools: add new ui_image tests to proper makefile 2019-05-20 20:25:19 +02:00
Mike Blumenkrantz 748b762697 elm_test: add efl.ui.image tests which mimic elm_image tests
Summary:
these should look and feel the same as the original tests.

should.
Depends on D8914

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8915
2019-05-20 18:23:55 +02:00
Mike Blumenkrantz f9202f6dca elm_test: fix some bugs in elm_image tests
Summary:
* passing label object to elm_image_file_get
* using fill hint during weight set

@fix

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8914
2019-05-20 11:52:20 -04:00
Xavi Artigas e9eb1c825a Rename Efl.Orient -> Efl.Gfx.Orientation
Summary:
And the Efl.Orientation interface -> Efl.Gfx.Orientable
(with proper c_prefix so it is not too cumbersome to use from C).
Also, turned the theme_rotation_apply() parameter into an int to avoid confusion.

Fixes T7919
Depends on D8912

Test Plan: Everything continues to build and pass tests

Reviewers: zmike, bu5hm4n, cedric, Hermet, Jaehyun_Cho

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7919

Differential Revision: https://phab.enlightenment.org/D8926
2019-05-20 11:52:10 -04:00
Xavi Artigas b24fde6787 Merge Efl.Orient and Efl.Flip into the same enum
Summary:
This is similar to how it is in Evas, and simplifies the Efl.Orientation
interface, which only needs one property now.

Relates to T7919

Test Plan: Everything builds and tests pass. There's only one example of efl_orientation_set() so there's not much to test yet.

Reviewers: zmike, bu5hm4n, cedric, Hermet, Jaehyun_Cho

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7919

Differential Revision: https://phab.enlightenment.org/D8912
2019-05-20 11:51:56 -04:00
Vincent Torri a5267d3d9c remove Evil.h when not necessary, include evil_private.h when necessary
Test Plan: compilation

Reviewers: zmike, raster, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8925
2019-05-20 09:10:00 -04:00
Hermet Park c567278b54 evas example: add a png scale down example.
Reviewers: cedric, #committers, zmike

Reviewed By: #committers, zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8886
2019-05-20 08:52:11 -04:00
Marcel Hollerbach ee7a6c9a40 meson: fix installed .eo files and fix cross compile
Summary:
if things are a array in a array, then flattening only seems to work
when the first element is a target object. But not when the first
element is then also an string, then the string in the array gets
concatted and added to root array. This is a meson bug, investigation
going on. Additionally, this fixes installed .eo files, as we might want
to installed gesture files when we require them in other objects.

Reviewers: Jaehyun_Cho, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8910
2019-05-20 08:49:40 -04:00
Vincent Torri 24e4881efb Evas: remove Evil.h when not needed and use evil_private when needed
Test Plan: compilation

Reviewers: zmike, raster, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8921
2019-05-20 08:46:02 -04:00
Xavi Artigas 41866a8855 Efl.Pack_Table: remove table_direction
Summary:
The only implementation of this interface, `Efl.Ui.Table`, only supports two fill
directions (horizontal or vertical), therefore the table_direction property which
supports primary and secondary directions is unnecessarily complicated. Remove it
and use only `Efl.Ui.Direction.direction` to select the fill direction.
Also, expanded the documentation.

Fixes T7962

Test Plan:
Everything builds and tests pass. Efl.Ui.Table elementary_test still work.
Examples need to be adjusted to stop using table_direction.

Reviewers: zmike, YOhoho, bu5hm4n, SanghyeonLee, Jaehyun_Cho

Reviewed By: YOhoho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7962

Differential Revision: https://phab.enlightenment.org/D8902
2019-05-20 13:24:16 +02:00
Vincent Torri 1692ff3890 bin/ecore_evas: remove useless inclusion of Evil.h
Test Plan: compilation

Reviewers: zmike, raster, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8917
2019-05-17 14:02:21 -04:00
Vincent Torri 092114ecc8 bin/eet and ecore_con: remove Evil.h when not necessary and include evil_private.h when necessary
Test Plan: compilation

Reviewers: raster, zmike, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8911
2019-05-17 13:51:50 -04:00
Daniel Kolesa 5922bb268f eolian tests: rename owning.eo.c to clear confusion 2019-05-17 16:08:23 +02:00
Jaehyun Cho a55777c925 efl_mono: generate efl_canvas_text.eo.cs
To use canvas text in efl csharp bindings, it is permitted to generate
efl_canvas_text.eo.cs.
2019-05-17 19:54:48 +09:00
Vincent Torri 40e2f9ba8e Eet: remove useless inclusion of Evil.h
Test Plan: compilation

Reviewers: raster, zmike, cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8909
2019-05-17 11:53:35 +01:00
Vincent Torri 839f22870b bin/efl and ecore: include evil_private.h when appropriate
Test Plan: compilation

Reviewers: raster, zmike, cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8908
2019-05-17 11:53:35 +01:00
Jaehyun Cho 099eb2c315 evas_gesture: fix meson.build to build and install correctly 2019-05-17 19:48:05 +09:00
junsu choi 4e574867e8 evas_vg_node: Move change flag value setting
Summary:
_node_change function is only executed
when the flag is none to prevent duplicate calls.
If CHANGE_MATRIX_FLAG is added to the flag in advance,
_node_change function does not operate normally.

Test Plan:
cd ./src/examples/evas
gcc -o evas_vg_simple evas-vg-simple.c `pkg-config --libs --cflags evas ecore ecore-evas eina ector eo efl` -lm
./evas_vg_simple

Reviewers: Hermet, kimcinoo, smohanty

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8895
2019-05-17 10:44:41 +09:00
Vincent Torri 8b21255bba Evil: remove fall through warning
Summary: gcc and clang support the usage of "fall through" comment to suppress this warning

Test Plan: compilation

Reviewers: raster, zmike, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8904
2019-05-16 13:49:39 -04:00
Vincent Torri ce9cad3a3b Eina: replace Evil.h with evil_private.h and remove Evil.h when not necessary
Test Plan: compilation

Reviewers: raster, zmike, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8903
2019-05-16 13:48:59 -04:00
Daniel Kolesa e5c9f5e76f eolian: rename eolian_event_c_name_get
This is for consistency with the new eolian_class_c_macro_get
as well as for better clarity, as c_name_get is already provided
by Object and refers to something else.
2019-05-16 15:57:39 +02:00
Daniel Kolesa b3a870c7bb eolian: rename eolian_typedecl_enum_field_c_name_get
This is to allow for better object oriented APIs, as the `c_name`
field would be inherited from Object. This also makes it more
clear in C.
2019-05-16 15:52:46 +02:00
Daniel Kolesa 4ab1f2388e eolian: add API to retrieve the C name of an object
This is to prepare for type/class renaming support. This adds
the necessary API to retrieve C-specific names. Other refactoring
is necessary elsewhere for now.

This also renames the old API eolian_class_c_name_get to
eolian_class_c_macro_get to avoid conflict as well as clarify
the intention.
2019-05-16 15:43:52 +02:00
Vincent Torri 7f45f94af0 Eo: replace Evil.h with evil_private.h
Test Plan: compilation

Reviewers: q66, raster, zmike

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8905
2019-05-16 14:36:12 +02:00
WooHyun Jung 60bc434628 csharp: fix formatting in generated .eo.cs codes
Summary: There was duplicated scope_tab, so I removed it.

Test Plan:
- ./autogen --enable-csharp-bindings
- make

Reviewers: lauromoura, felipealmeida, Jaehyun_Cho, YOhoho, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8901
2019-05-16 10:05:28 +02:00
Jaehyun Cho 6da6bd536e efl_canvas_text: fix to set halign correctly
Previously, halign_auto was AUTO_NORMAL when halign was set so the given
halign value could not be applied correctly.

Now, halign_auto is modified to AUTO_NONE before halign is set so the
given halign value is applied correctly.
2019-05-16 13:30:54 +09:00
Mike Blumenkrantz 7c7998b3dc meson: enforce 61s timeout for tests, remove explicit timeouts from build files
unit tests automatically abort with info after 60s, and tests should be run with
an appropriate timeout to avoid conflict with the test runner's default 30s timeout

set explicit timeout in eio test for now because there's still frequent bugs here

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8894
2019-05-15 18:49:51 +02:00
Marcel Hollerbach f417fb26e8 Revert "remove vpath test for user dir the test was broken and fixing is insane"
Summary:
This reverts commit 954a534bc0.

It appears that the concerns from this commit are invalid. The case of
~asdf/ does not have any fallback case, if there is no getpwent on this
system, then there will be simply an error, same for the case of a
missing user. In such a case nothing will be written in the buffer /
returned by eina_vpath. The windows build problem can be
fixed by a simple #ifdef'ing the test code.

Reviewers: raster, zmike, cedric, vtorri

Reviewed By: vtorri

Subscribers: vtorri, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8671
2019-05-15 09:49:48 -04:00
Marcel Hollerbach 81d8d8ee55 efl_ui_frame: migrate to efl.ui.clickable
Summary:
frame now uses efl.ui.clickable, which ensures correct click emittion.
The click event is not needed in the event anymore. However, now
efl,action,press / efl,action,unpress is needed.

Depends on D8825

Reviewers: zmike, segfaultxavi, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8826
2019-05-15 09:09:04 -04:00
Vincent Torri d8cb3e7f71 Evil: move the inclusion of all headers in evil_private.h
Summary: first step for making Evil private. evil_private.h will be included in the EFL source code instead of Evil.h

Test Plan: compilation

Reviewers: raster, cedric, zmike

Reviewed By: raster

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8893
2019-05-15 12:27:37 +01:00
Jaehyun Cho 6fd7c3f727 efl_ui: fix to use Efl.Ui.Widget's "background" and "shadow" part class
To use Efl.Ui.Widget's "background" and "shadow" part class, each widget
inheriting from Efl.Ui.Widget should not use their Part class for
"background" and "shadow" parts.
2019-05-15 19:06:50 +09:00
WooHyun Jung 59ef5ab8f1 Makefile_Cxx: add include dependency with evas/gesture
Summary:
There was a build break when "make check". This patch will
fix the issue.

Test Plan:
- ./autogen.sh --with-tests=regular --enable-csharp-bindings
- make
- sudo make install
- sudo make check

Reviewers: Jaehyun_Cho, CHAN, zmike, segfaultxavi

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8896
2019-05-15 15:14:15 +09:00
junsu choi 10062fd957 ector_software_rasterizer: Improved masking calculation.
Summary:
The memory allocation for the buffer size is improved to
allocate only the width size.

Test Plan: N/A

Reviewers: Hermet, kimcinoo

Reviewed By: Hermet

Subscribers: cedric, #reviewers, smohanty, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8873
2019-05-15 11:22:45 +09:00
Marcel Hollerbach 6a5a5a4303 efl_ui: remove Efl.Ui.Clickable from containers
Summary:
these widgets here are containers, means: they contain items that can be
clicked, but the container itself cannot be clicked. Later on, we should
introduce a new interface which contains events that reflect the clicked
event of theire items.

Depends on D8827

Reviewers: zmike, segfaultxavi, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8828
2019-05-14 15:51:12 -04:00
Marcel Hollerbach 930f481eee efl_ui_tab_bar: remove Efl.Ui.Clickable
Summary:
nothing here uses this directly, and nothing emits events. For now the
implementation is removed. If this is required later on, it can be
readded.

Depends on D8826

Reviewers: zmike, segfaultxavi, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8827
2019-05-14 15:51:06 -04:00
Marcel Hollerbach 282b76e2bd efl_ui_panes: migrate to efl_ui_clickable
Summary:
the implementation of efl_ui_clickable is now used to tricker the
events. efl,action,click and efl,action,click,double is not needed
anymore from the theme.

Depends on D8824

Reviewers: zmike, segfaultxavi, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8825
2019-05-14 15:50:53 -04:00
Marcel Hollerbach 59dab13bfa efl_ui_text: migrate to efl_ui_clickable
Summary:
This now uses the efl_ui_clickable mixin. It is impossible right now to
test this in the test suite, as every single configuration of the
efl.ui.text object is ending up in an error. Which is not allowed in the
test suite. Additionally, simulating clicks on the objects gets it into
some sort of inifinite recursion when asking for cursor positions.

Depends on D8823

Reviewers: zmike, segfaultxavi, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8824
2019-05-14 15:50:47 -04:00
Marcel Hollerbach 8429ffba9c efl_ui_image: migrate to efl.ui.clickable
Summary:
the mixin is now used to emit the events of the mixins. This is verified
by the testsuite. The testsuite needs a special treatment for the
object, because a missing image-file of the object would result in a 0x0
image size.

Depends on D8822

Reviewers: zmike, segfaultxavi, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8823
2019-05-14 15:50:39 -04:00
Marcel Hollerbach 5ca38bfc34 efl_test_clickable: introduce new tests
Summary:
the new test checks if the events are correctly emitted

Depends on D8821

Reviewers: zmike, segfaultxavi, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8822
2019-05-14 15:50:32 -04:00
Marcel Hollerbach bb1388798b efl_ui_button: port to efl.ui.clickable
Summary: Depends on D8820

Reviewers: zmike, segfaultxavi, cedric

Reviewed By: segfaultxavi

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8821
2019-05-14 15:50:25 -04:00
Marcel Hollerbach 64923b8db1 efl_ui: move clickable from efl to efl_ui
Summary:
efl_ui_clickable is now a mixin. The mixin now brings two APIs the press
and unpress API can be used to tell the implementation the state of the
presses. Within the implementation the calls to press / unpress are then
converted to longpress / clicked events.

Reviewers: zmike, segfaultxavi, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8820
2019-05-14 15:50:15 -04:00
Xavi Artigas 7f907ecd9d efl-mono: Use Efl.Ui.Win API instead of Elm.Policy
Summary:
This removes another bit of legacy API from the C# bindings.
This also reverts "elm: Put back Policy and Policy_Quit in EO files"
(a9132a9a66) so that these two Elm enums are
definitely out of the EO files.

Test Plan:
Everything, including mono bindings, continue to build.
At runtime, C# apps still exit when all windows are closed.

Reviewers: lauromoura, vitor.sousa, q66

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8890
2019-05-14 14:33:21 +02:00
Woochanlee 54175998d5 Gesture Manager: Add gestures and fix gesture managing, recognizer logic.
Summary:
https://phab.enlightenment.org/T7544

Provides a way for a user to get a gesture manager, recognizer instance.

Supports different recognizer properties for each target(Eo).

Gesture, Touch Class Life-cycle re-implementation. for supporting multiple touches.

Add below gestures.
efl_canvas_gesture_tap
efl_canvas_gesture_double_tap
efl_canvas_gesture_triple_tap
efl_canvas_gesture_long_tap
efl_canvas_gesture_momentum
efl_canvas_gesture_zoom
efl_canvas_gesture_flick

Test Plan:
Simple test -> test_gesture_framework.c
More test cases will upload.

Reviewers: woohyun, smohanty, segfaultxavi, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: Jaehyun_Cho, segfaultxavi, cedric

Tags: #efl, #do_not_merge

Differential Revision: https://phab.enlightenment.org/D7579
2019-05-14 16:37:20 +09:00
Lauro Moura f93eb3fc04 csharp: Fix event marshalling for value types
Summary:
It was wrongly assuming value types were passed by value.

As stated in the documentation, all arguments are passed with a single
level of indirection.

Fixes T7957

Reviewers: woohyun, felipealmeida, vitor.sousa, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7957

Differential Revision: https://phab.enlightenment.org/D8889
2019-05-14 08:49:17 +02:00
Marcel Hollerbach b3d7e9128b elc_fileselector: make a few events again legacy
Summary:
the events changed here should not be used. They should use legacy
events.

Depends on D8816

Reviewers: zmike, segfaultxavi, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8819
2019-05-13 15:14:20 -04:00
Marcel Hollerbach 41e1dadbf1 elementary: do not emit new events in legacy
Summary:
This commits prepares the tree in order to mess with the events in the
Efl.Ui.Clickable event. Events which have been emitted in a none legacy
widget, are now emitted either with evas, when the widget is legacy due
to inheritance. Or via the normal event and normal event functions.

In case the widget is a legacy only widget (not used at all in the new
api), then the events are for now emitted with
evas_object_smart_callback_call.

Cases where event handlers have been added to legacy widgets, smart
events are now used, and not the eo one anymore.

ref T7844

Depends on D8813

Reviewers: cedric, zmike, segfaultxavi

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7844

Differential Revision: https://phab.enlightenment.org/D8816
2019-05-13 15:14:13 -04:00
Marcel Hollerbach d29edceade efl_ui_clickable: move repeat event
Summary:
the repeat event is only emitted by the implementations of
efl_ui_autorepeat. Additionally, the event should only be used by those
who implement this interface.

Depends on D8832

Reviewers: zmike, segfaultxavi, cedric

Reviewed By: zmike, segfaultxavi

Subscribers: jpeg, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8813
2019-05-13 15:14:03 -04:00
Marcel Hollerbach 4a7dc32f61 elm_panel: do not use the unfocusable state here
Summary:
the widget itself is a focus_layer which means, the tree is orphaned and
cannot be accessed until the panel is visible. There is not need for us
to manually track this state.

fix T7908
Depends on D8831

Reviewers: marcellus, zmike, segfaultxavi, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7908

Differential Revision: https://phab.enlightenment.org/D8832
2019-05-13 15:13:54 -04:00
Mike Blumenkrantz 787c270223 evas/image: fix broken auto_fill mechanism when manually changing fill
Summary:
if auto_fill is set (which is the default for image objects), manually setting
the fill for the image would previously only persist until the image was resized,
at which point the auto_fill would activate and re-set the image's fill to be
the same as the image's object geometry

this fixes the auto_fill behavior to stop modifying the image's fill geometry
if the fill is manually changed by the user, which fixes using fill on most
image objects

@fix

Reviewers: cedric, Hermet

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8879
2019-05-13 11:45:13 -04:00
Mike Blumenkrantz 01ce5a1249 evas/scale_sample: call alloca for the scanline buffer after clamping width
Summary:
this is already a risky call for larger scanlines, so use the clamped value
to further reduce the chance of blowing out the stack

Depends on D8839

Reviewers: cedric, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, #reviewers, #committers

Tags: #efl_rendering

Differential Revision: https://phab.enlightenment.org/D8840
2019-05-13 11:44:27 -04:00
Mike Blumenkrantz 20cefc8db2 evas/scale_sample: fix mask geometry clamping in scale thread
Summary:
the 'y' parameter is not relevant here. this clamping exists solely
to avoid reading outside the bounds of the mask, and 'y' is the scanline
at which to begin the masking

subtracting the mask size here does not make sense: we are attempting to clamp
to the size of the mask in order to avoid buffer over-read, so this means that
we are mapping the maximum y coordinate of the mask (mask_y + mask_h) to be
relative to the clipped y coordinate (dst_clip_y)

Depends on D8838

Reviewers: cedric, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, #reviewers, #committers

Tags: #efl_rendering

Differential Revision: https://phab.enlightenment.org/D8839
2019-05-13 11:44:18 -04:00
Mike Blumenkrantz fa983e9ff1 evas/scale_sample: slightly refactor some mask geometry clamping
Summary:
this was a bit confusing to read since the comparators are not ordered
as expected

no functional changes

Depends on D8837

Reviewers: cedric, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, #reviewers, #committers

Tags: #efl_rendering

Differential Revision: https://phab.enlightenment.org/D8838
2019-05-13 11:44:11 -04:00
Mike Blumenkrantz 15693d3b37 evas_render: deduplicate mapped mask render code
Summary:
this code block was repeated multiple times throughout the function

no functional changes

Reviewers: cedric, kimcinoo

Reviewed By: kimcinoo

Subscribers: kimcinoo, #reviewers, #committers

Tags: #efl_rendering

Differential Revision: https://phab.enlightenment.org/D8837
2019-05-13 11:44:02 -04:00
Carsten Haitzler 346e5d1324 edje src - mark with efl version so we don't get warnings 2019-05-13 14:40:08 +01:00
Carsten Haitzler 96c3edd701 ecore drm2 - fix warnigns in DBG eina logs for long types
on 32bit longs are 32bit so cast appropriately to not have warnings.
2019-05-13 14:27:00 +01:00
Carsten Haitzler a8d1c7d8ad eina - value - test - cats warnings on 32bit to get some silence
longs will be truncated on 32bit in these tests so be explicit to not
have warinings.

note - eina value tests are broken on 32bit anyway already - the
conversions to/from long types are broken and fail. this doesn't fix
that.
2019-05-13 14:27:00 +01:00
Xavi Artigas a9132a9a66 elm: Put back Policy and Policy_Quit in EO files
In e027ad2626 these enums were moved to header files, which is correct,
since they are legacy and should not be present in EO files.
However, the C# bindings are still using them.
Until nobody is using these two enums, adding them back to EO fixes the build.
2019-05-13 11:27:40 +02:00
Hermet Park 7ef58f9581 evas png: apply interpolation when scale down image loading.
Summary:
This patch improves png quality when image uses scale-down at image loading.

Since current scale-down logic just works like point sampling,
image result could be wholely different,

Simply, if source data is consist of continous white and black pixels,
and scale down factor is 2, the sampled data would be only white,
and lose all black pixels, or vice versa.

The result can be unexpected by users.
Even current jpeg scale-down works with interpolation.

Before:
{F3711651}

After:
{F3711652}

Original:
{F3711653}

Reviewers: cedric, raster, #committers, kimcinoo, jsuya

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8788
2019-05-13 15:47:22 +09:00
Jaehyun Cho 9d28d91626 efl_mono: generate efl_canvas_vg_object.eo.cs by meson
This commit is the same as 0e8f289d7d
but this commit is for meson.

To use vector graphics in efl csharp bindings, it is permitted to
generate efl_canvas_vg_object.eo.cs.

Other efl_canvas_vg .eo.cs files have already been generated because the
file names were changed from efl_vg to efl_canvas_vg.
2019-05-13 13:30:14 +09:00
Jaehyun Cho ecce35c555 efl_mono: move libeflcustomexportsmono.so to lib with versions by meson
meson generates libeflcustomexportsmono.so to lib/efl-mono-1/ directory
unlike other so files.
Moreover, the so file does not have versions in the file name unlike
other so files.

Like other so files, libeflcustomexportsmono.so is moved to lib
directory with versions in the file name.
2019-05-13 13:30:08 +09:00
Shinwoo Kim 4e6539725e Efl.Ui.Textpath: enhance to support legacy API
Summary:
The legacy API is available after https://phab.enlightenment.org/D7033 but
internal function does not care of it. This change makes textpath work with
the legacy style file(./data/elementary/themes/edc/elm/textpath.edc).

Reviewers: Hermet, jsuya

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8875
2019-05-13 13:09:24 +09:00
Myoungwoon Roy, Kim fe56c04b59 docs: Fix a wrong ingroup name of textpath.
Summary:
This patch fixes the wrong ingroup name of elm_textpath APIs.
Elm_Textpath had been defined in elm_textpath.h
enum values had been included into Efl_Ui group
So I had modified all APIs and enum values to be inclused in Elm_Textpath_Group.

Test Plan: run unit test cases

Reviewers: segfaultxavi, cedric, zmike, Hermet

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8885
2019-05-13 13:06:54 +09:00
Marcel Hollerbach 09a4731813 efl_canvas_animation: reply on the correct API
the animation itself does not implement the player interface, and
nothing forces it to do so. Additionally, we should ask the reference
object for the current progress. Not the animation object.

This fixes pos_set / pos_get.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D8783
2019-05-12 11:56:05 +02:00
Vincent Torri 59f8516ec5 eina vpath: fix warning on Windows, as well as the public path
Differential Revision: https://phab.enlightenment.org/D8866
2019-05-12 11:56:04 +02:00
Cedric BAIL c75415ae36 eina: add tests for the new Vpath syntax.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8884
2019-05-11 08:52:09 -07:00
Cedric BAIL 370917751f eina: update vpath to also support a more classic syntax for variable.
This enable vpath to recognize also ${} as a variable. It does mimic
what Efl.ViewModel provide with Efl.ViewModel.PropertyText and various
other language.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8883
2019-05-11 08:52:07 -07:00
Cedric BAIL 9c992c05d5 eina: refactor and simplify vpath.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8882
2019-05-11 08:52:05 -07:00
Cedric BAIL e23e7be07c ecore: forgotten autotools update. 2019-05-10 17:58:33 -07:00
Romain Naour ee64f61a68 libunibreak: add missing __has_attribute definitions for old compilers
__has_attribute has been introduced with gcc 5 [1].

[1] https://www.gnu.org/software/gcc/gcc-5/changes.html

Fixes:
http://autobuild.buildroot.net/results/64ab825048fac1654b0d0698740ddf857fcc0afa/build-end.log
Signed-off-by: Cedric BAIL <cedric.bail@free.fr>
2019-05-10 17:56:29 -07:00
Cedric BAIL 5fa78a44d8 elementary: move Fileselector to rely on Efl.FilterModel for filtering instead of custom logic.
This simply a bit the logic of things, but more refactoring would be nice for this widget.

Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8799
2019-05-10 11:00:35 -07:00
Cedric BAIL c1204d88f6 ecore: add a test for the new Efl.FilterModel.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8798
2019-05-10 11:00:33 -07:00
Cedric BAIL fd35f6c193 ecore: add Efl.Filter_Model
This model provide facility to filter the content of composited model.

Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8797
2019-05-10 11:00:31 -07:00
Vincent Torri 7b44b02e10 elementary genlist: fix potential uninitialized variable.
Test Plan: compilation

Reviewers: raster, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8874
2019-05-10 10:01:59 -04:00
Vincent Torri 84e6fabbb3 Ecore_Exe: fix warning on Windows
Summary: ExitProcess() has not the signature expected by CreateRemoteThread()

Test Plan: compilation

Reviewers: raster, zmike, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8870
2019-05-09 14:09:08 -04:00
Cedric BAIL 524139a16f ecore: make sure that ecore stay initialized during the full test.
efl_app_test_promise.c is slightly special and corrective action have to be
taken to make sure that ecore_init return the right value when the no fork
mode of libcheck is used.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8566
2019-05-09 10:15:49 -07:00
Cedric BAIL dac867bb24 ecore: refactor Efl.CompositeModel to provide child allocation to other internal Model.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8796
2019-05-09 09:33:31 -07:00
Cedric BAIL 7b7ad5380a ecore: property handle allocation error in Efl.CompositeModel.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8795
2019-05-09 09:33:29 -07:00
Cedric BAIL eb1d47349b eina: always initialize all the field of Eina_Value used by Eina_Promise.
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8794
2019-05-09 09:33:27 -07:00
Cedric BAIL c559bdf809 eio: correctly set reference count of cached child object.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8793
2019-05-09 09:33:25 -07:00
Daniel Kolesa 6312cafe20 eolian: move from eo_prefix to c_prefix 2019-05-09 16:17:44 +02:00
Daniel Kolesa 49209553f6 edje_types: (re)move legacy types to header
These are not used anywhere in eo files, so no point in keeping
them around in their legacy form.
2019-05-09 15:19:13 +02:00
Daniel Kolesa e027ad2626 elm: (re)move some legacy types/enums back to header
These are legacy-only and not used anywhere in .eo files, so
move them where they belong. They are still used within impls
around the place. The others can't be moved as they are still
used in .eo files in places, that has to be dealt with separately.
2019-05-09 15:03:00 +02:00
Carsten Haitzler 22081ada26 much better fix to invalid uv coords with new map render code
this fixes the d81d1337b0 fix to do it
in the inner loop so uu and vv stay valid. still not a great fix but
better than chashes.
2019-05-09 12:30:17 +01:00
junsu choi c10dfc3bca ector_software_rasterizer : Move duplicate alloca
Summary: Move the alloca() outside of the loop.

Test Plan: N/A

Reviewers: Hermet, kimcinoo

Reviewed By: Hermet

Subscribers: cedric, #reviewers, smohanty, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8869
2019-05-09 19:30:37 +09:00
Jaehyun Cho 0e8f289d7d efl_mono: generate efl_canvas_vg_object.eo.cs
To use vector graphics in efl csharp bindings, it is permitted to
generate efl_canvas_vg_object.eo.cs.

Other efl_canvas_vg .eo.cs files have already been generated because the
file names were changed from efl_vg to efl_canvas_vg.
2019-05-09 17:09:26 +09:00
Marcel Hollerbach f9c83166be meson: lets execute eldbus test suite
Summary:
this was simply forgotten.
Depends on D8861

Reviewers: segfaultxavi, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8862
2019-05-08 12:27:41 -04:00
Marcel Hollerbach f69ae90d30 Revert "eldbus_test_eldbus_message: Fix resource leak"
Summary:
This reverts commit 24c07f03d1.

This appears to be wrong "eldbus_message_iter_del" does free the message
itself. So this causes a double free and a failing test suite.

Reviewers: segfaultxavi, zmike

Reviewed By: zmike

Subscribers: zmike, devilhorns, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8861
2019-05-08 12:27:35 -04:00
Vincent Torri 594d5077cd Evil: fix warning on 64 bits
Summary: int is 32 bits, HANDLE is void *, so cast to uintptr_t in between

Test Plan: compilation

Reviewers: raster, cedric, zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8865
2019-05-08 12:19:00 -04:00
Mike Blumenkrantz 741a4313f0 meson: remove semicolons in windows build
Summary: Depends on D8859

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8860
2019-05-08 10:14:48 -04:00
Vincent Torri a41c5f7a06 Evil: remove localtime_r as mingw-w64 defines it when _POSIX_C_SOURCE is defined
Summary:
localtime_r() is already defined by mingw-w64 when _POSIX_C_SOURCE is defined

edit: also only define _POSIX_C_SOURCE (correctly) on windows

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8859
2019-05-08 10:14:45 -04:00
Carsten Haitzler 20b38ad447 Revert "Evil: remove localtime_r as mingw-w64 defines it when _POSIX_C_SOURCE is defined"
This reverts commit a4c44e5e74.

this breaks on osx it seems... :(
2019-05-08 14:01:02 +01:00
Vincent Torri b141c42e3f Evil: remove wrapper around getcwd()
Summary: getcwd() is declared in direct.h

Test Plan: compilation

Reviewers: raster, cedric, zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8858
2019-05-08 08:39:36 -04:00
Vincent Torri a4c44e5e74 Evil: remove localtime_r as mingw-w64 defines it when _POSIX_C_SOURCE is defined
Summary: localtime_r() is already defined by mingw-w64 when _POSIX_C_SOURCE is defined

Test Plan: compilation

Reviewers: raster, zmike, cedric

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7907

Differential Revision: https://phab.enlightenment.org/D8854
2019-05-08 12:39:54 +01:00
junsu choi 4473062dd4 ector_software_rasterizer: Support gradient mask blending
Summary: This patch supports mask blending of gradient shapes.

Test Plan: N/A

Reviewers: Hermet, kimcinoo

Reviewed By: Hermet

Subscribers: cedric, #reviewers, smohanty, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8855
2019-05-08 16:57:19 +09:00
Lauro Moura 3a570c38c9 csharp: Add Part suffix for the part wrappers
Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8835
2019-05-07 13:53:39 +02:00
Vincent Torri 770cede2bf eina_file: speed up listing of directories on Windows
Summary:
forbid the creation of short name (legacy of DOS)

Without optimisation

1. using only Win32 API, just iterating over directories (in micro seconds) :
  10 files : 47
  1000 files : 270
  100000 files : 73227
2. using eina_file_dir_list() with a callback which does nothing :
  10 files : 53
  1000 files : 265
  100000 files : 69624

usually there is a small overhead for eina API, which is normal

With optimisation

1. using only Win32 API, just iterating over directories (in micro seconds) :
  10 files : 51
  1000 files : 256
  100000 files : 33345
2. using eina_file_dir_list() with a callback which does nothing :
  10 files : 53
  1000 files : 251
  100000 files : 33832

speed up with 1000 files and more. Twice faster with 100000 files

Test Plan: benchmark program

Reviewers: raster, cedric, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8842
2019-05-07 11:15:54 +01:00
Hermet Park 6d78454142 efl_ui_textpath: remove err log in none error case. 2019-05-07 17:35:06 +09:00
Ali Alzyod 9d5456cfbe efl_ui_text: clear selection after cut
Test Plan:
```
#define EFL_EO_API_SUPPORT 1
#define EFL_BETA_API_SUPPORT 1

#include <Eina.h>
#include <Elementary.h>
#include <Efl_Ui.h>

static void
_gui_quit_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
{
   efl_exit(0);
}

static void
_gui_setup()
{
   Eo *win, *box;

   win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
                 efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
                 efl_text_set(efl_added, "Hello World"),
                 efl_ui_win_autodel_set(efl_added, EINA_TRUE));

   // when the user clicks "close" on a window there is a request to delete
   efl_event_callback_add(win, EFL_UI_WIN_EVENT_DELETE_REQUEST, _gui_quit_cb, NULL);

   box = efl_add(EFL_UI_BOX_CLASS, win,
                efl_content_set(win, efl_added),
                efl_gfx_hint_size_min_set(efl_added, EINA_SIZE2D(360, 240)));

   efl_add(EFL_UI_TEXT_CLASS, box,
           efl_text_markup_set(efl_added, "Hello World.<ps>This is an <b>Efl.Ui</b> application!"),
           efl_text_interactive_selection_allowed_set(efl_added, EINA_TRUE),
           efl_text_multiline_set(efl_added,EINA_TRUE),
           efl_gfx_hint_weight_set(efl_added, 1.0, 0.9),
           efl_gfx_hint_align_set(efl_added, 0.5, 0.5),
           efl_pack(box, efl_added));

   efl_add(EFL_UI_BUTTON_CLASS, box,
           efl_text_set(efl_added, "Quit"),
           efl_gfx_hint_weight_set(efl_added, 1.0, 0.1),
           efl_pack(box, efl_added),
           efl_event_callback_add(efl_added, EFL_UI_EVENT_CLICKED,
                                  _gui_quit_cb, efl_added));
}

EAPI_MAIN void
efl_main(void *data EINA_UNUSED, const Efl_Event *ev EINA_UNUSED)
{
   _gui_setup();
}
EFL_MAIN()
```

Reviewers: woohyun, bowonryu, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8833
2019-05-07 10:30:46 +02:00
Carsten Haitzler d81d1337b0 evas - map render - quick fix for segv in new map renderer
u or v go below 0... sometimes. right now i don't know the full path
to there, bute crashes with flat theme when the busy spinner shows
over an ibar icon when you launch... this at least stops that.

this needs hunting in more detail than i'm going to do on my laptop
on the couch...
2019-05-06 21:31:01 +01:00
Ali Alzyod bfaec01987 elm_entry: speed up setting text (check if same text is already set), fix setting same text pointer
This patch deal with two cases:

1- Setting text in Entry (elm_entry_entry_set) , as the one get using (elm_entry_entry_get), caused the entry to become empty.
     * becase entry string was free inside the elm_entry_entry_set function, without checking new passed string.

Now we check if same string was passed to the function, then nothing need to be changed.

```
// Old Behaviour : Entry will become empty
// New Behaviour : Entry will Skip setting same text
elm_entry_entry_set(app->entry, elm_entry_entry_get(app->entry));
```

2- Setting text in Entry (elm_entry_entry_set) , with same content string.
     * internally entry will set empty string then set passed string, which will case recalculation and re-render the entry element.

Now we check if same string data that is passed to the function is the same of the entry content, then nothing need to be changed.

```
// This will be skiped internally since same text is set
elm_entry_entry_set(app->entry, "aaaaa");
elm_entry_entry_set(app->entry, "aaaaa");  //skipped
```

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8572
2019-05-06 17:07:29 +02:00
Daniel Kolesa aa1db12c00 eolian: fail on scan file conflict
If two files of the same name are found in the include paths,
the scan should fail.
2019-05-06 17:05:22 +02:00
Daniel Kolesa 159e955168 eolian: fix conflicts between eo file names in tests
Fixes T7911.
2019-05-06 17:05:22 +02:00
Mike Blumenkrantz 4e67aae489 meson: enable and fix build of ddrag+gdi engines for evas
there are some specific defines and cflags needed for these builds
to succeed and provide the expected functionality
Depends on D8733

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Reviewed-by: Vincent Torri <vincent.torri@gmail.com>
Differential Revision: https://phab.enlightenment.org/D8734
2019-05-06 17:00:57 +02:00