platform/upstream/efl.git
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

5 years agocsharp: Tag exported API items.
Lauro Moura [Thu, 11 Jul 2019 18:50:33 +0000 (15:50 -0300)]
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

5 years agotest: add Efl.Ui.Format related test
Shinwoo Kim [Thu, 11 Jul 2019 12:02:27 +0000 (12:02 +0000)]
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

5 years agotests/elm: create abstract function for clicking swallowed part objects
Mike Blumenkrantz [Wed, 10 Jul 2019 19:15:19 +0000 (15:15 -0400)]
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

5 years agotests/elm: break out click helper function for reuse
Mike Blumenkrantz [Wed, 10 Jul 2019 19:06:08 +0000 (15:06 -0400)]
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

5 years agodeclare a few classes stable
Marcel Hollerbach [Wed, 10 Jul 2019 15:25:15 +0000 (17:25 +0200)]
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

5 years agoefl_ui_list: fix warnings
Marcel Hollerbach [Thu, 11 Jul 2019 14:07:11 +0000 (16:07 +0200)]
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

5 years agocsharp: Skip beta interfaces from the list of interfaces.
Lauro Moura [Thu, 11 Jul 2019 14:06:17 +0000 (16:06 +0200)]
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

5 years agoefl_ui_text: avoid infinite loop when long pressing
WooHyun Jung [Thu, 11 Jul 2019 10:18:50 +0000 (10:18 +0000)]
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

5 years agoefl_ui_item: remove internal pointer to select_mode
Marcel Hollerbach [Wed, 10 Jul 2019 14:57:57 +0000 (16:57 +0200)]
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

5 years agoefl_ui_item: rework parent relation
Marcel Hollerbach [Wed, 10 Jul 2019 14:30:04 +0000 (16:30 +0200)]
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

5 years agoELM_CODE: Fix for theming of widget.
Alastair Poole [Thu, 11 Jul 2019 10:36:31 +0000 (10:36 +0000)]
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

5 years agoEfl.Ui.Format: fix regressions
Shinwoo Kim [Thu, 11 Jul 2019 10:33:55 +0000 (10:33 +0000)]
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

5 years agocsharp: Respect beta for implementable functions
Lauro Moura [Thu, 11 Jul 2019 08:19:53 +0000 (10:19 +0200)]
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

5 years agocsharp: Fix build and doc generation re beta stuff
Lauro Moura [Thu, 11 Jul 2019 08:19:52 +0000 (10:19 +0200)]
csharp: Fix build and doc generation re beta stuff

Summary:
When skipping beta items, make sure generated documentation does not try
to refer to beta stuff using `see` tags. Doing so would lead to warnings
when generating the xml doc file and as we now treat warnings as errors,
compilation would fail.

Instead of `see` tags, use a simple `span` with a suffix text explaining
said item is beta.

Reviewers: vitor.sousa, felipealmeida, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl, #expertise_solutions

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

5 years agovector json: replace the data type properly.
Hermet Park [Thu, 11 Jul 2019 08:08:20 +0000 (17:08 +0900)]
vector json: replace the data type properly.

5 years agoefl_ui_*: fix regressions on legacy side
Shinwoo Kim [Thu, 11 Jul 2019 03:35:58 +0000 (03:35 +0000)]
efl_ui_*: fix regressions on legacy side

elm_progressbar_value_set with value bigger than max (or less than min) set to
max value instead of the bigger value. Following commit broke this behavior.

   5efb4b3 efl_ui_*: get range users onto the same semantics

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

5 years agoecore: phab didn't get this bit from D8570.
Cedric BAIL [Wed, 10 Jul 2019 21:09:15 +0000 (14:09 -0700)]
ecore: phab didn't get this bit from D8570.

5 years agoedje: check for user_defined hash existence before removing members
Mike Blumenkrantz [Wed, 10 Jul 2019 19:02:56 +0000 (15:02 -0400)]
edje: check for user_defined hash existence before removing members

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

5 years agoefl: use eina_streq for all property operation in model to avoid crash on NULL proper...
Cedric BAIL [Wed, 10 Jul 2019 18:39:44 +0000 (11:39 -0700)]
efl: use eina_streq for all property operation in model to avoid crash on NULL property name.

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

5 years agoecore: improve usability of Efl.Select_Model to provide helpers in manipulating selec...
Cedric BAIL [Wed, 3 Apr 2019 21:23:50 +0000 (14:23 -0700)]
ecore: improve usability of Efl.Select_Model to provide helpers in manipulating selection information.

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

5 years agoedje: fix some small leaks when failing to reapply user-defined data
Mike Blumenkrantz [Wed, 10 Jul 2019 18:24:55 +0000 (14:24 -0400)]
edje: fix some small leaks when failing to reapply user-defined data

Summary:
this only occurs when the same text parts don't exist in the new layout,
which is an extremely unlikely scenario

Depends on D9210

Reviewers: cedric, bu5hm4n

Reviewed By: cedric, bu5hm4n

Subscribers: bu5hm4n, #reviewers, #committers

Tags: #efl

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

5 years agoedje: improve user-defined data caching to handle data before file is set
Mike Blumenkrantz [Wed, 10 Jul 2019 18:24:53 +0000 (14:24 -0400)]
edje: improve user-defined data caching to handle data before file is set

Summary:
this adds explicit handling for things like:

efl_add(SOMECLASS, parent,
  efl_text_set(efl_added, "my text")
);

on edje-inheriting objects.

note that it's still impossible to do something like
efl_add(SOMECLASS, parent,
  efl_text_set(efl_part(efl_added, "somepart"), "my text")
);

also add a unit test to verify common behaviors

@feature

Depends on D9209

Reviewers: cedric

Reviewed By: cedric

Subscribers: bu5hm4n, #reviewers, #committers

Tags: #efl

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

5 years agoedje: fix reapplying markup text on file/group change
Mike Blumenkrantz [Wed, 10 Jul 2019 18:24:51 +0000 (14:24 -0400)]
edje: fix reapplying markup text on file/group change

Summary:
this was being stored as regular text when it was actually markup

@fix

Depends on D9208

Reviewers: cedric

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agoedje: change 'user_defined' member of Edje struct to be a hash
Mike Blumenkrantz [Wed, 10 Jul 2019 18:24:48 +0000 (14:24 -0400)]
edje: change 'user_defined' member of Edje struct to be a hash

Summary:
this is where all user-added data (e.g., swallowed objects, table/box packs,
text strings) are stored. with this patch, it is now a hash by part name,
storing a list of user-defined data for that part

this simplifies a bit of code by deconstructing some list walks, and
should end up being slightly faster for large edje objects with lots of
user-defined data

ideally no functional changes

Depends on D9206

Reviewers: cedric

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agoeina/hash: add direct variants of list append/prepend functions
Mike Blumenkrantz [Wed, 10 Jul 2019 18:24:46 +0000 (14:24 -0400)]
eina/hash: add direct variants of list append/prepend functions

Summary:
this simplifies the process of manipulating lists inside hashes with a
non-copied key

@feature

Depends on D9205

Reviewers: cedric

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agoedje: remove _edje_user_definition_fetch()
Mike Blumenkrantz [Wed, 10 Jul 2019 18:24:43 +0000 (14:24 -0400)]
edje: remove _edje_user_definition_fetch()

Summary: this is an internal function which is never used

Reviewers: cedric

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agoefl/selection_manager: remove correct conditional
Mike Blumenkrantz [Wed, 10 Jul 2019 18:06:47 +0000 (14:06 -0400)]
efl/selection_manager: remove correct conditional

ref ac26c0a69d0b4fc4b8e3517e23fe6b5c3b77a555

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

5 years agotests/elm: fail tests if unexpected warnings or errors occur
Mike Blumenkrantz [Wed, 10 Jul 2019 17:57:40 +0000 (13:57 -0400)]
tests/elm: fail tests if unexpected warnings or errors occur

Summary:
warnings and errors should never occur in unit tests unless they are
intentionally triggered. this will help catch regressions
Depends on D9256

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoevents: don't check for zeroed event types before registering them
Mike Blumenkrantz [Wed, 10 Jul 2019 17:57:35 +0000 (13:57 -0400)]
events: don't check for zeroed event types before registering them

Summary:
this handles the case of reinitializing a component, but it's totally
broken in the case of doing a full ecore restart
Depends on D9253

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoefl/selection_manager: only create wl event handlers if using wl connection
Mike Blumenkrantz [Wed, 10 Jul 2019 17:57:33 +0000 (13:57 -0400)]
efl/selection_manager: only create wl event handlers if using wl connection

Summary:
this codepath is broken if the wl server connection does not exist

Depends on D9252

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

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

5 years agoelm/player: remove slider range setting from constructor
Mike Blumenkrantz [Wed, 10 Jul 2019 17:57:30 +0000 (13:57 -0400)]
elm/player: remove slider range setting from constructor

Summary:
this was setting an invalid 0<->0 range, which is a misuse of api
Depends on D9251

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agotests/elm: use helper functions for managing naviframe unit test abort-on-error
Mike Blumenkrantz [Wed, 10 Jul 2019 17:57:28 +0000 (13:57 -0400)]
tests/elm: use helper functions for managing naviframe unit test abort-on-error

Summary: also bump up to abort on warnings

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agocanvas event: remove unnecessary condition check.
Hermet Park [Wed, 10 Jul 2019 11:38:54 +0000 (20:38 +0900)]
canvas event: remove unnecessary condition check.

This condition is duplicated in the function,
it's unnecessary.

5 years agoefl_ui_textpath: adjust angle only for circle text.
Hermet Park [Wed, 10 Jul 2019 05:33:29 +0000 (14:33 +0900)]
efl_ui_textpath: adjust angle only for circle text.

5 years agoefl_ui_textpath: code refactoring.
Hermet Park [Wed, 10 Jul 2019 03:40:53 +0000 (12:40 +0900)]
efl_ui_textpath: code refactoring.

less symbol calls, no logic changes.

5 years agoefl_ui_textpath: remove unnecessary set.
Hermet Park [Wed, 10 Jul 2019 03:34:04 +0000 (12:34 +0900)]
efl_ui_textpath: remove unnecessary set.

Textpath positioning is completed manually,
this is duplicated request, remove it.

5 years agoelm_progressbar: set elm.text.status to NULL (UX) 45/210145/2
Shinwoo Kim [Tue, 16 Jul 2019 05:27:50 +0000 (14:27 +0900)]
elm_progressbar: set elm.text.status to NULL (UX)

We have following tizen only commit.

   - bfe7365 progressbar: remove wrong unit format for Tizen UX.

And upstream has following recently added commits

   - 8ab2a74 Efl.Ui.Progressbar: Add explicit display control of progress label

As a result, Tizen progressbar shows elm.text.status by default.
But Tizen UX does not show elm.text.status by default.

@tizen_only

Change-Id: I7eb09b5b4e61d053d5b75a8354306843fdb1af33

5 years agoelm_entry : Modified to prevent sending wrong input hint 28/210128/2
InHong Han [Tue, 16 Jul 2019 05:47:37 +0000 (14:47 +0900)]
elm_entry : Modified to prevent sending wrong input hint

Change-Id: I96e82713d33b12281d85cc6b73a2dae097dbc469

5 years agoecore_imf: deprecate ambigous or unused APIs 42/209742/2
Jihoon Kim [Wed, 10 Jul 2019 11:01:47 +0000 (20:01 +0900)]
ecore_imf: deprecate ambigous or unused APIs

ecore_imf_context_show
ecore_imf_context_hide
ecore_imf_context_control_panel_show
ecore_imf_context_control_panel_hide
ecore_imf_context_preedit_start_event_add
ecore_imf_context_preedit_end_event_add
ecore_imf_context_preedit_changed_event_add
ecore_imf_context_commit_event_add
ecore_imf_context_delete_surrounding_event_add

Change-Id: Ibdf98e4b40b0fa402abeb428fac6c295f74a73cb
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
5 years ago[Evas] Fix on object looping 50/209550/3
Godly T.Alias [Mon, 8 Jul 2019 14:23:26 +0000 (19:53 +0530)]
[Evas] Fix on object looping

Change-Id: Ifab2231e71f55e7b03631fb2e44272c32133dcff
Signed-off-by: Godly T.Alias <godlytalias@yahoo.co.in>
5 years agoUpdating spanish translation accepted/tizen/unified/20190711.062823 submit/tizen/20190710.050854
maxerba [Tue, 9 Jul 2019 17:41:01 +0000 (19:41 +0200)]
Updating spanish translation

5 years agoevas_object_textblock: update documentation, setting color part
Ali Alzyod [Tue, 9 Jul 2019 17:31:44 +0000 (19:31 +0200)]
evas_object_textblock: update documentation, setting color part

Summary: Now Textblock has the ability to parse color names same as hex value strings.

Reviewers: segfaultxavi, woohyun, bowonryu

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agodocs: Update Efl.Ui.Box documentation
Xavi Artigas [Tue, 9 Jul 2019 17:22:10 +0000 (19:22 +0200)]
docs: Update Efl.Ui.Box documentation

It has had a big uppercase FIXME text for 2 years.

5 years agoefl_ui_pan: emit the viewport change when the position changes
Marcel Hollerbach [Tue, 9 Jul 2019 15:37:05 +0000 (17:37 +0200)]
efl_ui_pan: emit the viewport change when the position changes

otherwise the viewport changes are not propagated correctly. This is
needed in order to have the new item_container bug free.

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

5 years agoedje - double make sure edje messages are zero'd due to a segv i saw
Carsten Haitzler (Rasterman) [Tue, 9 Jul 2019 15:02:40 +0000 (16:02 +0100)]
edje - double make sure edje messages are zero'd due to a segv i saw

i saw a segv on freeing em->msg as it was a junk ptr... i dont know
for sure it msg was properly initted but as em is recycled from trash
be sure and zero it when digging out of trash because em->msg was not
a valid ptr (and i wasnt using valgrind at the time to know for sure
and cant find this with valgrind now).

@fix

5 years agotests/efl_ui: add event test for slider
Mike Blumenkrantz [Tue, 9 Jul 2019 13:11:36 +0000 (09:11 -0400)]
tests/efl_ui: add event test for slider

this verifies event emission for slider like in legacy tests

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

5 years agotests/evas: add file for evas event unit tests, add frozen mouse-up test
Mike Blumenkrantz [Tue, 9 Jul 2019 12:52:07 +0000 (08:52 -0400)]
tests/evas: add file for evas event unit tests, add frozen mouse-up test

this adds an explicit test verifying that if an object is frozen before
a mouse-up event is passed through it, the callback for mouse-up will
not be called for that object

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

5 years agoIntroduce efl_ui_scroll_util files.
Marcel Hollerbach [Tue, 9 Jul 2019 12:49:12 +0000 (08:49 -0400)]
Introduce efl_ui_scroll_util files.

Summary:
this brings API that connects the theme to the object. This reduces the
amount of code that you need to write in order to develop a widget that
can be scrollable.

For now efl_ui_grid and efl_ui_scroller are replaced with it.
efl_ui_list / efl_ui_list_view are not handeled with this, as they will
be replaced with newer widgets.

Right now this is only avaiable in the C API. However, wrapping this
into a mixin should be easy.

Reviewers: zmike, segfaultxavi

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoelm - cursor - clear cursor job late to avoid crash
Carsten Haitzler (Rasterman) [Tue, 9 Jul 2019 12:03:31 +0000 (13:03 +0100)]
elm - cursor - clear cursor job late to avoid crash

during cursor free a move cb seems to add another job again after it
wss already deleted during the free process, so just clear the job
really late instead. valgrind found this one

@fix

5 years agoefl-mono: Treat Warnings as Errors
Xavi Artigas [Mon, 8 Jul 2019 14:59:19 +0000 (16:59 +0200)]
efl-mono: Treat Warnings as Errors

Now that there are 0 documentation warnings, let's make sure we stay this way.

5 years agoefl_ui_clickable: fix not to be clicked if pointer is processed
Jaehyun Cho [Fri, 28 Jun 2019 10:35:19 +0000 (10:35 +0000)]
efl_ui_clickable: fix not to be clicked if pointer is processed

If pointer is processed by a container in its POINTER_MOVE event
callback, then clickable calls efl_ui_clickable_button_state_reset not
to be clicked by efl_ui_clickable_unpress.

e.g. Efl.Ui.Active_View.View_Manager_Scroll sets pointer processed in
POINTER_MOVE event callback not to click button during scrolling.

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

5 years agocxx: fix some compilation warnings in C++ examples
Vitor Sousa [Tue, 9 Jul 2019 08:13:27 +0000 (10:13 +0200)]
cxx: fix some compilation warnings in C++ examples

Summary:
Fix some warnings in the C++ examples for elementary. These examples are build
by default in the normal meson compilation.

Only accidental warnings were fixed, explicit warnings using the `#warning`
preprocessor directive were maintained.

Test Plan: Compile with C++ binding.

Reviewers: lauromoura, felipealmeida, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

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

5 years agocsharp: update and disable tests that use deprecated eolian type notations
Vitor Sousa [Tue, 9 Jul 2019 08:05:23 +0000 (10:05 +0200)]
csharp: update and disable tests that use deprecated eolian type notations

Summary:
Avoid the usage of deprecated Eolian type notations like `ptr()` in C# unit
tests.

In places where an alternative type could be used, tests were changed to use
a valid type, e.g. containers that stored `ptr(int)` were changed to store
`string`.

Tests for types that require a pointer notation were commented out and
disabled. They can be re-enabled when a new notation to the type is defined.

Depends on D9238

Test Plan: `meson test`

Reviewers: lauromoura, felipealmeida, q66, segfaultxavi

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, bu5hm4n, #committers

Tags: #efl

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

5 years agoeolian_mono: fix non-beta build and support for slice/rw_slice keywords
Vitor Sousa [Tue, 9 Jul 2019 08:00:06 +0000 (10:00 +0200)]
eolian_mono: fix non-beta build and support for slice/rw_slice keywords

Summary:
Add support for `slice` and `rw_slice` keywords in eolian_mono.
Now it generates the proper manual binding type for these native types.
Make unit tests use these keywords instead of native names.

Remove some unnecessary `@beta` tags from eolian types in unit tests so now
tests correctly compile without the `mono-beta` compilation flag.

Also make tests that use `Eina.Binbuf` "beta only".
In a future update, the external type `Eina.Binbuf` will be marked as beta, so
we shield the binding in anticipation.

Test Plan: `meson -Dbindings=mono -Dmono-beta=true` and `meson -Dbindings=mono -Dmono-beta=false`

Reviewers: lauromoura, felipealmeida, q66, segfaultxavi, bu5hm4n

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agocsharp: fix build warning related with an unused field in an unit test
Vitor Sousa [Mon, 8 Jul 2019 15:53:41 +0000 (17:53 +0200)]
csharp: fix build warning related with an unused field in an unit test

Test Plan: `meson test`

Reviewers: lauromoura, felipealmeida, segfaultxavi

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoEctor.Renderer: Prevent too many unref.
JunsuChoi [Tue, 9 Jul 2019 06:46:41 +0000 (15:46 +0900)]
Ector.Renderer: Prevent too many unref.

Summary:
pd-> surface will try efl_xref whenever surface_set is called.
desturctor is called from a subclass, ref and unref do not match.
So, Add this condition temporarily.

Test Plan: N/A

Reviewers: Hermet, smohanty, kimcinoo

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoUpdating french translation
maxerba [Mon, 8 Jul 2019 19:17:06 +0000 (21:17 +0200)]
Updating french translation

5 years agoefl_ui_spin_button: add test suite
Marcel Hollerbach [Sun, 7 Jul 2019 16:14:13 +0000 (18:14 +0200)]
efl_ui_spin_button: add test suite

this adds a testsuite to emulate and check the usage of buttons in the
spin button widget. This also verifies that the correct events are
emitted. (For now, the testcases from spin are also copied over, since
they inherit from each other)

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

5 years agoefl_ui_spin_button: fix event calling in spin_button
Marcel Hollerbach [Sun, 7 Jul 2019 14:58:01 +0000 (16:58 +0200)]
efl_ui_spin_button: fix event calling in spin_button

before the spin event for changing the value was called twice if you
changed the value by the entry. Additionally, the changed,delay event is
not emitted when the value was changed via the arrow buttons.
This corrects this, additionally, this enables the delay timer when
focus is gone, this is expected and should be supported by the API.

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

5 years agoefl_ui_spin_button: make theme consistent
Marcel Hollerbach [Fri, 5 Jul 2019 17:09:43 +0000 (19:09 +0200)]
efl_ui_spin_button: make theme consistent

this reduces the amount of code needed in the widget itself,
additionally, the theme now follows a scheme.

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

5 years agoefl_ui_spin_button: cleanup internal data
Marcel Hollerbach [Fri, 5 Jul 2019 16:18:33 +0000 (18:18 +0200)]
efl_ui_spin_button: cleanup internal data

there is no reason to store those two times in the internal data, as
they do not change at all. Additionally, saving the direction in the
internal data has also no reason, since it is *always* used in the call
after the setting, so this makes this a parameter.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D9229

5 years agoefl_ui_spin_button: this can also be done with the focus callback
Marcel Hollerbach [Fri, 5 Jul 2019 16:08:02 +0000 (18:08 +0200)]
efl_ui_spin_button: this can also be done with the focus callback

this makes the code more readable, and reduces the amount of events we
are subscribing to.

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

5 years agoefl_ui_spin_button: change entry to button before changing value
Marcel Hollerbach [Fri, 5 Jul 2019 15:44:36 +0000 (17:44 +0200)]
efl_ui_spin_button: change entry to button before changing value

doing this in pressed is kind of weird, if you are on a touchscreen,
missclick, and move the finger away, the entry is already transformed,
which is weird, this fixes that.

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

5 years agoefl_ui_spin_button: this function is 1:1 like this in efl_ui_spin
Marcel Hollerbach [Fri, 5 Jul 2019 15:38:07 +0000 (17:38 +0200)]
efl_ui_spin_button: this function is 1:1 like this in efl_ui_spin

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D9225

5 years agoefl_ui_spin_button: replace timers with autorepeat of button
Marcel Hollerbach [Fri, 5 Jul 2019 15:35:06 +0000 (17:35 +0200)]
efl_ui_spin_button: replace timers with autorepeat of button

this was just reimplementing existing behaviour. This can be done more
easily

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

5 years agoefl_ui_spec_suite: introduce two new test suites
Marcel Hollerbach [Mon, 8 Jul 2019 14:18:57 +0000 (16:18 +0200)]
efl_ui_spec_suite: introduce two new test suites

this checks that the expected errors are in place, and the state does
not get changed when there is an errornous call.

ref T7895
ref T7894

5 years agoefl_ui_*: get range users onto the same semantics
Marcel Hollerbach [Mon, 8 Jul 2019 14:17:38 +0000 (16:17 +0200)]
efl_ui_*: get range users onto the same semantics

this commits introduces unified behaviour for the users of the range
interfaces. This includes:
- The same errors for limit_set errors
- The same errors for value setting outside the range

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

5 years agoefl_ui_spin: add tests for basic spin features
Marcel Hollerbach [Fri, 5 Jul 2019 12:11:23 +0000 (14:11 +0200)]
efl_ui_spin: add tests for basic spin features

this tests for the correct event emission. And checks the wheel
interaction.

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

5 years agodocs: Fill last missing docs from EO files
Xavi Artigas [Mon, 8 Jul 2019 14:56:49 +0000 (16:56 +0200)]
docs: Fill last missing docs from EO files

Some docs have been filled with placeholder text ("TBD") or with preliminary
text (marked with //TODO).
Having 0 doc warning we can now enable Warnings as Errors in mono, and in Eolian later on.

5 years agoRevert "efl: prevent usage of some Eina.* stub types in stable APIs"
Vitor Sousa [Mon, 8 Jul 2019 15:46:25 +0000 (12:46 -0300)]
Revert "efl: prevent usage of some Eina.* stub types in stable APIs"

C# does not support `slice` and `rw_slice` yet.
Reverting until proper support lands.

This reverts commit ec7bc0eddd7abc77d28605b0a6f0aea2e246a0ee.

5 years agocsharp: fix some build warnings related with incorrect and missing documentation
Vitor Sousa [Mon, 8 Jul 2019 15:18:47 +0000 (17:18 +0200)]
csharp: fix some build warnings related with incorrect and missing documentation

Summary:
Some parameter names, tag names and cref identifiers in the documentation were
incorrect and causing warnings during compilation.
There were also warnings related with missing documentation in publicly
visible elements in the manual binding.

This commit fixes these incorrections and adds documentation to the manual
binding in order to solve these compilation warnings.

Warnings related with missing documentation in `.eo` files are still present.

Test Plan: Just compile with mono binding.

Reviewers: lauromoura, felipealmeida, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoefl: prevent usage of some Eina.* stub types in stable APIs
Daniel Kolesa [Mon, 8 Jul 2019 15:01:40 +0000 (17:01 +0200)]
efl: prevent usage of some Eina.* stub types in stable APIs

5 years agoeolian: fix leak in eolian_state_file_path_parse
Mike Blumenkrantz [Mon, 8 Jul 2019 14:17:58 +0000 (16:17 +0200)]
eolian: fix leak in eolian_state_file_path_parse

Summary:
this fixes a trivial leak where a string is leaked at the end of the function.
it is not significant, but it still appears in leak detections.

Reviewers: q66

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoeolian_cxx: update eolian_cxx to recognize slice and rw_slice
Vitor Sousa [Mon, 8 Jul 2019 14:16:07 +0000 (16:16 +0200)]
eolian_cxx: update eolian_cxx to recognize slice and rw_slice

Summary:
Update eolian_cxx to recognize the new keywords `slice` and `rw_slice`, so it
can generate the corresponding types `Eina_Slice` and `Eina_Rw_Slice`.

Reviewers: lauromoura, felipealmeida, q66

Reviewed By: q66

Subscribers: cedric, bu5hm4n, #reviewers, segfaultxavi, #committers

Tags: #efl

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

5 years agoeolian_cxx: update tests to no longer use forbidden eolian notations
Vitor Sousa [Mon, 8 Jul 2019 14:15:41 +0000 (16:15 +0200)]
eolian_cxx: update tests to no longer use forbidden eolian notations

Summary:
Update eolian_cxx tests in order to remove forbidden eolian notations.

For tests with containers that support non-pointer types,
change `ptr(int)` to `int`.
For tests with containers that only support pointer types,
change `ptr(int)` to `string`.

Remove tests for features that are no longer meaningful with eolian new
restrictions.

Add a FIXME note to eina::range_array when used with eina::string_view.

Reviewers: lauromoura, felipealmeida, q66

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers, bu5hm4n, segfaultxavi

Tags: #efl

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

5 years agoeolian: remove API to get freefunc of type
Daniel Kolesa [Wed, 3 Jul 2019 15:52:04 +0000 (17:52 +0200)]
eolian: remove API to get freefunc of type

This is not supported anymore. For now, the syntax is kept
around because of broken C++ tests, but afterwards it will
also be removed.

5 years agoeolian: remove builtin freefuncs
Daniel Kolesa [Wed, 3 Jul 2019 13:03:59 +0000 (15:03 +0200)]
eolian: remove builtin freefuncs

For now this does not alter API behavior, so freefuncs are still
transitive to aliases etc., this will get removed later.

5 years agoeolian_gen: remove reliance on builtin freefuncs
Daniel Kolesa [Wed, 3 Jul 2019 12:45:02 +0000 (14:45 +0200)]
eolian_gen: remove reliance on builtin freefuncs

5 years agoelua: add error api into eolian bindings
Daniel Kolesa [Wed, 3 Jul 2019 12:27:04 +0000 (14:27 +0200)]
elua: add error api into eolian bindings

5 years agoeolian_gen: introduce C generation support for error types
Daniel Kolesa [Sun, 30 Jun 2019 18:26:51 +0000 (20:26 +0200)]
eolian_gen: introduce C generation support for error types

ref T6890

5 years agoelementary: rename Activew_View to Spotlight.
Cedric BAIL [Thu, 4 Jul 2019 23:02:43 +0000 (16:02 -0700)]
elementary: rename Activew_View to Spotlight.

View is something that is expected in the context of MVVM, so using it somewhere else is
going to lead to some confusion. Spotlight does descrive the objective of all of this
widget in actually a more explicit way as they all give the spotlight to one sub widget
at a time.

I have also renamed the View_Manager to be just Manager as the View there wasn't useful.

5 years agodocfx: Remove collapsible sections
Xavi Artigas [Fri, 5 Jul 2019 15:06:39 +0000 (17:06 +0200)]
docfx: Remove collapsible sections

They didn't render correctly in all cases.

5 years agocsharp: Fix Future callback lifetime
Lauro Moura [Mon, 1 Jul 2019 18:35:35 +0000 (15:35 -0300)]
csharp: Fix Future callback lifetime

Assigning a method directly to a field expecting a delegate creates a
delegate on the fly. This delegate can be collected normally as any
collectable object. In dotnet the GC is more aggressive, causing this
delegate to be collected and C trying to call an invalid function.

To avoid this, we create a static delegate that will be passed to C. Its
lifetime will be tied to the static method it wraps.

5 years agocsharp: encapsulate some internal code of EoWrapper
Vitor Sousa [Fri, 28 Jun 2019 21:20:01 +0000 (18:20 -0300)]
csharp: encapsulate some internal code of EoWrapper

Summary:
Encapsulate some parts of EoWrapper making them less accessible to lib users.
This can avoid unnecessary and risky usage of code that is only intended for
internal usage.

`inherited` field was made private and renamed to `generated`. Now its value
can only be obtained through the `IsGeneratedBindingClass` property.

`handle` field was made private.

`eventLock` was renamed to `eflBindingEventLock`

`ConstructingHandle` property set was made private.

Constructors that are used to create new EFL# managed objects by wrapping a
preexisting eo handle now receive a specific struct wrapping the handle pointer.
This can avoid faulty interactions with the Reflection engine used only for
generated classes that implement this constructor.

Test Plan: meson test

Reviewers: lauromoura, felipealmeida, YOhoho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoefl_ui_widget: optimize focus
Marcel Hollerbach [Thu, 4 Jul 2019 13:24:22 +0000 (15:24 +0200)]
efl_ui_widget: optimize focus

this commit ensures 2 things:
1. This ensures that the parent is not evaluated when there was no state
changed, this cuts down roughly 30% of the calls to full_eval
2. This ensures that we only listen to parent manager changes when we
are actaully registered. This reduces the amount spend in event emission
a lot.

5 years agoEfl.Ui.Format revamp
Xavi Artigas [Tue, 2 Jul 2019 12:40:06 +0000 (14:40 +0200)]
Efl.Ui.Format revamp

This class helps widgets which contain a numerical value and must display it,
like Progressbar (units label), Spin, Spin_Button, Slider (both units and popup
labels, in legacy), Tags (when in shrunk mode) or Calendar (year_month label).

Previously this was a mix of interface and mixin: widgets had to support setting a
formatting func, and the mixin offered support for formatting strings, by setting
an internal formatting func. On top of that, the spinner widget supported "special
values", a list of values that should be shown as certain strings instead.

This has now been simplified and unified:
Widgets including this mixin can use the formatted_value_get() method which accepts
an Eina_Value and returns a string. Thats's it.
The mixin adds three properties to the widget (format_values, format_func and
format_string) which users can use to tailor formatting. The widget does not need
to know which method has been used, it just retrieves the resulting string.
This removes a lot of duplicated widget code, and adds functionality which was
missing before. For example, all widgets support passing a list of values now.

Widgets must implement the apply_formatted_value() method so they are notified
of changes in the format and they can redraw anything they need.

Tests have been added to the Elementary Spec suite for all cases.

Legacy widgets behavior has not been modified, although a few needed some code
changes.

5 years agoci: finally enable examples for mingw build
Stefan Schmidt [Mon, 1 Jul 2019 08:24:04 +0000 (10:24 +0200)]
ci: finally enable examples for mingw build

With the gnutls build problem fixed we can now enable these as well.

5 years agoci: cross: make sure we use the mingw pkg-config to detect cross deps
Stefan Schmidt [Tue, 2 Jul 2019 08:59:08 +0000 (10:59 +0200)]
ci: cross: make sure we use the mingw pkg-config to detect cross deps

This only came up when we had gnutls native but not cross to find out
that we used the system pkg-config all the time to detect cross.
Making sure we use the correct tool to detect the cross dependencies.

5 years agoci: enable more build options for mingw job
Stefan Schmidt [Fri, 28 Jun 2019 14:41:14 +0000 (16:41 +0200)]
ci: enable more build options for mingw job

Withj an updated ewpi in the docker image we can now enable more build
options. Examples are still disabled as there is a build break that
needs to get fixed first.

5 years agotests/radio: add explicit test for verifying legacy radio callback triggering
Mike Blumenkrantz [Mon, 1 Jul 2019 16:26:02 +0000 (12:26 -0400)]
tests/radio: add explicit test for verifying legacy radio callback triggering

the 'changed' callback should never be triggered when programmatically
changing a radio's state

ref T8042

5 years agotests: add functional unit tests for radio widgets
Mike Blumenkrantz [Mon, 1 Jul 2019 16:09:08 +0000 (12:09 -0400)]
tests: add functional unit tests for radio widgets

this adds some basic testing to verify that callbacks occur and values
are set as expected

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

5 years agoEfl.Ui.Progressbar: Add explicit display control of progress label
Xavi Artigas [Fri, 28 Jun 2019 08:08:03 +0000 (10:08 +0200)]
Efl.Ui.Progressbar: Add explicit display control of progress label

Summary:
Add a property (show_progress_label) to allow controlling whether the progress
label displaying the exact progress is shown or not.
This was possible in Legacy but the functionality was lost in Unified.

Updated elementary_test to showcase this property, and also the other label
formatting options, which where not tested anywhere.

Added a simple progressbar unit test. It only checks that retrieved value is the
same as the set value, so it is more of a placeholder for future tests.

**This is needed by a future patch which will introduce more formatting options that clash with the current implementation.**
The presence of a formatting function was used to decide if the progress label was shown or not. This explicit property simplifies things.

Test Plan:
Everything builds and passes tests.
`elementary_test -to Efl.Ui.Progressbar` should show a few more bars with different formatting labels, and a checkbox to toggle rendering of one of them.

Reviewers: bu5hm4n, zmike, cedric

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agoeina: add accessors for c arrays
Marcel Hollerbach [Mon, 1 Jul 2019 17:18:11 +0000 (19:18 +0200)]
eina: add accessors for c arrays

This adds a new API which can be used to get access to a carray via the eina_accessor API.

5 years agoelementary: remove unused elm_widget header files
Jaehyun Cho [Mon, 1 Jul 2019 11:12:46 +0000 (20:12 +0900)]
elementary: remove unused elm_widget header files

elm_widget_bg.h and elm_widget_clipper.h are not used any more.
So those header files are removed.

5 years agospec: make a gcov package for measuring coverage easier 25/209425/2
Jongmin Lee [Mon, 8 Jul 2019 00:27:37 +0000 (09:27 +0900)]
spec: make a gcov package for measuring coverage easier

Change-Id: I33d8e9574ccedd200cdee2b1142e82c18e6033de

5 years agoecore_imf: Modified to prevent sending wrong input hint 36/209636/2
InHong Han [Tue, 9 Jul 2019 09:31:17 +0000 (18:31 +0900)]
ecore_imf: Modified to prevent sending wrong input hint

Change-Id: Ia20c10946c7e194a3db189f01443107ce5070bc3

5 years agoefl_ui_check/radio: restore legacy behaviour
Marcel Hollerbach [Tue, 2 Jul 2019 19:05:07 +0000 (21:05 +0200)]
efl_ui_check/radio: restore legacy behaviour

from now on, the "changed" signal is only emitted on radio/check buttons when
the user interacted with this object. NOT due to the API change.
However, in the eo-api the event is emitted all the time, due to user
interaction, AND due to API interaction.

ref T8042

5 years agoEvas events: Reduce grab count even in freezed state 24/209224/3
Godly T Alias [Wed, 3 Jul 2019 14:44:11 +0000 (14:44 +0000)]
Evas events: Reduce grab count even in freezed state

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.

Change-Id: Ieb2b33efa506258d0bd685464746c65bd9e5892c