platform/upstream/efl.git
5 years agoREADME: update COMPILING AND INSTALLING section
ali [Fri, 19 Jul 2019 14:29:31 +0000 (16:29 +0200)]
README: update COMPILING AND INSTALLING section

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: raster, vtorri, segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9302

5 years agoefl_ui/scroll_manager: fix int overflow in animation duration calc
Mike Blumenkrantz [Thu, 18 Jul 2019 17:21:26 +0000 (19:21 +0200)]
efl_ui/scroll_manager: fix int overflow in animation duration calc

Summary:
Evas_Coord is a regular int, so this will overflow easily for large
scrollers and return NaN for scroll duration and break the scroll

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9355

5 years agoEina vpath: remove support of ~username vpath on Windows
Vincent Torri [Thu, 18 Jul 2019 04:05:50 +0000 (04:05 +0000)]
Eina vpath: remove support of ~username vpath on Windows

On Windows, one must be in kernel mode to obtain informations of other users

Reviewed-by: Carsten Haitzler (Rasterman) <rasterman.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9339

5 years agocxx: remove a compilation warning for g++ 7.x
Vitor Sousa [Wed, 17 Jul 2019 22:32:32 +0000 (19:32 -0300)]
cxx: remove a compilation warning for g++ 7.x

Remove a compilation warning about an unsupported warning category for g++ 7.x.

A `#pragma` directive was used to suppress a `-Wcast-function-type` warning
in g++.
Versions older than 8.x do not have this warning category and raises a warning
because of this directive.

Now this directive is only enabled for g++ version 8.x or newer.

5 years agoeina: set EINA_VALUE_EMPTY during library init.
Cedric BAIL [Wed, 17 Jul 2019 18:12:18 +0000 (11:12 -0700)]
eina: set EINA_VALUE_EMPTY during library init.

This is a work around compiler/linker limit on some system as reported
by Romain Naour.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9348

5 years agoelementary: add a test for Efl.Ui.View interface.
Cedric BAIL [Fri, 12 Jul 2019 19:24:58 +0000 (12:24 -0700)]
elementary: add a test for Efl.Ui.View interface.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9308

5 years agoelementary: simplify example by using Efl.Model_Provider.
Cedric BAIL [Fri, 12 Jul 2019 18:24:02 +0000 (11:24 -0700)]
elementary: simplify example by using Efl.Model_Provider.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9307

5 years agoelementary: fix potential race condition by using Eina_Future attached to the object.
Cedric BAIL [Thu, 11 Jul 2019 22:53:54 +0000 (15:53 -0700)]
elementary: fix potential race condition by using Eina_Future attached to the object.

I get some random segfault in elementary test suite pointing to this code. Most likely
we do not properly destroy the timer during destruction. Could be because we initiate
a delay while destruction is going on or something like that. Anyway, it is easier and
more robust to get it fixed by linking the lifetime of the timeout to the lifetime of
the widget as future allow us to do easily.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9298

5 years agoecore: remove efl_loop_{un,}register from .eo.
Cedric BAIL [Thu, 11 Jul 2019 22:34:31 +0000 (15:34 -0700)]
ecore: remove efl_loop_{un,}register from .eo.

We have to keep this as an API, but binding do not need to see it at this point.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9297

5 years agoeo: use efl_provider_{un,}register infrastructure instead of Efl_Loop one.
Cedric BAIL [Thu, 11 Jul 2019 22:18:34 +0000 (15:18 -0700)]
eo: use efl_provider_{un,}register infrastructure instead of Efl_Loop one.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9296

5 years agoelementary: add a test for Efl.Model_provider.
Cedric BAIL [Thu, 11 Jul 2019 22:03:05 +0000 (15:03 -0700)]
elementary: add a test for Efl.Model_provider.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9295

5 years agoecore: rely on efl_provider_{un,}register to do the job of efl_loop_{un,}register.
Cedric BAIL [Thu, 11 Jul 2019 21:59:05 +0000 (14:59 -0700)]
ecore: rely on efl_provider_{un,}register to do the job of efl_loop_{un,}register.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9294

5 years agoelementary: first search on ourself instead of our parent for all providers.
Cedric BAIL [Thu, 11 Jul 2019 22:10:41 +0000 (15:10 -0700)]
elementary: first search on ourself instead of our parent for all providers.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9293

5 years agoeo: add ability to register provider on the Eo object directly.
Cedric BAIL [Thu, 11 Jul 2019 21:53:19 +0000 (14:53 -0700)]
eo: add ability to register provider on the Eo object directly.

This should reduce the need for custom implementation of efl_object_provider_bind.
It also enable the ability to register provider from user code on any Efl_Object.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9292

5 years agoelementary: Efl.Ui.Layout now rely on model change event to track the model.
Cedric BAIL [Thu, 11 Jul 2019 17:56:51 +0000 (10:56 -0700)]
elementary: Efl.Ui.Layout now rely on model change event to track the model.

This means that this will work nicely with model provider too.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9291

5 years agoefl: add a Efl.Model_Provider that every widget will look up for in their parent...
Cedric BAIL [Thu, 11 Jul 2019 01:03:46 +0000 (18:03 -0700)]
efl: add a Efl.Model_Provider that every widget will look up for in their parent tree.

This is done to simplify code as you only need to set the model on the
provider and all the widget that are using it as a provider will automatically be
updated. The child will find a provider during at the time the first property binding
is set on the widget by checking if the parent have an Efl.Model_Provider set. It is
not necessary to set a model to have a valid lookup on a Efl.Model_Provider. To disable
a widget lookup, you can just force set a model on it (even NULL) and it will disable
the lookup.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9290

5 years agoelementary: Efl.Ui.Image now rely on event to update model binding.
Cedric BAIL [Thu, 11 Jul 2019 00:56:20 +0000 (17:56 -0700)]
elementary: Efl.Ui.Image now rely on event to update model binding.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9289

5 years agoefl: implement notification for when the model is changed on a widget.
Cedric BAIL [Thu, 11 Jul 2019 00:54:46 +0000 (17:54 -0700)]
efl: implement notification for when the model is changed on a widget.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9288

5 years agoeolian: remove support for old free() syntax
Daniel Kolesa [Wed, 17 Jul 2019 18:14:46 +0000 (20:14 +0200)]
eolian: remove support for old free() syntax

Now freefuncs can only be specified on type declarations but not
on types themselves. Also remove transitiveness of freefuncs.

5 years agoefl_ui/table: emit EFL_PACK_EVENT_LAYOUT_UPDATED on layout updates
Mike Blumenkrantz [Wed, 17 Jul 2019 17:30:11 +0000 (13:30 -0400)]
efl_ui/table: emit EFL_PACK_EVENT_LAYOUT_UPDATED on layout updates

this should be emitted.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9343

5 years agoelm/scrollable: avoid unnecessary edje recalcs
Mike Blumenkrantz [Tue, 16 Jul 2019 19:30:09 +0000 (15:30 -0400)]
elm/scrollable: avoid unnecessary edje recalcs

in this case we just want to trigger pending edje calcs and not force new
ones. this avoids doing a full edje recalc constantly when scrolling

@fix

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9335

5 years agoefl/scroll manager: stop clearing animators on every wheel event
Mike Blumenkrantz [Wed, 17 Jul 2019 13:33:05 +0000 (09:33 -0400)]
efl/scroll manager: stop clearing animators on every wheel event

if scrolling is supposed to continue then just reuse the existing animator
callback and avoid emitting a scroll,start/stop event pair for every new
input event

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9340

5 years agoefl_ui/box: optimize position_set operations with boxes
Mike Blumenkrantz [Wed, 17 Jul 2019 17:12:23 +0000 (13:12 -0400)]
efl_ui/box: optimize position_set operations with boxes

if a box is moved and no other changes are made to the box or its children,
e.g., if the box is scrolled, then there is no need to loop over the box's
items repeatedly in order to accurately calculate all the item geometries
and positions.

instead, simply apply an offset from the last box calc position to each child
item and handle the position changes more transparently

this yields roughly a 12% perf improvement to the 'efl.ui.scroller simple' test
and brings rendering up to nearly 60fps

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9342

5 years agoefl_ui/box: avoid exploding stack with lots of subobjects
Mike Blumenkrantz [Wed, 17 Jul 2019 17:08:58 +0000 (13:08 -0400)]
efl_ui/box: avoid exploding stack with lots of subobjects

using alloca like this without any limits is dangerous, so switch to
malloc here in such cases

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9341

5 years agoelm_test: add comparable "simple" scroller tests
Mike Blumenkrantz [Tue, 16 Jul 2019 17:41:47 +0000 (13:41 -0400)]
elm_test: add comparable "simple" scroller tests

this should be roughly identical and can be more directly compared in
terms of performance (which is not good in either case)

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9334

5 years agoefl_ui_win: optimize shutdown
Marcel Hollerbach [Mon, 15 Jul 2019 20:06:06 +0000 (22:06 +0200)]
efl_ui_win: optimize shutdown

in case we are having a scroller with a lot of elements on it, we are
spending a lot of time in stuff like recalculating clips, even if they
will never be used again.

With this freeze here, we are saving 9s shutdown time in item_container.
Which brings the overall closing time from 10s down to 1s, which is a
win IMO.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9325

5 years agoefl_ui_widget: relax the amount of event subscriptions
Marcel Hollerbach [Mon, 15 Jul 2019 19:25:43 +0000 (21:25 +0200)]
efl_ui_widget: relax the amount of event subscriptions

there is a very basic problem in eo events. We are having one central
array of event subscription, if for example a widget is now listening to
changes in its parent, then we are 100% asking for trouble.

As an example:
- A scroller with 100 buttons in it.
- Every button will have a subscription to the FOCUS_MANAGER_CHANGED
event

If you now scroll, the position is updated in the scroller, therefore
the position in scroller is updated. This has the result that the whole
list of 100 event subscriptions is walked, which is obviously bad,
however, this solution here is way easier than fixing eo (i am not even
sure there is a nice solution to it).

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9324

5 years agoefl_ui_widget: performance optimize deletion
Marcel Hollerbach [Mon, 15 Jul 2019 19:00:56 +0000 (21:00 +0200)]
efl_ui_widget: performance optimize deletion

when a logic parent does not have any widgets left, the parent needs to
be reevaluated. However, this only has to happen when there is a change
in state (eg. from 0 -> N or from N -> 0). Every other call can be
safed. This commit introduces this checking, and safes up performance.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9323

5 years agoeolian: allow binbufs to be owned
Daniel Kolesa [Wed, 17 Jul 2019 16:15:01 +0000 (18:15 +0200)]
eolian: allow binbufs to be owned

5 years agoeolian: add builtin binbuf and event types
Daniel Kolesa [Wed, 17 Jul 2019 13:50:38 +0000 (15:50 +0200)]
eolian: add builtin binbuf and event types

Binbuf is like strbuf and allows not using the Eina opaque wrapper
now, which will remove some ptr(). And event translates to
Efl.Event because otherwise there would be no way to get rid
of void_ptr.

5 years agovg_common_svg: Gradient stop color use premultiplied color.
JunsuChoi [Wed, 17 Jul 2019 08:15:23 +0000 (17:15 +0900)]
vg_common_svg: Gradient stop color use premultiplied color.

Summary:
The parsed color is straight color.
evas use premultiplied color.

Test Plan:
Sample SVG
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
  <defs>
    <linearGradient id="linearGradient1" x1="0" y1="0" x2="0.2" y2="0.2" spreadMethod="reflect">
      <stop style="stop-color:#ff0000;stop-opacity:1;" offset="0"/>
      <stop style="stop-color:#0000ff;stop-opacity:1;" offset="1"/>
    </linearGradient>
    <radialGradient id="radialGradient222" r="0.2" cx="0.3" cy="0.3" spreadMethod="reflect">
      <stop style="stop-color:#ffFF00;stop-opacity:0.1;" offset="0"/>
      <stop style="stop-color:#00FFff;stop-opacity:1;"   offset="1"/>
    </radialGradient>
    <radialGradient id="radialGradient333" r="0.2" cx="0.3" cy="0.3" spreadMethod="reflect">
      <stop style="stop-color:#00FF00;stop-opacity:0.1;" offset="0"/>
      <stop style="stop-color:#FF00ff;stop-opacity:1;"   offset="1"/>
    </radialGradient>
   </defs>
  <rect x="0" y="0" width="100" height="100" fill="url(#linearGradient1)"/>
  <rect x="50" y="50" width="50" height="50" fill="url(#radialGradient222)"/>
  <rect x="0" y="0" width="50" height="50" fill="url(#radialGradient333)"/>
</svg>

Reviewers: Hermet, kimcinoo, smohanty

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9338

5 years agoecore_evas buffer: fix a deadlock issue. 44/210544/1
Hermet Park [Mon, 22 Jul 2019 08:14:10 +0000 (17:14 +0900)]
ecore_evas buffer: fix a deadlock issue.

We encountered a deadlock case in ecore_evas_image_object in ecore_evas_buffer
that only happens if the ecore_evas_buffer has nothing changed to render,
though it's triggered to rendering.

See this normal scenario that is working fine as our intention.

being ecore_evas_render()
...
 -> ecore_evas_buffer_prepare()
     -> evas_object_image_data_get()
         -> increment lock by backend engine. (egl/tbm ...)
 -> render()
     -> render_post()
        -> _ecore_evas_buffer_update_image()
            -> evas_object_image_data_set()
               ->decrement lock by backend engine (egl/tbm ...)
...
end ecore_evas_render()

The problem is, if the ecore_evas_buffer canvas doesn't changed at all,
render post will be skipped, it could lose the chance to unlock the image data.
Now the host can't render anymore since it's image source lost the lock.

@fix

Change-Id: I1d902351698d7aa51efc6b7c561c3b597e6f3c25

5 years agoevas: don't add wrong rect for empty line 15/210515/1
Bowon Ryu [Mon, 22 Jul 2019 05:27:44 +0000 (14:27 +0900)]
evas: don't add wrong rect for empty line

@tizen_fix

Change-Id: Ic350fa02785584af2944ddcb05c994f122873785
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
5 years agolibunibreak: Don't break ZWJ + Unknown Emoji case 12/210512/1
Bowon Ryu [Mon, 22 Jul 2019 05:03:55 +0000 (14:03 +0900)]
libunibreak: Don't break ZWJ + Unknown Emoji case

Some Emoji unicodes are missing from grapheme break data table. ex) 1F692
I don't know why Unicode annex does not have full information of Emoji combination.
Anyway, for correct behavior of text cursor, ZWJ + GBP_Other will be non-breakable.

@tizen_fix

Change-Id: I92b8b0b926be164c82c0a897383cf2269516d30f
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
5 years agovg_common_svg: Gradient stop color use premultiplied color. 66/210266/2
JunsuChoi [Wed, 17 Jul 2019 08:15:23 +0000 (17:15 +0900)]
vg_common_svg: Gradient stop color use premultiplied color.

Summary:
The parsed color is straight color.
evas use premultiplied color.

Test Plan:
Sample SVG
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
  <defs>
    <linearGradient id="linearGradient1" x1="0" y1="0" x2="0.2" y2="0.2" spreadMethod="reflect">
      <stop style="stop-color:#ff0000;stop-opacity:1;" offset="0"/>
      <stop style="stop-color:#0000ff;stop-opacity:1;" offset="1"/>
    </linearGradient>
    <radialGradient id="radialGradient222" r="0.2" cx="0.3" cy="0.3" spreadMethod="reflect">
      <stop style="stop-color:#ffFF00;stop-opacity:0.1;" offset="0"/>
      <stop style="stop-color:#00FFff;stop-opacity:1;"   offset="1"/>
    </radialGradient>
    <radialGradient id="radialGradient333" r="0.2" cx="0.3" cy="0.3" spreadMethod="reflect">
      <stop style="stop-color:#00FF00;stop-opacity:0.1;" offset="0"/>
      <stop style="stop-color:#FF00ff;stop-opacity:1;"   offset="1"/>
    </radialGradient>
   </defs>
  <rect x="0" y="0" width="100" height="100" fill="url(#linearGradient1)"/>
  <rect x="50" y="50" width="50" height="50" fill="url(#radialGradient222)"/>
  <rect x="0" y="0" width="50" height="50" fill="url(#radialGradient333)"/>
</svg>

Reviewers: Hermet, kimcinoo, smohanty

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9338

Change-Id: Ifcc1d6b94aab190494afa4f1800e2ed7cf2ffaed

5 years agoevas_vg_load_svg: Support multiple gradient without <defs> part 65/210265/2
JunsuChoi [Mon, 15 Jul 2019 12:23:38 +0000 (21:23 +0900)]
evas_vg_load_svg: Support multiple gradient without <defs> part

Summary:
Multiple gradients can be declared.
There is a problem of keeping only one gradient information
when it is declared outside defs or when defs is not declared.
It supports the use of multiple gradients even if no defs are declared.

Test Plan:
(with D9312 patch)
cd src/example/edje
edje_cc -beta svg.edc && gcc -o svg-test svg-test.c `pkg-config --libs --cflags evas ecore ecore-evas edje`
./svg-test

Reviewers: Hermet, kimcinoo, smohanty

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9315

Change-Id: I22fda2ab7ae0eb01d6923ebaf134aee54114de1a

5 years agoevas_vg_load_svg: Prevent duplicate operations on radial gradient variables 64/210264/2
JunsuChoi [Mon, 15 Jul 2019 12:22:03 +0000 (21:22 +0900)]
evas_vg_load_svg: Prevent duplicate operations on radial gradient variables

Summary:
This solves the problem of radial gradient being displayed
abnormally when the radial gradient variables are 0 to 1.

Test Plan:
Sample SVG
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
  <defs
     id="defs11">
    <linearGradient id="linearGradient1" x1="0" y1="0" x2="0.2" y2="0.2" spreadMethod="reflect">
      <stop style="stop-color:#ff0000;stop-opacity:1;" offset="0"/>
      <stop style="stop-color:#0000ff;stop-opacity:1;" offset="1"/>
    </linearGradient>
    <radialGradient id="radialGradient222" r="0.2" cx="0.3" cy="0.3" spreadMethod="reflect">
      <stop style="stop-color:#ffFF00;stop-opacity:1;" offset="0"/>
      <stop style="stop-color:#00FFff;stop-opacity:1;" offset="1"/>
    </radialGradient>
  </defs>
  <rect x="0" y="0" width="100" height="100" fill="url(#linearGradient1)"/>
  <rect x="50" y="50" width="50" height="50" fill="url(#radialGradient222)"/>
</svg>

Reviewers: Hermet, kimcinoo, smohanty

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9312

Change-Id: I771140d2747167330c96788bb86b30eddd188d0b

5 years agospec: removes ecore-drm related packages 14/210314/1 accepted/tizen/unified/20190723.053524 submit/tizen/20190719.061509
Wonki Kim [Thu, 18 Jul 2019 05:36:27 +0000 (14:36 +0900)]
spec: removes ecore-drm related packages

ecore-drm is not used anymore so no need to build and package.
this patch removes ecore-drm related packages.

Change-Id: I7f02b5b818e9d42793f26723185e9d93ef47d20c

5 years agoMerge branch 'tizen' of ssh://review.tizen.org:29418/platform/upstream/efl into tizen accepted/tizen/unified/20190722.074730 submit/tizen/20190718.020831 submit/tizen/20190719.015332 submit/tizen/20190722.022144
Taehyub Kim [Thu, 18 Jul 2019 01:57:37 +0000 (10:57 +0900)]
Merge branch 'tizen' of ssh://review.tizen.org:29418/platform/upstream/efl into tizen

5 years agorestore colormap feature
Taehyub Kim [Thu, 18 Jul 2019 01:49:25 +0000 (10:49 +0900)]
restore colormap feature

Change-Id: I0cdc79d874ebc1688795f03df6ff1753f237364b

5 years ago[edje] Add support for map zoom to use other part center 39/210039/3
Godly T.Alias [Mon, 15 Jul 2019 07:21:46 +0000 (12:51 +0530)]
[edje] Add support for map zoom to use other part center

Current:
In edc, zoom is supposed to happen from object center, there is no way to
change the center of the zoom.

Changes:
Adding support to change the center of zooming just like map rotation by using
other part's center.

@feature

Url: https://phab.enlightenment.org/D9115

Change-Id: I05a08c6182c610773fb4cdacae35e2824444d4f1
Signed-off-by: Godly T.Alias <godlytalias@yahoo.co.in>
5 years agotests/elm: add test for elm_bubble "clicked" smart callback
Mike Blumenkrantz [Tue, 16 Jul 2019 17:38:33 +0000 (13:38 -0400)]
tests/elm: add test for elm_bubble "clicked" smart callback

Summary:
also verify general layout loading

Depends on D9330

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9331

5 years agotests/elm: break out event callback function
Mike Blumenkrantz [Tue, 16 Jul 2019 17:38:28 +0000 (13:38 -0400)]
tests/elm: break out event callback function

Summary:
now we have a function we can reuse which verifies that it is called exactly
one time

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9330

5 years agoefl_ui_slider: fix focus interaction
Marcel Hollerbach [Tue, 16 Jul 2019 11:59:40 +0000 (13:59 +0200)]
efl_ui_slider: fix focus interaction

Summary:
when we move the slider up or down, we might be at the minimum or
maximu, if this is the case. Then we must not eat the key event,
otherwise focus is stuck on this widget.
Depends on D9328

Reviewers: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9329

5 years agoefl_ui_text: fix focus breaking
Marcel Hollerbach [Tue, 16 Jul 2019 11:58:48 +0000 (13:58 +0200)]
efl_ui_text: fix focus breaking

Summary:
text should not be focusable by default. Only focusable if it is
editable. This fixes mysterical focus disappearing in tests using
efl.ui.text.
Depends on D9327

Reviewers: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9328

5 years agoefl_ui_slider: change the semantical meaning of step property
Marcel Hollerbach [Tue, 16 Jul 2019 11:58:42 +0000 (13:58 +0200)]
efl_ui_slider: change the semantical meaning of step property

Summary:
before the step property was used as a relative value. The value that
was added in the end was (max-min)*step. Which is quite confusing given
the fact that the other APIs in in efl_ui_range_display are also taking
values absolut. Other implementations also do so.

fix T4834

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T4834

Differential Revision: https://phab.enlightenment.org/D9327

5 years agotests/actionslider: add more actionslider unit tests
Mike Blumenkrantz [Fri, 12 Jul 2019 18:38:30 +0000 (14:38 -0400)]
tests/actionslider: add more actionslider unit tests

verify actionslider callbacks and various basic functionalities

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9322

5 years agotests/elm: improve click_part() further to guess part locations
Mike Blumenkrantz [Fri, 12 Jul 2019 18:36:31 +0000 (14:36 -0400)]
tests/elm: improve click_part() further to guess part locations

non-swallow parts exist "somewhere" on a given layout, and it may be
the case that they are not actually positioned and just take up the whole
layout space.

for these parts, if they have a direction in their name, we can try to vaguely
guess where the part might be in order to (ideally) click it

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9321

5 years agotests/elm: improve click_part() to handle non-swallow parts
Mike Blumenkrantz [Fri, 12 Jul 2019 18:35:35 +0000 (14:35 -0400)]
tests/elm: improve click_part() to handle non-swallow parts

swallow parts have content, other parts do not

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9320

5 years agoelm_actionslider: fix internal state when programmatically changing value
Mike Blumenkrantz [Fri, 12 Jul 2019 18:33:23 +0000 (14:33 -0400)]
elm_actionslider: fix internal state when programmatically changing value

this value is supposed to always match the current widget state and signal
emission breaks if the states are not consistent

@fix

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9319

5 years agoelm_actionslider: fix signal emission for left selection
Mike Blumenkrantz [Fri, 12 Jul 2019 18:32:36 +0000 (14:32 -0400)]
elm_actionslider: fix signal emission for left selection

this is supposed to be a comparison, not a filter

ref a65cb62853c344bcdc34af589a4199488f9025e8

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9318

5 years agoefl_ui_widget_part: implement some expected methods
Mike Blumenkrantz [Fri, 12 Jul 2019 18:30:42 +0000 (14:30 -0400)]
efl_ui_widget_part: implement some expected methods

checking part type and part geometry is pretty common, so these base
implementations can fill in gaps in existing functionality

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9317

5 years agodocs: Enhance Efl.Ui.Clickable_Util documentation
Xavi Artigas [Tue, 16 Jul 2019 10:20:31 +0000 (12:20 +0200)]
docs: Enhance Efl.Ui.Clickable_Util documentation

5 years agoEvil: remove getpwuid() from Evil.
Vincent Torri [Tue, 16 Jul 2019 09:43:11 +0000 (10:43 +0100)]
Evil: remove getpwuid() from Evil.

Summary: getpwuid() is used only in eina_test_vpath() and is called when getpwent() is available, which is not the case on Windows

Test Plan: compilation

Reviewers: raster, cedric, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9326

5 years agoRevert "Revert "efl: prevent usage of some Eina.* stub types in stable APIs""
Vitor Sousa [Wed, 10 Jul 2019 23:22:42 +0000 (20:22 -0300)]
Revert "Revert "efl: prevent usage of some Eina.* stub types in stable APIs""

EFL# support for slice and rw_slice was added in a previous commit.
So now it is safe to undo the reversion of this commit.

This reverts commit 25ef604467b083d1f5ff2c7f9a1a82e660e04443.

5 years agotests/ecore_wl2: Check for valid xdg_runtime_dir
Christopher Michael [Mon, 15 Jul 2019 18:21:36 +0000 (14:21 -0400)]
tests/ecore_wl2: Check for valid xdg_runtime_dir

Seems these tests need XDG_RUNTIME_DIR to be set, and it does not get
set in Travis builds, so add a small check here so that Travis builds
don't fail ... thanks Marcel ;)

ref T8016

5 years agotests/ecore_wl2: Add start of Ecore_Wl2 Window tests
Christopher Michael [Mon, 15 Jul 2019 16:40:29 +0000 (12:40 -0400)]
tests/ecore_wl2: Add start of Ecore_Wl2 Window tests

ref T8016

5 years agotests/ecore_wl2: Add test for ecore_wl2_display_inputs_get
Christopher Michael [Mon, 15 Jul 2019 16:32:50 +0000 (12:32 -0400)]
tests/ecore_wl2: Add test for ecore_wl2_display_inputs_get

ref T8016

5 years agotests/ecore_wl2: Add test for ecore_wl2_display_registry_get function
Christopher Michael [Mon, 15 Jul 2019 15:00:05 +0000 (11:00 -0400)]
tests/ecore_wl2: Add test for ecore_wl2_display_registry_get function

ref T8016

5 years agotests/ecore_wl2: Add test for ecore_wl2_display_screen_size_get function
Christopher Michael [Mon, 15 Jul 2019 14:53:42 +0000 (10:53 -0400)]
tests/ecore_wl2: Add test for ecore_wl2_display_screen_size_get function

ref T8016

5 years agotests/ecore_wl2: Add test for ecore_wl2_display_globals_get function
Christopher Michael [Mon, 15 Jul 2019 14:47:36 +0000 (10:47 -0400)]
tests/ecore_wl2: Add test for ecore_wl2_display_globals_get function

ref T8016

5 years agotests/ecore_wl2: Add printf for compositor detection
Christopher Michael [Mon, 15 Jul 2019 14:42:27 +0000 (10:42 -0400)]
tests/ecore_wl2: Add printf for compositor detection

ref T8016

5 years agotests/ecore_wl2: Add ecore_wl2_display_dmabuf_get test
Christopher Michael [Mon, 15 Jul 2019 14:33:37 +0000 (10:33 -0400)]
tests/ecore_wl2: Add ecore_wl2_display_dmabuf_get test

ref T8016

5 years agotests/ecore_wl2: Add ecore_wl2_display_shm_get test
Christopher Michael [Mon, 15 Jul 2019 14:31:56 +0000 (10:31 -0400)]
tests/ecore_wl2: Add ecore_wl2_display_shm_get test

ref T8016

5 years agotests/ecore_wl2: Add test cases for wl2 client-side functions
Christopher Michael [Mon, 15 Jul 2019 14:28:29 +0000 (10:28 -0400)]
tests/ecore_wl2: Add test cases for wl2 client-side functions

This patch separates the ecore_wl2 tests to support both server-side
and client-side functionality. In order to test client-side functions,
these tests MUST be run under an existing Wayland Compositor
(Enlightenment, Weston, etc).

ref T8016

5 years agotests: Add tests for ecore_wl2_display_get and
Christopher Michael [Mon, 15 Jul 2019 14:08:32 +0000 (10:08 -0400)]
tests: Add tests for ecore_wl2_display_get and
ecore_wl2_display_name_get

ref T8016

5 years agotests: Add file for Ecore_Wl2 display tests
Christopher Michael [Mon, 15 Jul 2019 13:49:31 +0000 (09:49 -0400)]
tests: Add file for Ecore_Wl2 display tests

Add file which can be used to add tests for ecore_wl2 display functions

ref T8016

5 years agotests: Add start of Ecore_Wl2 test suite
Christopher Michael [Mon, 15 Jul 2019 12:35:49 +0000 (08:35 -0400)]
tests: Add start of Ecore_Wl2 test suite

Small patch set to add the start of a Ecore_Wl2 test suite

ref T8016

5 years agoexamples: fix function signature for edje color class example
Mike Blumenkrantz [Mon, 15 Jul 2019 13:51:01 +0000 (09:51 -0400)]
examples: fix function signature for edje color class example

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9303

5 years agoevas_vg_load_svg: Support multiple gradient without <defs> part
JunsuChoi [Mon, 15 Jul 2019 12:23:38 +0000 (21:23 +0900)]
evas_vg_load_svg: Support multiple gradient without <defs> part

Summary:
Multiple gradients can be declared.
There is a problem of keeping only one gradient information
when it is declared outside defs or when defs is not declared.
It supports the use of multiple gradients even if no defs are declared.

Test Plan:
(with D9312 patch)
cd src/example/edje
edje_cc -beta svg.edc && gcc -o svg-test svg-test.c `pkg-config --libs --cflags evas ecore ecore-evas edje`
./svg-test

Reviewers: Hermet, kimcinoo, smohanty

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9315

5 years agoevas_vg_load_svg: Prevent duplicate operations on radial gradient variables
JunsuChoi [Mon, 15 Jul 2019 12:22:03 +0000 (21:22 +0900)]
evas_vg_load_svg: Prevent duplicate operations on radial gradient variables

Summary:
This solves the problem of radial gradient being displayed
abnormally when the radial gradient variables are 0 to 1.

Test Plan:
Sample SVG
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
  <defs
     id="defs11">
    <linearGradient id="linearGradient1" x1="0" y1="0" x2="0.2" y2="0.2" spreadMethod="reflect">
      <stop style="stop-color:#ff0000;stop-opacity:1;" offset="0"/>
      <stop style="stop-color:#0000ff;stop-opacity:1;" offset="1"/>
    </linearGradient>
    <radialGradient id="radialGradient222" r="0.2" cx="0.3" cy="0.3" spreadMethod="reflect">
      <stop style="stop-color:#ffFF00;stop-opacity:1;" offset="0"/>
      <stop style="stop-color:#00FFff;stop-opacity:1;" offset="1"/>
    </radialGradient>
  </defs>
  <rect x="0" y="0" width="100" height="100" fill="url(#linearGradient1)"/>
  <rect x="50" y="50" width="50" height="50" fill="url(#radialGradient222)"/>
</svg>

Reviewers: Hermet, kimcinoo, smohanty

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9312

5 years agobuild - update/improve meson option strings to be short and descriptive
Carsten Haitzler (Rasterman) [Mon, 15 Jul 2019 10:46:26 +0000 (11:46 +0100)]
build - update/improve meson option strings to be short and descriptive

this should make it easier to know what an option does and not be
redundant in the description.

5 years agoconfig - make harfbuzz default on these days
Carsten Haitzler (Rasterman) [Mon, 15 Jul 2019 10:15:33 +0000 (11:15 +0100)]
config - make harfbuzz default on these days

probably a good move given how common it is now.

5 years agobuild - let's make xinput 2.2 default these days...
Carsten Haitzler (Rasterman) [Mon, 15 Jul 2019 10:09:31 +0000 (11:09 +0100)]
build - let's make xinput 2.2 default these days...

about time since it's common enough by now.

5 years agoadd INSTALL file back as permanent instructions on meson building
Carsten Haitzler (Rasterman) [Mon, 15 Jul 2019 09:15:58 +0000 (10:15 +0100)]
add INSTALL file back as permanent instructions on meson building

5 years agoefl.h: avoid redefinition of typedef 'Efl_Gfx_Path_Command'
Boris Faure [Mon, 15 Jul 2019 05:09:13 +0000 (14:09 +0900)]
efl.h: avoid redefinition of typedef 'Efl_Gfx_Path_Command'

Reviewers: zmike, bu5hm4n, cedric, raster

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9311

5 years agoecore_imf: remove code to use deprecated API in wayland immodule
Jihoon Kim [Mon, 15 Jul 2019 02:37:53 +0000 (11:37 +0900)]
ecore_imf: remove code to use deprecated API in wayland immodule

Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
5 years agocsharp: fix some unit tests that rely on garbage collection
Vitor Sousa [Fri, 12 Jul 2019 20:09:41 +0000 (17:09 -0300)]
csharp: fix some unit tests that rely on garbage collection

Summary:
Fix unit tests `TestEoInherit.inherited_collected` and
`TestFunctionPointers.set_callback_inherited_called_from_c`.

Iterate through garbage collection and EFL main loop more times to ensure that
allocated objects are really collected.

Also expand the test utility method `CollectAndIterate` to receive the number of
times to call the whole cleaning iteration process (not only the garbage
collection).

Test Plan: `meson test`

Reviewers: lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9271

5 years agoevas: add a test for loading Android 9patch file.
Cedric BAIL [Fri, 14 Jun 2019 23:46:17 +0000 (16:46 -0700)]
evas: add a test for loading Android 9patch file.

Example data come from https://github.com/vindolin/ninepatch/tree/master/ninepatch/data
under MIT license.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Hermet Park <hermetpark@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9105

5 years agoecore_evas: on internal Evas canvas uncontrolled death, properly clean up Ecore_Evas.
Cedric BAIL [Fri, 14 Jun 2019 23:43:23 +0000 (16:43 -0700)]
ecore_evas: on internal Evas canvas uncontrolled death, properly clean up Ecore_Evas.

This allow evas test to work with an Ecore_Evas directly. It prevent leaking of memory
in the case of half destroying Ecore_Evas.

Reviewed-by: Hermet Park <hermetpark@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9104

5 years agoevas: add support for .9.png file to PNG loader.
Cedric BAIL [Thu, 13 Jun 2019 22:35:48 +0000 (15:35 -0700)]
evas: add support for .9.png file to PNG loader.

This support Android 9 patch file format. Only black is a recognized color for both
the stretch area and the content area. All other color are associated with being
"white".

Reviewed-by: Hermet Park <hermetpark@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9103

5 years agoevas: add infrastructure to feed 9 patch information from file loader to image object.
Cedric BAIL [Thu, 13 Jun 2019 22:34:09 +0000 (15:34 -0700)]
evas: add infrastructure to feed 9 patch information from file loader to image object.

This is just the plumbing that feed data provided along android 9 patch image for example
into Evas object image new stretch and content region infrastructure for rendering them
properly.

Reviewed-by: Hermet Park <hermetpark@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9102

5 years agoevas: break Image_Loader API to allow for getting property from the data field of...
Cedric BAIL [Fri, 31 May 2019 18:57:53 +0000 (11:57 -0700)]
evas: break Image_Loader API to allow for getting property from the data field of an image.

Reviewed-by: Hermet Park <hermetpark@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9101

5 years agoevas: break Evas_Loader API and introduce a version numbering for Image_Loader.
Cedric BAIL [Fri, 31 May 2019 17:43:32 +0000 (10:43 -0700)]
evas: break Evas_Loader API and introduce a version numbering for Image_Loader.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Hermet Park <hermetpark@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9099

5 years agoevas: improve test to evaluate stretch region effect on content region.
Cedric BAIL [Fri, 31 May 2019 00:43:20 +0000 (17:43 -0700)]
evas: improve test to evaluate stretch region effect on content region.

Reviewed-by: Hermet Park <hermetpark@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9098

5 years agoevas: take stretch region into account when content region is requested.
Cedric BAIL [Fri, 31 May 2019 00:42:58 +0000 (17:42 -0700)]
evas: take stretch region into account when content region is requested.

Reviewed-by: Hermet Park <hermetpark@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9097

5 years agoevas: add support for stretchable region.
Cedric BAIL [Thu, 9 May 2019 00:54:55 +0000 (17:54 -0700)]
evas: add support for stretchable region.

This is the first step into introducing support for Android 9 patch
format (extension: .9.png). The principle is to expose a new property
on image object that define a complete behavior incompatible with other
border and fill logic. The reason is that 9 patch allow for any number
of stretchable area inside an image, not just for each corner. The way
to define this is by giving a pointer to an array of the proper type
that define stretchable region relative to each other.

The logic being slightly more complex than the border and fill logic,
it is slightly slower. If you are just defining corner on your image
for something like a button, you would still get better performance
using border. I will try to make edje_cc detect those case and fallback
to border when possible.

Reviewed-by: Hermet Park <hermetpark@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9096

5 years agoevas: add test for the new efl_gfx_image_content_region_get API.
Cedric BAIL [Thu, 30 May 2019 18:25:39 +0000 (11:25 -0700)]
evas: add test for the new efl_gfx_image_content_region_get API.

Reviewed-by: Hermet Park <hermetpark@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9095

5 years agoevas: add an API to know where inside an object content can be layout over.
Cedric BAIL [Thu, 30 May 2019 18:22:42 +0000 (11:22 -0700)]
evas: add an API to know where inside an object content can be layout over.

The first step with this API is to use the information provided when setting
the border on an image to define the content area inside it. Improvement will
be to use more flexible stretch region area to make it more customizable and
finally read the information from a 9patch file (.9.png).

Reviewed-by: Hermet Park <hermetpark@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9093

5 years agoedje: Add support for map zoom to use other part center.
Subodh Kumar [Fri, 12 Jul 2019 15:58:35 +0000 (11:58 -0400)]
edje: Add support for map zoom to use other part center.

Summary:
Current:
In edc, zoom is supposed to happen from object center, there is no way to
change the center of the zoom.

Changes:
Adding support to change the center of zooming just like map rotation by using
other part's center.

@feature

Reviewers: cedric, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9115

5 years agoelm_test: fix some range api misuse in spotlight test
Mike Blumenkrantz [Thu, 11 Jul 2019 18:17:30 +0000 (14:17 -0400)]
elm_test: fix some range api misuse in spotlight test

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9286

5 years agoefl_ui_spec_suite: this is not python2
Marcel Hollerbach [Fri, 12 Jul 2019 13:01:43 +0000 (15:01 +0200)]
efl_ui_spec_suite: this is not python2

i don't know why it was added like this.

5 years agocxx: remove compilation warnings in C++ code, from both gcc and clang
Vitor Sousa [Fri, 12 Jul 2019 13:07:27 +0000 (09:07 -0400)]
cxx: remove compilation warnings in C++ code, from both gcc and clang

Summary:
Remove almost all the compilation warnings from C++ code. Only explicit
warnings using the `#warning` preprocessor directive remain.

Some warnings had to be suppressed with `#pragma` directives because the
behavior they were warning about is intended in some specific places.
Code comments were added in such situations.

Added a generator that creates `#pragma` directives in order to suppress
warnings in all generated C++ headers.
Currently `-Wignored-qualifiers` is the only warning category being suppressed.
The innocuous const qualifiers that it points are inoffensive and have
no effect in compilation at all.
They are also hard to track in generation since they can emerge from different
types in many places.

To ease the generation of the warning suppressors an utility constructor was
added to `efl::eolian::grammar::attributes::unused_type`.

Add constructors to `eolian_mono::class_context` to default initialize its
internal string and avoid field initialization warnings.

Test Plan: `meson test`

Reviewers: lauromoura, felipealmeida, zmike, segfaultxavi

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl_language_bindings

Differential Revision: https://phab.enlightenment.org/D9275

5 years agoEvas Events: Decrement grab count on freeze state
Godly T.Alias [Fri, 12 Jul 2019 12:45:18 +0000 (08:45 -0400)]
Evas Events: Decrement grab count on freeze state

Summary:
Decrement grab count of mouse event when mouse up happen during a freeze state.
Currently as grab count is not reduced in this scenario, further touches gets ignored.

Signed-off-by: Godly T.Alias <godlytalias@yahoo.co.in>
Test Plan: (on scenario where proxy exists) mouse down -> freeze events -> mouse up -> unfreeze events

Reviewers: cedric, raster, zmike, Hermet

Reviewed By: zmike

Subscribers: zmike, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9214

5 years agodraw static lib: use sse3 instructions set even on Windows
Vincent Torri [Fri, 12 Jul 2019 11:19:19 +0000 (12:19 +0100)]
draw static lib: use sse3 instructions set even on Windows

Summary:
sse3 instructions set exists since 2003/2004. One can consider that computers with Windows have it, these days

Note also that ector and evas also use sse3 instructions without the test disabling the Windows platform

Test Plan: compilation

Reviewers: zmike, raster, cedric, bu5hm4n

Subscribers: bu5hm4n, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9284

5 years agoRename orientation -> image_orientation.
Hosang Kim [Fri, 12 Jul 2019 08:22:16 +0000 (10:22 +0200)]
Rename orientation -> image_orientation.

Summary:
Efl.Gfx.Image_Orientable and Efl.Ui.Layout_Orientable have same property name.
So when class extends both interfaces, it makes conflict.

Relates to T7924

Reviewers: woohyun, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9299

5 years agovector lottie: register node name as it's designed.
Hermet Park [Thu, 11 Jul 2019 11:10:17 +0000 (20:10 +0900)]
vector lottie: register node name as it's designed.

Caller could find/access a specific node with the name.

5 years agoevas/render: clear smart render cache when re-adding smart parent in post-render
Mike Blumenkrantz [Thu, 11 Jul 2019 18:17:54 +0000 (14:17 -0400)]
evas/render: clear smart render cache when re-adding smart parent in post-render

given the following scenario:
* object is added to smartobj
* smartobj is otherwise unchanged
* render occurs
object will never render due to smartobj's render cache not including object

by clearing this cache when reinserting smartobj into the render tree for a
followup render, the object chain will be correctly processed on the next pass

fix T7990

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9287

5 years agocsharp: Enable conversion of container Eina.Values
Lauro Moura [Thu, 11 Jul 2019 16:36:25 +0000 (13:36 -0300)]
csharp: Enable conversion of container Eina.Values

Summary:
When creating a new Value with any IEnumerable of a supported type, the IEnumerable
will be copied into an Eina.Value of type EINA_VALUE_ARRAY_TYPE.

Similarly, `Unwrap()` on a Eina.Value container will create a new
System.Collections.List<T> and return it.

Depends on D9272

Reviewers: felipealmeida, vitor.sousa, segfaultxavi

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl, #expertise_solutions

Differential Revision: https://phab.enlightenment.org/D9273

5 years agocsharp: Add helpers to get/set Values from Objects
Lauro Moura [Thu, 11 Jul 2019 18:52:52 +0000 (15:52 -0300)]
csharp: Add helpers to get/set Values from Objects

Summary:
The user can construct an `Eina.Value` from a plain C# `object`, using
reflection to get the correct type of object and construct the correct
underlying C value.

Also added the `Unwrap()` method to return a C# object representing the
wrapped value.

Both operations are useful when using `Eina.Value` to
Get/Set values from `PropertyInfo` targets as in

```
var v = new Eina.Value(propInfo.GetValue(sourceObj));
...
propInfo.SetValue(targetObj, v.Unwrap());
```

Currently, containers are not supported. It will be added in a following
commit.

Depends on D9270

Reviewers: felipealmeida, vitor.sousa, segfaultxavi

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9272