Commit Graph

62777 Commits

Author SHA1 Message Date
Christopher Michael 723412404f 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
2019-07-15 11:01:20 -04:00
Christopher Michael b9f89fabb6 tests: Add tests for ecore_wl2_display_get and
ecore_wl2_display_name_get

ref T8016
2019-07-15 10:08:32 -04:00
Christopher Michael 73acf72cc4 tests: Add file for Ecore_Wl2 display tests
Add file which can be used to add tests for ecore_wl2 display functions

ref T8016
2019-07-15 09:54:18 -04:00
Christopher Michael 3b28a0a0f5 meson: Modify Ecore_Wl2 sub project to add tests
ref T8016
2019-07-15 09:54:08 -04:00
Christopher Michael e33609937e tests: Add start of Ecore_Wl2 test suite
Small patch set to add the start of a Ecore_Wl2 test suite

ref T8016
2019-07-15 09:53:59 -04:00
Mike Blumenkrantz 43993fd7fc 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
2019-07-15 09:51:01 -04:00
junsu choi 2e4c928d81 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
2019-07-15 21:23:38 +09:00
junsu choi 84fcc5d073 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
2019-07-15 21:22:49 +09:00
Carsten Haitzler 01d6683e32 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.
2019-07-15 11:46:26 +01:00
Carsten Haitzler 1ed15f5b42 config - make harfbuzz default on these days
probably a good move given how common it is now.
2019-07-15 11:15:33 +01:00
Carsten Haitzler cf005ac54a build - let's make xinput 2.2 default these days...
about time since it's common enough by now.
2019-07-15 11:09:31 +01:00
Carsten Haitzler 480bb10243 add INSTALL file back as permanent instructions on meson building 2019-07-15 10:17:07 +01:00
Boris Faure 213301df35 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
2019-07-15 14:13:29 +09:00
Jihoon Kim f5ee2e3bb8 ecore_imf: remove code to use deprecated API in wayland immodule
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
2019-07-15 11:37:53 +09:00
Vitor Sousa c3c81263fd 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
2019-07-12 17:15:37 -03:00
Cedric BAIL b799ba1a10 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
2019-07-12 09:54:24 -07:00
Cedric BAIL 5847886a3f 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
2019-07-12 09:54:21 -07:00
Cedric BAIL 382c580182 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
2019-07-12 09:54:18 -07:00
Cedric BAIL 6a93e2ef3d 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
2019-07-12 09:54:16 -07:00
Cedric BAIL ce076d1323 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
2019-07-12 09:54:14 -07:00
Cedric BAIL 9f35c74d9d 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
2019-07-12 09:54:11 -07:00
Cedric BAIL 2020f971a4 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
2019-07-12 09:54:08 -07:00
Cedric BAIL b2cb77ca9c 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
2019-07-12 09:54:06 -07:00
Cedric BAIL 9fbc5dfc66 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
2019-07-12 09:54:03 -07:00
Cedric BAIL d3efb9c769 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
2019-07-12 09:54:01 -07:00
Cedric BAIL 23a2820121 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
2019-07-12 09:53:59 -07:00
Subodh Kumar 2854702f8e 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
2019-07-12 12:04:06 -04:00
Mike Blumenkrantz a9504b9e75 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
2019-07-12 16:24:39 +02:00
Marcel Hollerbach 913af2f0d1 efl_ui_spec_suite: this is not python2
i don't know why it was added like this.
2019-07-12 15:10:37 +02:00
Vitor Sousa b1e44484a5 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
2019-07-12 09:07:27 -04:00
Godly T.Alias c001a8146b 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
2019-07-12 08:45:18 -04:00
Vincent Torri 9c8a7bce24 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
2019-07-12 12:19:19 +01:00
Hosang Kim 7d33cf977f 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
2019-07-12 10:32:20 +02:00
Hermet Park e24d6aee69 vector lottie: register node name as it's designed.
Caller could find/access a specific node with the name.
2019-07-12 10:19:18 +09:00
Mike Blumenkrantz b6ebcc35fc 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
2019-07-11 16:51:35 -07:00
Lauro Moura 3b5d050353 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
2019-07-11 15:57:32 -03:00
Lauro Moura 6be38caeae 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
2019-07-11 15:55:04 -03:00
Lauro Moura a19bb21edf csharp: Tag exported API items.
Summary:
Attributes to be used by the API export tool. For end users, no changes
in the public API (except for a new attribute in generated classes).

Also simplifies constructor forwarding by not needing to pass the type
of the first "generated" class to compare.

Currently only automatically generated items are tagged.

Depends: D9259

Reviewers: vitor.sousa, felipealmeida

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9270
2019-07-11 15:51:38 -03:00
Shinwoo Kim 89399672b7 test: add Efl.Ui.Format related test
This patch is including negative test as well.
See https://phab.enlightenment.org/D9276. This could make @bu5hm4n very happy.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9281
2019-07-11 17:40:47 +02:00
Mike Blumenkrantz 162c0e2ba5 tests/elm: create abstract function for clicking swallowed part objects
this handles all the part object getting and signal processing and geometry
calculating so you can get to clickin those parts faster

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9269
2019-07-11 17:40:46 +02:00
Mike Blumenkrantz 4a1c13f491 tests/elm: break out click helper function for reuse
also fixes lifetime issue with spin parts

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9268
2019-07-11 17:40:45 +02:00
Marcel Hollerbach 1c8f6132af declare a few classes stable
this is the first wave of stablization declarations

fixes T7562
fixes T7846
fixes T7848
fixes T7859
fixes T7860
fixes T7861
fixes T7863
fixes T7878
fixes T7899
fixes T7918
fixes T7919
fixes T7963
fixes T7964
fixes T7965
fixes T7967
fixes T7969
fixes T7970

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9264
2019-07-11 17:15:43 +02:00
Marcel Hollerbach dc2dba6c88 efl_ui_list: fix warnings
Summary: nothing to see here, move on!

Reviewers: zmike, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9283
2019-07-11 16:11:04 +02:00
Lauro Moura 7e9eac9fb1 csharp: Skip beta interfaces from the list of interfaces.
Summary:
Interfaces were declaring Beta parent interfaces instead of skipping
them.

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9282
2019-07-11 16:06:32 +02:00
WooHyun Jung 3798356819 efl_ui_text: avoid infinite loop when long pressing
Long pressing on efl_ui_text gave inifinte loop. So, I removed
event_call in the event callback function.
I think long press functionality is almost broken after applying
clickable_util. There is no way to remove long press timer based
on the action on efl_ui_text.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9274
2019-07-11 13:40:24 +02:00
Marcel Hollerbach d512ff68ae efl_ui_item: remove internal pointer to select_mode
there was this internal pointer to select_mode for getting the selection
mode of the container. However, we now have API for checking this, so
there is exactly 0 reason for doing this like this. Additionally, with
the old way of doing, bildings like C# or lua are just lost, they cannot
use this class at all in there implementations, as they cannot access
the privat data.

ref T905

Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D9263
2019-07-11 13:30:27 +02:00
Marcel Hollerbach d30fc5f5d3 efl_ui_item: rework parent relation
this commit ensures that there is a public way of setting the container
to a item. This was also like this before, just with the difference that
it was set and unset in all privacy, however, we want to have this class
also ready for bindings, so we should stop making things privat like
this.

Note: the removed fields from grid and list have not been used.

ref T7905

Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D9262
2019-07-11 13:30:26 +02:00
Alastair Poole 5a698b6a3d ELM_CODE: Fix for theming of widget.
Change inhertitence for object so we can use
themes with elm_code.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9279
2019-07-11 13:19:55 +02:00
Shinwoo Kim a3a07f6e83 Efl.Ui.Format: fix regressions
(1) Following commit did not care of efl_ui_format_string_get(set) of
elm_slider_part_indicator_eo.c

   e776f5f Efl.Ui.Format revamp

Even though you call elm_slider_indicator_format_set with "%1.0f",
elm_slider_indicator_format_get returns NULL.

(2) The commit does not initialize format variables
   - elm_slider_indicator_format_get
   - elm_slider_unit_format_get
   - elm_progressbar_unit_format_get

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9276
2019-07-11 13:19:54 +02:00
Lauro Moura fa333608b7 csharp: Respect beta for implementable functions
Summary:
Build fix (remove warnings)

Instead of returning the beta functions in the vector and relying on
function generators to skip them, filter them out when filling the
implementable methods vector.

This will make the code return the actual number of implementable
function, skipping some unused fields in places like the NativeMethods
implementations.

Depends on D9258

Reviewers: vitor.sousa, felipealmeida, segfaultxavi

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl, #expertise_solutions

Differential Revision: https://phab.enlightenment.org/D9259
2019-07-11 10:19:53 +02:00