platform/upstream/efl.git
4 years agoeolian: allow read-only stringshare in events
Daniel Kolesa [Mon, 23 Sep 2019 13:26:23 +0000 (15:26 +0200)]
eolian: allow read-only stringshare in events

While the type cannot be moved to the callee, it at least provides
a hint that it's a stringshare, leeting people ref it instead of
copying.

4 years agoci: add back target to do out-of-tree test build
Mike Blumenkrantz [Thu, 19 Sep 2019 13:28:57 +0000 (09:28 -0400)]
ci: add back target to do out-of-tree test build

this is necessary in order to ensure that our headers are usable

ref T8228

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D10036

4 years agoelementary: unref objects when memory allocation fails in factory
Jaehyun Cho [Thu, 19 Sep 2019 09:49:39 +0000 (09:49 +0000)]
elementary: unref objects when memory allocation fails in factory

The objects referenced are unreferenced when memory allocation fails in
elementary factory.

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

4 years agoector engine: +null checking.
Hermet Park [Mon, 23 Sep 2019 12:12:07 +0000 (21:12 +0900)]
ector engine: +null checking.

Null pixels is allowed when drawing region is 0,

In that case, the pixel buffer can be destroyed earlier by vg.

@fix

4 years agoefl_ui_tab_pager: fix infinite selected calls
Jaehyun Cho [Mon, 23 Sep 2019 10:37:10 +0000 (19:37 +0900)]
efl_ui_tab_pager: fix infinite selected calls

Since tab_pager's _select() and tab_bar's _selection_change_cb() cause
calling each other infinitely.

4 years agoelm_test: mark image_zoomable test as non-legacy
Mike Blumenkrantz [Mon, 23 Sep 2019 10:56:11 +0000 (12:56 +0200)]
elm_test: mark image_zoomable test as non-legacy

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agoeina_log: do not fallback to INFO when we run with systemd support
Marcel Hollerbach [Mon, 23 Sep 2019 07:42:22 +0000 (09:42 +0200)]
eina_log: do not fallback to INFO when we run with systemd support

INFO is a way too verbose log domain, this lead to the fact that we
spammed journald before the first frame with ~200-300 messages
(depending on the setup) which is quite a lot. Additionally, this also
lead to the fact that we often TIMEOUT our own tests.

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D10075

4 years agoelementary_codegen: check before use to avoid use after free
Stefan Schmidt [Fri, 20 Sep 2019 10:11:39 +0000 (12:11 +0200)]
elementary_codegen: check before use to avoid use after free

These might or might not have been freed already, depending on the
breaks form the above loop. Before we are having a use after free here
better check on it before free'ing another time.

Coverity IDs: 1402671, 1402701

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

4 years agoefl_ui_exact_model: fix always true condition
Stefan Schmidt [Fri, 20 Sep 2019 09:19:51 +0000 (11:19 +0200)]
efl_ui_exact_model: fix always true condition

The tbuf binbuffer has already been freed the line above, which means
this condition would always be true as !tbuf would always result in true.
As a result the rest of the function has never been executed.

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

4 years agoefl_ui_selection_manager: free allocated memory after local use
Stefan Schmidt [Fri, 20 Sep 2019 08:46:02 +0000 (10:46 +0200)]
efl_ui_selection_manager: free allocated memory after local use

This temporary allocation is only used in this block and goes out of
scope when leaving. Make sure we free the resource before this happens.

Coverity ID: 1402653

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

4 years agoefl_ui_textpath: make sure variables are not uses uninitialized
Stefan Schmidt [Fri, 20 Sep 2019 08:36:17 +0000 (10:36 +0200)]
efl_ui_textpath: make sure variables are not uses uninitialized

First and last could have been uninitialized for their first use in some
cases. Make sure we set the x y coordinates to 0 to begin with.

Coverity IDs: 1401458, 1404747

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

4 years agoefl_ui_scrollable: remove ui_scrollable_interactive and move all into ui_scrollable
WooHyun Jung [Mon, 23 Sep 2019 08:48:02 +0000 (10:48 +0200)]
efl_ui_scrollable: remove ui_scrollable_interactive and move all into ui_scrollable

Summary:
Based on the discussion T7883, there is no reason to keep those
interfaces separately. So, now, efl_ui_scrollable will support
the events and methods together.

@ref T7883

Reviewers: eagleeye, bu5hm4n, zmike, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7883

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

4 years agotest: Add a logic to check a size of Check
Wonki Kim [Sat, 21 Sep 2019 04:28:24 +0000 (04:28 +0000)]
test: Add a logic to check a size of Check

If I pack a check without any api calls into a box,
then it doesn't have the hint_min size which is defined on check edc.
I guess there are problems on sizing logic currently, so this patch helps people
to test the problem.

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

4 years agoelm/layout: remove check for finalize in efl_canvas_group_change impl
Mike Blumenkrantz [Fri, 20 Sep 2019 13:04:16 +0000 (09:04 -0400)]
elm/layout: remove check for finalize in efl_canvas_group_change impl

this used to be a thing in order to prevent widgets from spamming themselves
with recalcs during construction, but since that's no longer possible we
can remove this and also resolve an issue where legacy widgets failed
to correctly calculate their min size if no text was set

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

4 years agoUse EFL version for doc tarball, not meson version
Ross Vandegrift [Sun, 22 Sep 2019 23:30:25 +0000 (23:30 +0000)]
Use EFL version for doc tarball, not meson version

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

4 years agodocs: Typos in Efl.Object
Xavi Artigas [Mon, 23 Sep 2019 08:41:46 +0000 (10:41 +0200)]
docs: Typos in Efl.Object

4 years agoefl_ui : fix possible memory leak on model compressing
SangHyeon Jade Lee [Fri, 20 Sep 2019 01:40:01 +0000 (10:40 +0900)]
efl_ui : fix possible memory leak on model compressing

Summary: fix memory leak of model compressing on binbuf and allocated data.

Reviewers: cedric, bu5hm4n, zmike

Reviewed By: cedric, zmike

Subscribers: #reviewers, #committers

Tags: #efl

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

4 years agogenlist: skip unnecessary process call while genlist clearing 82/212782/3
SangHyeon Jade Lee [Tue, 27 Aug 2019 01:21:36 +0000 (10:21 +0900)]
genlist: skip unnecessary process call while genlist clearing

item_process is calling while genlist clearing when
the item is relatvely added.

skiping unnecessary process calls improve deletion performances.

Change-Id: Ic12c4ea190799a79fb2f369569b453d5061f8019
Signed-off-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
4 years agoelementary: fix derefrenced pointer accessing on adjusting item 92/214292/2
SangHyeon Jade Lee [Fri, 20 Sep 2019 01:55:26 +0000 (10:55 +0900)]
elementary: fix derefrenced pointer accessing on adjusting item

Change-Id: I2392de287318168c1097aa6826e0a54190bb8b3a
Signed-off-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
4 years agoelementary: prevent zero-division in gengrid internal circle patch position calculate 91/214291/2
SangHyeon Jade Lee [Fri, 20 Sep 2019 01:51:09 +0000 (10:51 +0900)]
elementary: prevent zero-division in gengrid internal circle patch position calculate

Change-Id: I130deac7a6b04d1bdb07aae1f51f10508162e4ee
Signed-off-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
4 years agobuild: resolve build error during migration submit/tizen/20190923.005744
Jongmin Lee [Sun, 22 Sep 2019 21:22:39 +0000 (06:22 +0900)]
build: resolve build error during migration

Change-Id: Id3d2437e84e3dbbebc45ff784f7e4b6345be7dc3

4 years agoefl_ui_collection: protect against invalid access
Marcel Hollerbach [Sat, 21 Sep 2019 09:08:46 +0000 (11:08 +0200)]
efl_ui_collection: protect against invalid access

i am not sure why this should ever happen. However, a error here is
better than a access out of the bounds of the array.

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

4 years agoefl_ui_bg: implement load_controller and efl.gfx.image via composition
Marcel Hollerbach [Sat, 21 Sep 2019 08:15:18 +0000 (10:15 +0200)]
efl_ui_bg: implement load_controller and efl.gfx.image via composition

With this commit the API of load controller and efl.gfx.image is
implemented via composition, which makes eolians API checker happy

ref T7880

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

4 years agoefl_gfx_image: remove ptr()
Marcel Hollerbach [Sat, 21 Sep 2019 15:53:53 +0000 (17:53 +0200)]
efl_gfx_image: remove ptr()

this is not needed here, and not permitted in a none beta context.

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

4 years agoefl_ui_image: implement Efl.Gfx.Image and Efl.Gfx.Image_Load_Controller
Marcel Hollerbach [Sat, 21 Sep 2019 15:37:07 +0000 (17:37 +0200)]
efl_ui_image: implement Efl.Gfx.Image and Efl.Gfx.Image_Load_Controller

at first i tried to implement that with composition, however, this does
not work, caused by the fact that the edje_object does not implement
efl.gfx.image nor load controller. which would mean i would have to
differentiate based on the type what kind of composition i would attach,
additionally, i would have to write an additional object which would
implement the correct behaviour.

To shortcut this overdone approach, this commit simply implements the
APIs in the image object.

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

4 years agoelementary: make our tests work again
Marcel Hollerbach [Sat, 21 Sep 2019 11:10:53 +0000 (13:10 +0200)]
elementary: make our tests work again

73219114682f64fdbfe0809be3f2d991016dd3f1 moved the constructor to to
top, which leads to the fact that a few widgets cannot fetch the shared
data of the window. Which made the test suite fail.

With this commit we are just moving the sub_object_add after the
constructor, which fixes the flip crash.
This fixes the test suite

4 years agoefl ui widget - call parent constructor before doing more init
Carsten Haitzler (Rasterman) [Sat, 21 Sep 2019 09:26:46 +0000 (10:26 +0100)]
efl ui widget - call parent constructor before doing more init

the object is not properly set up yet for child classes -0 parent like
the main evas object or smart obj havent been constructed yet so call
this really early, not in the middle of construction of an efl ui
widget...

this fixes a segv in elementary_test -to filp where it segv's on
object construction where evas object ->cur/prev are NULL (not set up
yet).

4 years agocsharp: Guard hash usage behind EFL_BETA.
Lauro Moura [Fri, 20 Sep 2019 22:22:22 +0000 (19:22 -0300)]
csharp: Guard hash usage behind EFL_BETA.

Summary: After 718f3cd49586, hashes are currently beta-only.

Reviewers: zmike, brunobelo

Reviewed By: brunobelo

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agoeolian_mono: add more verbs to generate C# method beginning with verb
Jaehyun Cho [Fri, 20 Sep 2019 22:14:02 +0000 (19:14 -0300)]
eolian_mono: add more verbs to generate C# method beginning with verb

Summary:
C# language binding generates C# method name beginning with verb by
checking verb list in name_helpers.hh.

Some verbs used in eo method are missing in the current verb list. So
they are added into the verb list.

In this scheme, there is a problem that some words can be used as a verb
in some methods but they also can be used as a noun in other methods.
(e.g. drag_start as a verb / cursor_word_start as a noun)

So "start" and "scroll" are not added to verb list in this patch.
To resolve the above problem, we may need a new eo syntax to rename or
reverse the name in language bindings.

Test Plan: Check C# method names in .eo.cs files if the name begins with verb.

Reviewers: felipealmeida, SanghyeonLee, woohyun, Jaehyun_Cho, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agoRevert "build: resolve build error"
Jongmin Lee [Fri, 20 Sep 2019 21:26:32 +0000 (06:26 +0900)]
Revert "build: resolve build error"

This reverts commit 11d6f49658f44a2ad09a76fa28095077a1b438a1.

4 years agoeolian: rename any_value_ptr -> any_value_ref for consistency
Daniel Kolesa [Fri, 20 Sep 2019 16:02:07 +0000 (18:02 +0200)]
eolian: rename any_value_ptr -> any_value_ref for consistency

4 years agoeolian: string(share) is always const, allow in events out of box
Daniel Kolesa [Fri, 20 Sep 2019 15:46:56 +0000 (17:46 +0200)]
eolian: string(share) is always const, allow in events out of box

4 years agoeolian: make hashes beta-only for now
Daniel Kolesa [Fri, 20 Sep 2019 15:03:58 +0000 (17:03 +0200)]
eolian: make hashes beta-only for now

They're not completely settled on and we don't even know if we want
them at all. So let's make them beta only for now.

Ref T8050.

4 years agoUse proper Eolian syntax for default values instead of docs
Xavi Artigas [Fri, 20 Sep 2019 14:38:18 +0000 (11:38 -0300)]
Use proper Eolian syntax for default values instead of docs

Summary:
Eolian supports reporting the defaults for parameters and return values, but in some
places we have been writing this information in the documentation instead.
This patch moves it to its proper place, where documentation generators can pick it up
and render it in a consistent manner.

Ref T8171

Reviewers: zmike, bu5hm4n, lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8171

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

4 years agocsharp: Add support for default param references in documentation
Lauro Moura [Fri, 20 Sep 2019 14:05:01 +0000 (16:05 +0200)]
csharp: Add support for default param references in documentation

Summary:
This also adds the information of default values in `parameter_def`.
This will help adding actual default parameter support in the C#
bindings.

Thanks to @segfaultxavi for improved formatting and escaping.

Fixes T8224

Reviewers: segfaultxavi, felipealmeida, brunobelo

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, segfaultxavi, #committers

Tags: #efl

Maniphest Tasks: T8224

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

4 years agoefl_ui_factory: improve docs
Marcel Hollerbach [Fri, 20 Sep 2019 13:16:25 +0000 (15:16 +0200)]
efl_ui_factory: improve docs

Summary:
and remove TAAABS
Depends on D10038

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agoefl.ui.scrollbar: fix event name for scrollbar
Hosang Kim [Fri, 20 Sep 2019 10:42:50 +0000 (12:42 +0200)]
efl.ui.scrollbar: fix event name for scrollbar

Summary: Event name is applied in the past tense.

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agobuild: switch build type to release for now
Stefan Schmidt [Fri, 20 Sep 2019 07:35:36 +0000 (09:35 +0200)]
build: switch build type to release for now

This should have been done with the first alpha, but there was a bug
preventing this. With commit 6960751c4580af9e902cd7719c1acafab4ce7bc5
the problem is fixed and we can finally enable it.

4 years agoefl_ui_scroll_util: add null check after calloc
WooHyun Jung [Fri, 20 Sep 2019 02:09:02 +0000 (11:09 +0900)]
efl_ui_scroll_util: add null check after calloc

4 years agoefl_io_model: next try to fix this race condition
Marcel Hollerbach [Wed, 18 Sep 2019 09:32:08 +0000 (11:32 +0200)]
efl_io_model: next try to fix this race condition

what is happening is that a file gets announced through eio_model
listing code, at this point of time, the monitor does not yet know about
the file. If the file now gets deleted between the annoncing and the
learning of the file from the monitor, then the file got an ADD event,
but no DEL event. Which is a bug.

With this commit there is a new API which asks the monitor if the file
already has the knowledge about the files existance, or not. A few
monitors like win32 inotify or cocoa do not have context about the file
directly, if the OS is now having the same bug, then we are again in
trouble, however, we canot do anything about that. In the case of kevent
or poll, this asks the context of the monitor if the file is already
there.

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

4 years agoelementary: Efl.Ui.Widget_Factory bind widget property before finalizing the widget.
Cedric BAIL [Fri, 23 Aug 2019 21:29:55 +0000 (14:29 -0700)]
elementary: Efl.Ui.Widget_Factory bind widget property before finalizing the widget.

In the same vain as previous patch this will initialize more of the widget during its
creation and reduce unecessary recalc.

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

4 years agoelementary: leverage sizing information from model if available to avoid unecessary...
Cedric BAIL [Fri, 23 Aug 2019 19:48:16 +0000 (12:48 -0700)]
elementary: leverage sizing information from model if available to avoid unecessary calc.

With the new Efl unified infrastructure, we do delay a lot of the computation to finalize,
by filling the object information before finalize we reduce unecessary computation.

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

4 years agoefl_ui_position_manager: a way to announce new entities
Marcel Hollerbach [Sun, 15 Sep 2019 09:54:51 +0000 (11:54 +0200)]
efl_ui_position_manager: a way to announce new entities

there are situations where the entity is not ready yet when the initial
placing does happen. With this API you can tell the position manager
that the placing of the items can be reapplied at the entities are
availble now.

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

4 years agoefl: improve Efl.Boolean_Model test to enforce Eina_Value type too.
Cedric Bail [Thu, 19 Sep 2019 02:30:17 +0000 (19:30 -0700)]
efl: improve Efl.Boolean_Model test to enforce Eina_Value type too.

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

4 years agoecore: remove unused piece of code.
Cedric Bail [Wed, 18 Sep 2019 17:33:23 +0000 (10:33 -0700)]
ecore: remove unused piece of code.

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

4 years agoecore: properly initialize all field in event generated by Efl.Generic_Model
Cedric Bail [Wed, 18 Sep 2019 02:03:48 +0000 (19:03 -0700)]
ecore: properly initialize all field in event generated by Efl.Generic_Model

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

4 years agoecore: properly initialize the event structure in Efl.Generic_Model.
Cedric Bail [Wed, 18 Sep 2019 01:42:51 +0000 (18:42 -0700)]
ecore: properly initialize the event structure in Efl.Generic_Model.

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

4 years agoeina: add code to help debug leaking Eina_Value.
Cedric Bail [Sun, 15 Sep 2019 02:12:44 +0000 (19:12 -0700)]
eina: add code to help debug leaking Eina_Value.

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

4 years agoeina: add eina_mempool_iterator_new to slowly iterate every allocated pointer in...
Cedric Bail [Sat, 14 Sep 2019 17:54:05 +0000 (10:54 -0700)]
eina: add eina_mempool_iterator_new to slowly iterate every allocated pointer in a mempool.

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

4 years agoefl_ui_layout_part_table: implement missing API
Marcel Hollerbach [Wed, 18 Sep 2019 12:59:44 +0000 (14:59 +0200)]
efl_ui_layout_part_table: implement missing API

setting of these properties does not work, as they are not available in
legacy, but edje is still creating legacy objects.

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

4 years agoefl_ui_layout_part_*: declare stable
Marcel Hollerbach [Tue, 17 Sep 2019 14:41:49 +0000 (16:41 +0200)]
efl_ui_layout_part_*: declare stable

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

4 years agoefl_ui_widget_*: declare parts stable
Marcel Hollerbach [Tue, 17 Sep 2019 13:59:07 +0000 (15:59 +0200)]
efl_ui_widget_*: declare parts stable

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

4 years agoefl_ui_layout_part_box/table: remove real_part_set
Marcel Hollerbach [Tue, 17 Sep 2019 14:39:55 +0000 (16:39 +0200)]
efl_ui_layout_part_box/table: remove real_part_set

real part set was used to set the real part on the part, so the obj
pointer of Layout_Part_Data points to the correct evas object. With this
commit, this API is removed from the public .eo files, and is refactored
into the same API which is private.

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

4 years agoefl_ui_layout_part_table: implement Efl.Pack.pack API
Marcel Hollerbach [Tue, 17 Sep 2019 14:25:37 +0000 (16:25 +0200)]
efl_ui_layout_part_table: implement Efl.Pack.pack API

this api was missing, the pack method here is behaving in the same
manner as Efl.Ui.Table.

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

4 years agoefl_ui_widget_part: implement all the missing API
Marcel Hollerbach [Tue, 17 Sep 2019 13:51:54 +0000 (15:51 +0200)]
efl_ui_widget_part: implement all the missing API

Efl.Color and Efl.File cannot be done due to composition. Efl.Gfx.Image
can, so we can solve this via composition, this also resolves all the
other cases for Efl.Gfx.Image.

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

4 years agoefl_test_multi_selectable: test for the correct event
Marcel Hollerbach [Wed, 18 Sep 2019 15:42:28 +0000 (17:42 +0200)]
efl_test_multi_selectable: test for the correct event

EFL_UI_EVENT_ITEM_SELECTED / UNSELECTED is the wrong event here. We
should check of the selection changed event. ITEM_SELECTED is the legacy
event. this was not found based on the fact that we test for this event
to NOT be executed.

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

4 years agoelm_test_widget_focus: cleanup callbacks correctly
Marcel Hollerbach [Thu, 19 Sep 2019 12:43:31 +0000 (14:43 +0200)]
elm_test_widget_focus: cleanup callbacks correctly

we need to delete the callback here, otherwise the objects are deleted
later on, which:
- changes focus, which leads to
- callbacks executed with stacked addresses from a dead function

this fixes a testsuite failure on the release build.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D10020

4 years agoefl_ui_collection: fix null pointer dereferences
Yeongjong Lee [Tue, 17 Sep 2019 09:15:05 +0000 (09:15 +0000)]
efl_ui_collection: fix null pointer dereferences

This will fix Coverity issue.

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

4 years agoeo: custom created legacy events should be unfreezable
Marcel Hollerbach [Thu, 19 Sep 2019 07:27:59 +0000 (09:27 +0200)]
eo: custom created legacy events should be unfreezable

a while back we have moved event submission from custom lists to eo
events. We also merged together the freeze and thaw functions, however,
this brought up one bug. smart_callbacks and the likes (those that used
custom lists before) are not effected by the legacy freeze and thaw
functions. This means, we should declare these legacy wrapper objects
unfreezable in order to obtain this behaviour.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D10016

4 years agoefl_ui: further unbreak headers
Mike Blumenkrantz [Thu, 19 Sep 2019 14:54:47 +0000 (10:54 -0400)]
efl_ui: further unbreak headers

move more header includes around to fix building with Efl_Ui.h

ref T8228

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

4 years agoecore/signal: increase maximum signal throughput
Mike Blumenkrantz [Thu, 19 Sep 2019 18:52:23 +0000 (14:52 -0400)]
ecore/signal: increase maximum signal throughput

this adds 4 more signal handling fds and loops over them for reading/writing
signal info in order to handle more signals when the buffer of one (or more)
pipes is full

also update the unit test to verify that we are receiving all the events without
dropping any and bump the number of signals to 2000 since we should now be able to
handle that many

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

4 years agotests/ecore: add stress test for main loop signal handling
Mike Blumenkrantz [Thu, 19 Sep 2019 18:15:45 +0000 (14:15 -0400)]
tests/ecore: add stress test for main loop signal handling

this explodes after about 500 signals, so make it 1000 for a good test

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

4 years agoecore/signal: also use nonblock for writing side of signal pipe
Mike Blumenkrantz [Thu, 19 Sep 2019 18:03:59 +0000 (14:03 -0400)]
ecore/signal: also use nonblock for writing side of signal pipe

if any efl-based process receives a bunch of signals in a short period of
time, it will deadlock in the signal handler. this is unavoidable given the
current signal handling architecture

by setting nonblock, we can at least avoid deadlocking even if it means we'll
be losing signal events

@fix

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

4 years agoecore_evas_tbm: set tbm_surface_queue to ecore window 37/214037/2
Changyeon Lee [Mon, 16 Sep 2019 12:31:52 +0000 (21:31 +0900)]
ecore_evas_tbm: set tbm_surface_queue to ecore window

Change-Id: I598666204d347c84a7af233865addf94bb07a868

4 years agobuild: resolve build error
Jongmin Lee [Thu, 19 Sep 2019 22:48:18 +0000 (07:48 +0900)]
build: resolve build error

Efl_Ui.h include some private headers that are not installed, therefore
application that include Efl_Ui.h became failed to build due to missing
private headers. This patch install private headers to include directories
in order to avoid those build errors

@tizen_fix

Change-Id: I94323ff9a749cbe2014cacd2a09ab0eda75f5abd

4 years agobuild: resolve build error according to header cleaning up
Jongmin Lee [Thu, 19 Sep 2019 21:47:22 +0000 (06:47 +0900)]
build: resolve build error according to header cleaning up

@tizen_fix

Change-Id: I9d078a817c0d530423d35b60cd3cec5edb3a991e

4 years agoeolian: remove the composite keyword (replaced by composites)
Daniel Kolesa [Thu, 19 Sep 2019 16:17:37 +0000 (18:17 +0200)]
eolian: remove the composite keyword (replaced by composites)

4 years agoefl: replace composite with composites and dedup implements
Daniel Kolesa [Thu, 19 Sep 2019 15:32:56 +0000 (17:32 +0200)]
efl: replace composite with composites and dedup implements

Since using 'composites' now automatically implements what has not
been implemented yet, remove the unnecessary duplicates.

4 years agoeolian: allow composites keyword in place of composite
Daniel Kolesa [Thu, 19 Sep 2019 15:26:48 +0000 (17:26 +0200)]
eolian: allow composites keyword in place of composite

Fixes T8218.

4 years agoeolian: auto-add composited interfaces into implements if needed
Daniel Kolesa [Thu, 19 Sep 2019 14:49:31 +0000 (16:49 +0200)]
eolian: auto-add composited interfaces into implements if needed

The condition here is that the composited interface does not
already appear in the inheritance tree of the given class. If
it does, don't add. If it doesn't, add it to the class that
specifies the composited block.

4 years agodocs: Update documentation for Efl.Gfx.Color_Class
Xavi Artigas [Thu, 19 Sep 2019 14:51:04 +0000 (16:51 +0200)]
docs: Update documentation for Efl.Gfx.Color_Class

4 years agoeolian: return NULL instead of EINA_FALSE on safety checks
Daniel Kolesa [Thu, 19 Sep 2019 14:04:56 +0000 (16:04 +0200)]
eolian: return NULL instead of EINA_FALSE on safety checks

4 years agodocs: Update docs for Efl.Gfx.Image_Orientable
Xavi Artigas [Thu, 19 Sep 2019 11:11:00 +0000 (13:11 +0200)]
docs: Update docs for Efl.Gfx.Image_Orientable

4 years agoefl_model: fix links
Marcel Hollerbach [Thu, 19 Sep 2019 09:36:27 +0000 (11:36 +0200)]
efl_model: fix links

Summary: Depends on D10009

Reviewers: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agoefl_model: improve docs
Marcel Hollerbach [Thu, 19 Sep 2019 09:36:26 +0000 (11:36 +0200)]
efl_model: improve docs

Reviewers: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agodocs: Update documentation on Gestures
Xavi Artigas [Thu, 19 Sep 2019 09:17:49 +0000 (11:17 +0200)]
docs: Update documentation on Gestures

We need to keep in mind that the Manager and the Recognizers are not visible to the user.
The user only sees the events and the different Efl.Canvas.Gesture_* payloads.

4 years agodoc: fix typo and indentation.
Hermet Park [Thu, 19 Sep 2019 06:29:15 +0000 (15:29 +0900)]
doc: fix typo and indentation.

4 years agodoc: improves single line description of gesture class.
Myoungwoon Roy, Kim [Thu, 19 Sep 2019 06:23:07 +0000 (15:23 +0900)]
doc: improves single line description of gesture class.

Summary: This patch improves single line descriptions described on T7717

Test Plan: NA

Reviewers: segfaultxavi, woohyun, Hermet, cedric

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

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

4 years agoevas mask: refactoring code.
Hermet Park [Thu, 19 Sep 2019 04:59:05 +0000 (13:59 +0900)]
evas mask: refactoring code.

This clearly separate the condition cases clear so that
the analizyer tool doesn't bother us anymore.

No logical changes.

Change-Id: I8e543993bec16270b81031264c1ddb771a0c825f

4 years agoevas gl: remove unnecessary null check.
Hermet Park [Thu, 19 Sep 2019 04:39:48 +0000 (13:39 +0900)]
evas gl: remove unnecessary null check.

If we check reference validation, the rest of other usage
should keep the reference check as well.

Remove it since gl prorgram must be valid always here
to shutdown the static analyzer reporting this suspicous logic.

Change-Id: I26aea9b29756e36d36d5ea18415f07905849ffd9

4 years agoevas map: disable the anti_aliasing code which can't be reached.
Hermet Park [Thu, 19 Sep 2019 04:24:08 +0000 (13:24 +0900)]
evas map: disable the anti_aliasing code which can't be reached.

This anti-aliasing is a little buggy, should be improved.

But just leaving to fix later when it's necessary.

Change-Id: I00f4800e77562dc156b997a8206982f92fcc1d2d

4 years agoeolian: disallow void for out/inout for stable API
Daniel Kolesa [Wed, 18 Sep 2019 17:46:58 +0000 (19:46 +0200)]
eolian: disallow void for out/inout for stable API

4 years agotests/elm: add eventing test for normal check widget, verify api compatibility
Mike Blumenkrantz [Thu, 5 Sep 2019 14:53:59 +0000 (10:53 -0400)]
tests/elm: add eventing test for normal check widget, verify api compatibility

legacy check widgets should not emit a "changed" event when using the api to
change the widget's state

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

4 years agotests/check: add unit test for elm_toggle (check) callback
Mike Blumenkrantz [Tue, 3 Sep 2019 18:56:24 +0000 (14:56 -0400)]
tests/check: add unit test for elm_toggle (check) callback

verify that the "changed" callback is triggered as expected

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

4 years agoelm/check: fix emission of legacy "changed" callback
Mike Blumenkrantz [Wed, 18 Sep 2019 16:02:35 +0000 (12:02 -0400)]
elm/check: fix emission of legacy "changed" callback

legacy "check" and "toggle" widgets operate differently:
* check emits only the "toggle" event
* toggle emits "toggle", "on", "off"

legacy also must not emit events when the widget's state is changed
programmatically

to handle this effectively, check whether the event has been emitted for
each state when the signal is emitted from the theme, and track this
for subsequent uses to ensure that exactly one event is triggered
when it should be

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

4 years agoefl/radio/box: handle non-radio-objects
Mike Blumenkrantz [Tue, 17 Sep 2019 18:00:19 +0000 (14:00 -0400)]
efl/radio/box: handle non-radio-objects

this improves the usefulness of radio box by presenting it as a box widget
which has the additional feature of being able to manage radio widgets

also fix all the image cases in elm_test which relied on there being only
a single box in the window

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

4 years agobuild: firmly split legacy and unified API into Efl_Ui.h and Elementary.h
Mike Blumenkrantz [Mon, 16 Sep 2019 19:22:33 +0000 (15:22 -0400)]
build: firmly split legacy and unified API into Efl_Ui.h and Elementary.h

these headers should be usable independently without having one secretly
pull in the other

fix T7667

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9981

4 years agobuild: remove efl_ui_calendar.h
Mike Blumenkrantz [Mon, 16 Sep 2019 19:22:03 +0000 (15:22 -0400)]
build: remove efl_ui_calendar.h

this was somehow actually a legacy header which duplicated elm_calendar.h
...sort of

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9980

4 years agobuild: use correct animation_view headers in Efl_Ui.h and Elementary.h
Mike Blumenkrantz [Mon, 16 Sep 2019 19:17:15 +0000 (15:17 -0400)]
build: use correct animation_view headers in Efl_Ui.h and Elementary.h

efl_ui_animation_view.h is the legacy header (but why?)
efl_ui_animation_view.eo.h is the unified header

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9979

4 years agobuild: fix elm header usage
Mike Blumenkrantz [Mon, 16 Sep 2019 19:10:34 +0000 (15:10 -0400)]
build: fix elm header usage

.c files in src/lib/elementary should only include elm_priv.h to ensure
that all the include ordering is correct and that all necessary headers
are pulled in

.c files outside of src/lib/elementary should include either/both
Efl_Ui.h, Elementary.h as needed

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9978

4 years agoelm/priv: fix this header
Mike Blumenkrantz [Mon, 16 Sep 2019 19:09:27 +0000 (15:09 -0400)]
elm/priv: fix this header

this should include emotion, since that component is used internally,
and it should not explicitly include api headers which should be in
public headers

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9977

4 years agoelm/widget: make this header usable without elm_priv.h again
Mike Blumenkrantz [Mon, 16 Sep 2019 19:08:13 +0000 (15:08 -0400)]
elm/widget: make this header usable without elm_priv.h again

supposedly this header should be usable if someone wants to create an
elm widget, so ensure that it can be included without issues

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9976

4 years agoefl_ui/image_zoomable: include header for internal pan
Mike Blumenkrantz [Mon, 16 Sep 2019 19:07:38 +0000 (15:07 -0400)]
efl_ui/image_zoomable: include header for internal pan

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9975

4 years agoelm/scrollable: unbreak this header
Mike Blumenkrantz [Mon, 16 Sep 2019 18:59:56 +0000 (14:59 -0400)]
elm/scrollable: unbreak this header

this is a legacy header, it can't include any unified api types

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9974

4 years agobuild: add include guards for a couple elm headers
Mike Blumenkrantz [Mon, 16 Sep 2019 18:59:28 +0000 (14:59 -0400)]
build: add include guards for a couple elm headers

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9973

4 years agoefl_ui/win: fix prototype decls for eo api versions of autodel
Mike Blumenkrantz [Mon, 16 Sep 2019 18:57:49 +0000 (14:57 -0400)]
efl_ui/win: fix prototype decls for eo api versions of autodel

this is still pretty broken, but at least the headers aren't

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9972

4 years agobuild: use legacy api in places where legacy should be used
Mike Blumenkrantz [Mon, 16 Sep 2019 18:53:54 +0000 (14:53 -0400)]
build: use legacy api in places where legacy should be used

these seem to randomly have been changed when they shouldn't have

also install elm_clock_eo.h since this is required but we didn't install it

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9971

4 years agoTABS
Xavi Artigas [Wed, 18 Sep 2019 14:05:17 +0000 (16:05 +0200)]
TABS

4 years agocanvas vg: code refactoring.
Hermet Park [Wed, 18 Sep 2019 12:51:14 +0000 (21:51 +0900)]
canvas vg: code refactoring.

remove unnecessary reference cooridnates.

4 years agoelm_config: fix to check if eet_open fails
Wonki Kim [Wed, 18 Sep 2019 12:21:02 +0000 (08:21 -0400)]
elm_config: fix to check if eet_open fails

Summary: this patch adds a guard block in case of failure of eet_open().

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

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