platform/upstream/efl.git
5 years agoefl_ui_pager: set current page as -1 when pager is empty
Jaeun Choi [Wed, 23 Jan 2019 12:17:29 +0000 (21:17 +0900)]
efl_ui_pager: set current page as -1 when pager is empty

it makes more sense that the current page number is -1 when pager is empty
since numbering starts from 0 when pager actually contains pages.
this patch also fixes a bug in pack_begin function, in which
the current page is increased by 1.

5 years agoefl_ui_pager: use '++' instead of '+= 1'
Jaeun Choi [Wed, 23 Jan 2019 12:03:34 +0000 (21:03 +0900)]
efl_ui_pager: use '++' instead of '+= 1'

5 years agoefl_ui_pager: add missing conditions in pack before/after function
Jaeun Choi [Wed, 23 Jan 2019 11:57:09 +0000 (20:57 +0900)]
efl_ui_pager: add missing conditions in pack before/after function

the functions should return if the 'existing' object is not in the content list

5 years agoefl_ui_pager: add missing condition in current page set function
Jaeun Choi [Wed, 23 Jan 2019 11:52:07 +0000 (20:52 +0900)]
efl_ui_pager: add missing condition in current page set function

5 years agoefl_ui_pager: return some functions if pager is in the middle of animation
Jaeun Choi [Wed, 23 Jan 2019 11:43:34 +0000 (20:43 +0900)]
efl_ui_pager: return some functions if pager is in the middle of animation

after this patch is applied,
if users try to pack a page object or bind a transition object
to a pager while it is in the middle of page changing animation,
related functions do nothing and just return.

5 years agoefl_ui_pager: removed unnecessary lines
Jaeun Choi [Wed, 23 Jan 2019 11:36:04 +0000 (20:36 +0900)]
efl_ui_pager: removed unnecessary lines

5 years agoefl_ui_pager: add missing NULL checks
Jaeun Choi [Wed, 23 Jan 2019 11:25:08 +0000 (20:25 +0900)]
efl_ui_pager: add missing NULL checks

5 years agoefl_ui_pager: modify a part of default theme
Jaeun Choi [Wed, 23 Jan 2019 03:23:58 +0000 (12:23 +0900)]
efl_ui_pager: modify a part of default theme

5 years agoefl_page_transition_scroll: removed unnecesary variable
Jaeun Choi [Thu, 13 Dec 2018 12:13:37 +0000 (21:13 +0900)]
efl_page_transition_scroll: removed unnecesary variable

5 years agoefl_page_transition_scroll: code refactoring in curr_page_change function
Jaeun Choi [Thu, 13 Dec 2018 12:06:42 +0000 (21:06 +0900)]
efl_page_transition_scroll: code refactoring in curr_page_change function

- removed unnecesary codes
- moved codes for better cohesion

5 years agoefl_page_transition_scroll: bug fix in curr_page_change function
Jaeun Choi [Thu, 13 Dec 2018 11:54:59 +0000 (20:54 +0900)]
efl_page_transition_scroll: bug fix in curr_page_change function

mark when a page's content is unset so that it can be refilled when necessary

5 years agoefl_page_transition_scroll: code refactoring in update function
Jaeun Choi [Thu, 13 Dec 2018 11:27:56 +0000 (20:27 +0900)]
efl_page_transition_scroll: code refactoring in update function

5 years agoefl_page_transition_scroll: bug fix in update function
Jaeun Choi [Thu, 13 Dec 2018 08:59:47 +0000 (17:59 +0900)]
efl_page_transition_scroll: bug fix in update function

since page_infos are connected in a circular manner,
one node (head or tail) moves in the opposite direction when scrolled.
there was a bug in hiding such nodes and
this patch fixes it.

5 years agoeo: improve efl_isa to be able to know if a class is part of the hierarchy of another...
Cedric BAIL [Fri, 18 Jan 2019 22:04:59 +0000 (14:04 -0800)]
eo: improve efl_isa to be able to know if a class is part of the hierarchy of another class.

Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7703

5 years agoevas: Defer object lookup until it's necessary
Derek Foreman [Thu, 24 Jan 2019 17:15:11 +0000 (11:15 -0600)]
evas: Defer object lookup until it's necessary

We frequently BAIL from this function before we actually need the
efl_data_scope_get() return, so we can save some pointer indirection by
deferring.

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
5 years agoeo: propagate knowledge of EFL_EVENT_NOREF callback registration to the event call...
Cedric BAIL [Thu, 24 Jan 2019 00:29:47 +0000 (16:29 -0800)]
eo: propagate knowledge of EFL_EVENT_NOREF callback registration to the event call generation.

This reduce the amount of time efl_event_callback_call(EFL_EVENT_NOREF) is triggered by a factor of 10.

Reviewed-by: Derek Foreman <derekf@osg.samsung.com>
Differential Revision: https://phab.enlightenment.org/D7744

5 years agoeo: remove EFL_EVENT_SPECIAL_SKIP.
Cedric BAIL [Wed, 23 Jan 2019 23:44:29 +0000 (15:44 -0800)]
eo: remove EFL_EVENT_SPECIAL_SKIP.

EFL_EVENT_SPECIAL_SKIP has been defined to 1 for a long time and there
wasn't a way to disable it at all. There is no reason to not use it at
all, so here we go. This was default, now it is without useless code.

Reviewed-by: Derek Foreman <derekf@osg.samsung.com>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7743

5 years agoeo: remove function efl_noref that duplicate EFL_EVENT_NOREF.
Cedric BAIL [Wed, 23 Jan 2019 23:33:01 +0000 (15:33 -0800)]
eo: remove function efl_noref that duplicate EFL_EVENT_NOREF.

efl_noref is unused, but will still trigger the full eo call for nothing.
This was the most expensive NOOP. EFL_EVENT_NOREF does the same thing and
we can even filter generating that call as we know when someone is listening.
So removing the function.

Reviewed-by: Derek Foreman <derekf@osg.samsung.com>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7742

5 years agomeson - edje_cc use -fastcomp for fast builds in mesa
Carsten Haitzler (Rasterman) [Thu, 24 Jan 2019 12:23:30 +0000 (12:23 +0000)]
meson - edje_cc use -fastcomp for fast builds in mesa

5 years agoelm theme - use -fastcomp again as it is actually much faster now
Carsten Haitzler (Rasterman) [Thu, 24 Jan 2019 12:18:27 +0000 (12:18 +0000)]
elm theme - use -fastcomp again as it is actually much faster now

5 years agoeet - fix eet compression to differentiate lx4 and lz4hc
Carsten Haitzler (Rasterman) [Thu, 24 Jan 2019 12:11:15 +0000 (12:11 +0000)]
eet - fix eet compression to differentiate lx4 and lz4hc

so edje uses -fastcomp and -fastdecomp for lz4 and lz4hc .. before.
but the emile conversion nuked this difference and uses lz4hc no
matter what (EET_COMPRESSION_SUPERFAST vs EET_COMPRESSION_VERYFAST).
lz4hc is actuallly massively slower than lz4. this fixes -fastcomp to
be fast again... i tested a theme compile and it went from down from
81sec to 10sec.

5 years agoefl_ui_list_view: Hide SegArray and PreciseLayouter
Larry Lira [Thu, 24 Jan 2019 13:29:28 +0000 (22:29 +0900)]
efl_ui_list_view: Hide SegArray and PreciseLayouter

Summary:
Changed seg_array eolian class to struct
Changed PreciseLayouter and Relayout to private eolian
Removed relayout set/get in Efl.Ui.List.View

Reviewers: cedric, felipealmeida, SanghyeonLee

Reviewed By: cedric, felipealmeida, SanghyeonLee

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agodocs: Update efl_ui_zoom documentation
Xavi Artigas [Thu, 24 Jan 2019 12:57:50 +0000 (13:57 +0100)]
docs: Update efl_ui_zoom documentation

Although, it would have been really great that using the getter paused the
animation and using the setter resumed it...

5 years agoefl_ui_layout: use the correct object
Marcel Hollerbach [Thu, 24 Jan 2019 08:52:37 +0000 (09:52 +0100)]
efl_ui_layout: use the correct object

the obejct used in D7740 have been false.
Here comes the fix + a few tests.

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7746

5 years agoelm_gesture_layer: Allow a negative zoom with scroll wheel
Michael Bouchaud (yoz) [Thu, 24 Jan 2019 09:05:14 +0000 (10:05 +0100)]
elm_gesture_layer: Allow a negative zoom with scroll wheel

Summary:
In my point of view, we have no reasons to forbid a negative zoom here.
This make gesture_layer more user friendly as we have no more arbitrary
constaint. (A good example is elm_map)

Reviewers: tasn, zmike, raster, cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoefl_ui_image: implement remaining efl.layout.calc methods
Mike Blumenkrantz [Wed, 23 Jan 2019 20:39:43 +0000 (15:39 -0500)]
efl_ui_image: implement remaining efl.layout.calc methods

this is just proxying the method calls onto the inner edje object if
the image is an edje object

ref T5719

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

5 years agoefl_ui_layout: implement remaining efl.layout.calc methods
Mike Blumenkrantz [Wed, 23 Jan 2019 20:39:43 +0000 (15:39 -0500)]
efl_ui_layout: implement remaining efl.layout.calc methods

this is just proxying the method calls onto the inner edje object

ref T5719

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

5 years agoexamples: remove data parameter of efl_loop_promise_new
Jaehyun Cho [Thu, 24 Jan 2019 04:27:50 +0000 (13:27 +0900)]
examples: remove data parameter of efl_loop_promise_new

Build error is fixed by removing data parameter of efl_loop_promise_new.
This patch is for 563f91eaf98fff474a4858f2d81c6374f0d777b9

5 years agoexamples: fix edc build error
Jaehyun Cho [Thu, 24 Jan 2019 04:27:24 +0000 (13:27 +0900)]
examples: fix edc build error

The state changes which set non-exist state are removed.
Missing states are added.
Incorrect state value is fixed.

5 years agomeson: fix to make results same as a way it does in autotools 92/198892/2
Wonki Kim [Wed, 30 Jan 2019 08:43:32 +0000 (08:43 +0000)]
meson: fix to make results same as a way it does in autotools

I found that results of build are different by build tools.
this patch fixes meson.build to make results same as a way it does in autotools.
Differential Revision: https://phab.enlightenment.org/D7819

Change-Id: I8ff17e7064a022dbc965e4d2ab63a6a114515e10

5 years agobuild: remove eina-bench-cmp from DIST list 91/198891/1
Wonki Kim [Tue, 29 Jan 2019 22:40:21 +0000 (22:40 +0000)]
build: remove eina-bench-cmp from DIST list

the script has been removed on meson.build cause it's quite useless.
this patch removes it from autotools build also.
Differential Revision: https://phab.enlightenment.org/D7828

Change-Id: I60250e1f08642d6f0db6659c9eaa0cad11ffc2c3

5 years agoecore_wl2_input: update a timestamp whenever possible 90/198890/1
Wonki Kim [Tue, 29 Jan 2019 12:06:33 +0000 (07:06 -0500)]
ecore_wl2_input: update a timestamp whenever possible

Summary:
gettimeofday function returns a accumulated timestamp since around 1970 by the way,
a argument from server looks like a system uptime based timestamp
in some distribution such as tizen.

so that this patch appends a logic that updates a timestamp
inside Ecore_Wl2_Input* whenever possible to
prevent gettimeofday function from being called.

Reviewers: #reviewers, cedric, devilhorns

Reviewed By: #reviewers, devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl

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

Change-Id: I6a74972c326a6484580fed3ab94264ec6f635192

5 years agogengrid: refactored circular mode features 02/198802/3
SangHyeon Jade Lee [Wed, 30 Jan 2019 00:16:50 +0000 (09:16 +0900)]
gengrid: refactored circular mode features

Change-Id: I128d4b368171fde6e8fd24f8667b78701e9e13d2
Signed-off-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
5 years agoefl_gfx_image_animation_controller: Rename '*.Image_Animation_*' to '*.Frame_*' 22/198822/1
JunsuChoi [Wed, 30 Jan 2019 03:27:52 +0000 (12:27 +0900)]
efl_gfx_image_animation_controller: Rename '*.Image_Animation_*' to '*.Frame_*'

Summary:
Efl.Gfx.Image_Animation_Controller name refers to the control of an animatable image.
However, the method we use is closer to controlling the frame.
We can change the name to Efl.Gfx.Frame_Controller and enhance the functionality of the frame control.

efl_gfx_image_animation_controller: Applies name changed history

Applies the change history changed
from Efl.Gfx.Image_Animation_Controller to Efl.Gfx.Frame_Controller
(409dcfb560e2c3006756787676c86160a226255c)

Test Plan: N/A

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Change-Id: I83e7c56a27bee4ecf3a1203bfa5ec5a084637ff1

5 years agospec: fix build break 05/198805/1
Wonki Kim [Wed, 30 Jan 2019 02:05:03 +0000 (11:05 +0900)]
spec: fix build break

this patch fixes a build break caused by 10ae701ca4b59f79edcf5eb9de2dd622c221a293

Change-Id: I95de9675a8e5af7308fcc42bb4acd5146af07be2
Signed-off-by: Wonki Kim <wonki_.kim@samsung.com>
5 years agoGengrid : apply circular gengrid for wearable profile 92/191292/5
SangHyeon Jade Lee [Mon, 15 Oct 2018 11:04:06 +0000 (20:04 +0900)]
Gengrid : apply circular gengrid for wearable profile

Change-Id: I94c4de018a0e9b44c8157e3bc92ad2ff65b93c52
Signed-off-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
5 years agospec: modify definitions for build dependency 76/198776/2
Wonki Kim [Tue, 29 Jan 2019 09:54:53 +0000 (18:54 +0900)]
spec: modify definitions for build dependency

Rpm spec guideline tells us that
build dependency should be defined by calling pkg-config
to reduce maintenance cost.

this patch modify efl.spec file to meet the guideline.

Change-Id: I243f97701400ee3ad350dbac6c35e51a44427f57
Signed-off-by: Wonki Kim <wonki_.kim@samsung.com>
5 years agospec: prevent examples from being built and packaged 81/198781/3
Wonki Kim [Tue, 29 Jan 2019 10:28:07 +0000 (19:28 +0900)]
spec: prevent examples from being built and packaged

this refactoring patch replaces 'comment out' logic by if-by-defined-value.

in addition, this patch contains a few of clean-up changes also.

Change-Id: Ia2307d67eaf6f86d2896e4c325dd7442a8e6616e
Signed-off-by: Wonki Kim <wonki_.kim@samsung.com>
5 years agoEfl.Ui.Animation_View: Implement Min/Max_Progress/Frame_Set/Get 77/198777/1
JunsuChoi [Tue, 29 Jan 2019 09:59:51 +0000 (18:59 +0900)]
Efl.Ui.Animation_View: Implement Min/Max_Progress/Frame_Set/Get

Summary:
Implements APIs to set the range when playing.
If we set progress or frame's min and max, it will play within the set value.
keyframe sets the value based on min/max, not the whole frame.

void efl_ui_animation_view_min_progress_set(Eo *obj, double min_progress);
double efl_ui_animation_view_min_progress_get(const Eo *obj);
void efl_ui_animation_view_max_progress_set(Eo *obj, double max_progress);
double efl_ui_animation_view_max_progress_get(const Eo *obj);
void efl_ui_animation_view_min_frame_set(Eo *obj, int min_frame);
int efl_ui_animation_view_min_frame_get(const Eo *obj);
void efl_ui_animation_view_max_frame_set(Eo *obj, int max_frame);
int efl_ui_animation_view_max_frame_get(const Eo *obj);

Test Plan:
Evas_Object *anim_view = elm_animation_view_add(win);
elm_animation_view_auto_repeat_set(anim_view, 1);
elm_animation_view_file_set(anim_view, "a.json", NULL);
elm_animation_view_play(anim_view);
evas_object_show(anim_view);

evas_object_size_hint_align_set(anim_view, EVAS_HINT_FILL, EVAS_HINT_FILL);
evas_object_size_hint_weight_set(anim_view, 1, 1);

elm_animation_view_min_progress_set(anim_view, 0.3);
elm_animation_view_max_progress_set(anim_view, 0.8);

//or
elm_animation_view_min_frame_set(anim_view, 5);
elm_animation_view_max_frame_set(anim_view, 15);

Reviewers: Hermet

Subscribers: cedric, smohanty, #reviewers, SanghyeonLee, #committers

Tags: #efl

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

Change-Id: Ie49ae9d4e24b9710a89102141c67a91d6b0d6371

5 years agoedje_cc: check return value of fseeks 47/198747/1
Yeongjong Lee [Mon, 28 Jan 2019 08:26:09 +0000 (17:26 +0900)]
edje_cc: check return value of fseeks

Reviewers: Jaehyun_Cho, zmike

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Change-Id: I9ccd53b3e60e63696ca59392c952030b803b0062

5 years agoFix dereferencing issue and add chmod error handling(elm_code_file) 15/198715/3
Myoungwoon Roy, Kim [Tue, 29 Jan 2019 04:25:05 +0000 (13:25 +0900)]
Fix dereferencing issue and add chmod error handling(elm_code_file)
Removes unreachable codes(efl_ui_win)

Change-Id: Idbe6fcdf8f60597c8cffe918667f10f09e7f0f83

5 years agodisable rlottie dependency. 06/198706/1 accepted/tizen/unified/20190130.053657 submit/tizen/20190129.023343
Hermet Park [Tue, 29 Jan 2019 01:35:51 +0000 (10:35 +0900)]
disable rlottie dependency.

cut-off dependency to resolve packaging breakage.

Change-Id: I2c40805980b069c0ba09452c99676567124f60c0

5 years agoRevert "edje_cc: fail upon detecting invalid part description references in programs" 59/198659/1 submit/tizen/20190128.120547
Hermet Park [Mon, 28 Jan 2019 12:01:23 +0000 (21:01 +0900)]
Revert "edje_cc: fail upon detecting invalid part description references in programs"

This reverts commit fdec1b505eaf7d79eaba932cc0bafedfe3177d6f.

Change-Id: I38462a5e89facd0452f2c9f6561a62096de0f2fb

5 years agoevas vg: fix a regression bug in caching logic. 38/198638/1
Hermet Park [Mon, 28 Jan 2019 08:27:20 +0000 (17:27 +0900)]
evas vg: fix a regression bug in caching logic.

drop previous cached surface if new caching surface is coming,
Now, evas vg could keep only 1 surface cache ignoring size.

Change-Id: I0144cbe1fac839e82d730370f27dca3e7b878688

5 years agoevas vg: improve masking render logic. 32/198632/1
Hermet Park [Mon, 28 Jan 2019 07:53:42 +0000 (16:53 +0900)]
evas vg: improve masking render logic.

Previous masking image is generated on vg rendering time,
though context is changed to main vg rendering to masking,
This had a issue that ector context switching which is not allowed
in software backend because of asynchronou method.

Now, this improvment brings the masking rendering move to
vg render pre step with synchronous rendering method,
then use the masking surface in the main vg rendering.

Change-Id: I59b4c14899a9c3cd794273bf46e3c286c15561a3

5 years agoelm_win_legacy: remove '@remarks' messages 16/198116/2
Taehyub Kim [Mon, 21 Jan 2019 05:01:27 +0000 (14:01 +0900)]
elm_win_legacy: remove '@remarks' messages

Change-Id: Id01af0b4b06763a81d0a3e6b3ee434bd3211de4e

5 years agoefl_ui_animation: fix wrong installation header files. 85/198385/1 submit/tizen/20190128.112154
Hermet Park [Thu, 24 Jan 2019 08:28:17 +0000 (17:28 +0900)]
efl_ui_animation: fix wrong installation header files.

Change-Id: I885ef7c946fc8b63541e8483e2c69a3ca051eccc

5 years agoEo: up to date with latest interface grammar.
JunsuChoi [Thu, 24 Jan 2019 05:15:47 +0000 (14:15 +0900)]
Eo: up to date with latest interface grammar.

Change-Id: I4c4bb917e04a332e716065b27c8a25a7aa01e6a3

5 years agoecore: fix memory leak when shutding down the application.
Cedric BAIL [Sat, 12 Jan 2019 01:58:23 +0000 (17:58 -0800)]
ecore: fix memory leak when shutding down the application.

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

5 years agoeina: fix memory leak when a Eina_Value as promise is returned, but no dispatching...
Cedric BAIL [Sat, 12 Jan 2019 01:57:40 +0000 (17:57 -0800)]
eina: fix memory leak when a Eina_Value as promise is returned, but no dispatching Eina_Future is listening on it.

Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7652

5 years agoefl_ui_image: implement the last two APIs from edje
Marcel Hollerbach [Wed, 23 Jan 2019 19:55:51 +0000 (14:55 -0500)]
efl_ui_image: implement the last two APIs from edje

Summary:
this just takes the API and redirects it to the internal edje object if
there is any. If there is no edje object, then just default values are
returned.

ref T5719
Depends on D7738

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T5719

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

5 years agoelm: note down all composite sections for widgets
Marcel Hollerbach [Wed, 23 Jan 2019 19:55:44 +0000 (14:55 -0500)]
elm: note down all composite sections for widgets

Summary:

A lot of new widgets are using the new Scrollmanager class, the instance of this class is then attached via composition to the widget. This is providing the implementation for Efl.Ui.Scrollbar & Efl.Ui.Scrollable_Interactive.

In the text widgets the same applies to the internal interactive text widgets.

The tags widget is using the text entry as composite, and thus provides efl.ui.text api.

The addition of those composite { } sections are removing the particular unimplemented APIs from the eolian errors.

ref T7652
Depends on D7737

Reviewers: zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7652

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

5 years agoefl_ui_widget_focus_manager: this uses composition to call focus manager
Marcel Hollerbach [Wed, 23 Jan 2019 19:55:37 +0000 (14:55 -0500)]
efl_ui_widget_focus_manager: this uses composition to call focus manager

Summary:
ref T7652
Depends on D7735

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7652

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

5 years agoefl_ui_video: Efl.Player is used from the emotion object.
Marcel Hollerbach [Wed, 23 Jan 2019 19:55:23 +0000 (14:55 -0500)]
efl_ui_video: Efl.Player is used from the emotion object.

Summary:
ref T7652

Depends on D7734

Reviewers: cedric, zmike, stefan_schmidt

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7652

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

5 years agoefl_ui_focus_object: provide empty on_focus_update function.
Marcel Hollerbach [Wed, 23 Jan 2019 19:55:17 +0000 (14:55 -0500)]
efl_ui_focus_object: provide empty on_focus_update function.

Summary:
there is no point in forcing users of this to implement on_focus_update.

ref T7652

Depends on D7733

Reviewers: cedric, zmike, stefan_schmidt

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7652

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

5 years agoefl_ui_win: this object calls composite_attach for efl.config
Marcel Hollerbach [Wed, 23 Jan 2019 19:55:10 +0000 (14:55 -0500)]
efl_ui_win: this object calls composite_attach for efl.config

Summary:
ref T7652

Depends on D7732

Reviewers: cedric, zmike, stefan_schmidt

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7652

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

5 years agoefl_input_focus: add event_flags
Marcel Hollerbach [Wed, 23 Jan 2019 19:54:58 +0000 (14:54 -0500)]
efl_input_focus: add event_flags

Summary:
It appears that it could be interesting to know if a focus event has
already been procecced or not. However, a focus event based on scrolling
activity is not possible, therefore, error about that.

ref T7652

Reviewers: cedric, zmike, stefan_schmidt

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7652

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

5 years agoeina: refactor eina_value_*_new.
Xavi Artigas [Tue, 22 Jan 2019 12:59:06 +0000 (12:59 +0000)]
eina: refactor eina_value_*_new.

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

5 years agoeina: refactor eina_value_*_init.
Xavi Artigas [Tue, 22 Jan 2019 12:52:41 +0000 (12:52 +0000)]
eina: refactor eina_value_*_init.

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

5 years agoeina: refactor eina_value_*_get.
Xavi Artigas [Tue, 22 Jan 2019 12:34:16 +0000 (12:34 +0000)]
eina: refactor eina_value_*_get.

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

5 years agoeina: add tests for the new Eina_Value convert functions.
Cedric BAIL [Thu, 3 Jan 2019 18:17:45 +0000 (10:17 -0800)]
eina: add tests for the new Eina_Value convert functions.

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

5 years agoeina: add Eina_Value helper that convert efficiently to a target native C type.
Cedric BAIL [Tue, 22 Jan 2019 11:59:23 +0000 (11:59 +0000)]
eina: add Eina_Value helper that convert efficiently to a target native C type.

Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7650

5 years agoeina: add tests for Eina_Value utility function eina_value_*_get.
Cedric BAIL [Thu, 3 Jan 2019 02:40:02 +0000 (18:40 -0800)]
eina: add tests for Eina_Value utility function eina_value_*_get.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7649

5 years agoeolian: check old impl status before actually trying to extend it
Daniel Kolesa [Wed, 23 Jan 2019 18:28:25 +0000 (19:28 +0100)]
eolian: check old impl status before actually trying to extend it

Since _extend_impl always marks the impl at least IMPL_STATUS_NONE,
we need to retrieve the original status before calling into it,
or it will get overwritten and will inadvertently disable some
of the checks.

5 years agoeolian: get rid of false positives about unimplemented methods
Daniel Kolesa [Wed, 23 Jan 2019 16:59:40 +0000 (17:59 +0100)]
eolian: get rid of false positives about unimplemented methods

We worked under the assumption that when inheriting callables
from a regular class, it's good enough to just set those as
fully implemented, because the underlying class is already
checked. This assumption is wrong, as the callables may contain
multiple implements pointing at the same function (consider when
a regular class implements just the get part of a property but
some underlying class implements it whole) - the old logic would
result in just the first reached implement (possibly incomplete)
being added into callables of the inheriting class, which results
in false positives.

Consider this example:

class A has a fully implemented property foo
class B inherits from A and partially implements foo
abstract C inherits from B
class D inherits from C

abstract C would go over B's implements, encounter the first
partial implementation of foo, adding it into its own callables
and marking it as fully implemented (because it came from an
already checked regular class B), which would result in the
other implement being skipped.

So make no assumptions and use the same logic for all class types.

Of course, this brings in another problem: some errors would now
get printed twice, because if you have a class A which has funcs
that are unimplemented and class B inheriting from it, errors would
get printed for A but also for B, which would include A's errors.

To battle that, introduce a "global" (well, local to the entry
point of the validator) hash tracking which implements have already
been errored on; and skip those appropriately.

5 years agoefl_ui_win: move base and step size hints here
Mike Blumenkrantz [Wed, 23 Jan 2019 14:39:39 +0000 (09:39 -0500)]
efl_ui_win: move base and step size hints here

these hints are not relevant to anything but window objects, so put them
onto the window object

ref T5719

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

5 years agoeolian: add support for the container array
Marcel Hollerbach [Wed, 23 Jan 2019 13:39:44 +0000 (14:39 +0100)]
eolian: add support for the container array

this fixes a lot of different warnings in the efl_mono test generation.

Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Differential Revision: https://phab.enlightenment.org/D7730

5 years agoefl_net: make server_ip abstract
Marcel Hollerbach [Tue, 22 Jan 2019 14:43:32 +0000 (15:43 +0100)]
efl_net: make server_ip abstract

there is no code handling for client_add or client_reject.

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

5 years agoefl: split efl_ui_range into display and interactive
Marcel Hollerbach [Mon, 21 Jan 2019 15:22:32 +0000 (16:22 +0100)]
efl: split efl_ui_range into display and interactive

display contains properties that are used to manipulate the display.
Range_step is a interactive property since it manipulates the way the
user interacts with this widget. This resolves a few unimplemented APIs.

ref T5719

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

5 years agoecore_audio: implement not implemented APIs as empty
Marcel Hollerbach [Mon, 21 Jan 2019 14:43:20 +0000 (15:43 +0100)]
ecore_audio: implement not implemented APIs as empty

the empty handlers will always return 0 / NULL so never indicate
success.

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

5 years agoeolian: refactor validator error logging
Daniel Kolesa [Wed, 23 Jan 2019 15:21:26 +0000 (16:21 +0100)]
eolian: refactor validator error logging

It hasn't been necessary to keep these temporary buffers around
for quite a while, nobody just got around to remove them. Eolian
has a good formattable error logging system in its core now.

Also, use same erroring style on parts as on functions, i.e.
batch-print all the conflicts at once.

5 years agoeolian: inherit composite lists and allow in abstracts/mixins
Daniel Kolesa [Wed, 23 Jan 2019 14:57:48 +0000 (15:57 +0100)]
eolian: inherit composite lists and allow in abstracts/mixins

There isn't any more logic necessary because checks are still only
done on regular classes; we just need to make sure that composite
lists from its inheritance tree are accounted for.

5 years agotests/ecore: reenable ecore-audio play test
Mike Blumenkrantz [Tue, 22 Jan 2019 18:10:13 +0000 (13:10 -0500)]
tests/ecore: reenable ecore-audio play test

this seems to work now

fix T4018

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

5 years agoci: travis: bring back default and wayland builds
Stefan Schmidt [Wed, 23 Jan 2019 14:13:27 +0000 (09:13 -0500)]
ci: travis: bring back default and wayland builds

Summary:
With some recent changes we only had builds running after a push which
did not qualify for a make check / ninja test run. Mostly due to problems
with the tests and specific config options. Bring back a default build
which will also run the unit tests un every push.

Also adding back a dedicated wayland build due to conflicts of gl
versions with the all options enabled build.

Fixes T7545

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7545

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

5 years agoeolian: error out when owned type does not have a free function
Marcel Hollerbach [Mon, 14 Jan 2019 19:40:55 +0000 (20:40 +0100)]
eolian: error out when owned type does not have a free function

if there is no free function, then there is no way that this value is
owned by the caller,

Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Differential Revision: https://phab.enlightenment.org/D7712

5 years agoefl_mono: add a free function to every owned type
Marcel Hollerbach [Mon, 14 Jan 2019 22:57:31 +0000 (23:57 +0100)]
efl_mono: add a free function to every owned type

this is another step towards enforcing free functions on every owned
type. To equip every owned type with a free function the following is
applied. Every owned ptr is assumed to be a heap pointer, with the free
function "free". Every string that is owed is converted to a mstring. a
pointer to a eo object is also assumed to be a heap pointer, and equiped
with the free function "free".

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

5 years agoeolian_cxx: add free functions to the types
Marcel Hollerbach [Mon, 14 Jan 2019 22:00:28 +0000 (23:00 +0100)]
eolian_cxx: add free functions to the types

later on @owned functions are enforced to have free functions attached,
if not, eolian will bail out. This is ensuring this for the eolian-cxx
functions

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

5 years agoefl_ui_widget: set a proper legacy name for widget_parent_set
WooHyun Jung [Thu, 17 Jan 2019 06:19:50 +0000 (06:19 +0000)]
efl_ui_widget: set a proper legacy name for widget_parent_set

Previously, legacy name of this property was "elm_widget_parent_set".
But, in efl_ui_widget.eo.legacy.h, it's current name is
"elm_widget_widget_parent_set" which is not matched well with
"elm_widget_parent_get" at all.

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

5 years agoecore-evas/extn: use evas from events when updating key masks
Mike Blumenkrantz [Tue, 22 Jan 2019 17:05:32 +0000 (12:05 -0500)]
ecore-evas/extn: use evas from events when updating key masks

Summary:
plug canvases do not have ee->evas, so this fixes unlimited error messages
while also fixing the corresponding functionality

@fix
fix T5536

Reviewers: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T5536

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

5 years agoci: update distro checks after version upgrades
Stefan Schmidt [Tue, 22 Jan 2019 16:49:32 +0000 (11:49 -0500)]
ci: update distro checks after version upgrades

Summary:
These two checks still used the, now updated to newer, Debian and Ubuntu
versions. It only showed in the daily cron job build.

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoci: travis: stop pushing images after build to docker hub
Stefan Schmidt [Tue, 22 Jan 2019 13:54:39 +0000 (08:54 -0500)]
ci: travis: stop pushing images after build to docker hub

Summary:
This stopped working a while ago and we are not actively using it.
If we need it we can bring it back in a better way later.
Depends on D7708

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoci: travis: update distro tags
Stefan Schmidt [Tue, 22 Jan 2019 13:53:55 +0000 (08:53 -0500)]
ci: travis: update distro tags

Summary: Switch to newer versions of Fedora, Ubuntu and Debian.

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoector: remove unused function
Marcel Hollerbach [Mon, 21 Jan 2019 14:37:52 +0000 (15:37 +0100)]
ector: remove unused function

done is not called, nor implemented in a single spot, lets remove it.
It can still be readded once its needed.

ref T5719

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

5 years agoefl_access: add free functions to efl_acces_object types
Marcel Hollerbach [Mon, 14 Jan 2019 19:43:21 +0000 (20:43 +0100)]
efl_access: add free functions to efl_acces_object types

there are owned types in eolian, therefore a free function should be
defined on the types that are owned.

Reviewed-by: Lukasz Stanislawski <l.stanislaws@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7711

5 years agoefl_access: add free function to Efl_Access_Text_Range struct
Lukasz Stanislawski [Tue, 22 Jan 2019 06:59:50 +0000 (06:59 +0000)]
efl_access: add free function to Efl_Access_Text_Range struct

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

5 years agoefl_ui_list_view_types: add a free function to the struct type
Marcel Hollerbach [Mon, 14 Jan 2019 22:03:00 +0000 (23:03 +0100)]
efl_ui_list_view_types: add a free function to the struct type

this type is used with @owned, which means, it needs a free function.
So we can ensure everything that is owned also has a free function

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

5 years agoefl: add free functions to owned types
Marcel Hollerbach [Mon, 14 Jan 2019 19:28:45 +0000 (20:28 +0100)]
efl: add free functions to owned types

this commit is a first step in order to add free functions to all the
types that are owned.

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

5 years agoelm: restore old elm_web behaviour
Marcel Hollerbach [Mon, 14 Jan 2019 19:12:32 +0000 (20:12 +0100)]
elm: restore old elm_web behaviour

Everything that is owned must have a free function. In commit
1afd3c215fe5e8933a5ccf0a49aa2fee41043286 the string was
converted to const(string) it was not const before.
So this is converting back to the old behaviour.

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

5 years agoelm.hoversel: ensure sd is not NULL
Boris Faure [Sun, 20 Jan 2019 21:13:23 +0000 (22:13 +0100)]
elm.hoversel: ensure sd is not NULL

Summary: elm.hoversel: ensure sd is not NULL

Reviewers: cedric, zmike, raster

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

Tags: #efl

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

5 years agoeolian: add support for composite section into regular classes
Daniel Kolesa [Fri, 18 Jan 2019 16:24:12 +0000 (17:24 +0100)]
eolian: add support for composite section into regular classes

Each regular class can now have a section called 'composite',
which can contain interfaces and interfaces only. This defines
a list of interfaces that are allowed to be unimplemented on the
class, as it is assumed the class will be composited with some
other class implementing those interfaces.

Only regular classes can have this, as only regular classes can
be instantiated.

It will also be necessary to check whether the classes in the
section appear somewhere within the inheritance tree. For now,
this testing is not being done.

Example of usage:

composite {
    Some.Magic.Interface;
    Another.Magic.Interface;
}

directly in the class body.

5 years agoelm_panel: show/hide panel according to hidden status
Jaeun Choi [Mon, 21 Jan 2019 09:55:10 +0000 (18:55 +0900)]
elm_panel: show/hide panel according to hidden status

when panel becomes non-scrollable by elm_panel_scrollable_set() function,
the panel needs to be shown/hidden according to the hidden status.
this patch implements it.

5 years agoelm_panel: reset layout theme when scrollable mode is changed
Jaeun Choi [Mon, 21 Jan 2019 05:51:10 +0000 (14:51 +0900)]
elm_panel: reset layout theme when scrollable mode is changed

after a panel becomes scrollable, it has two layout objects internally
and only one of them is active. when elm_panel_orient_set() function
is called, only the active layout's theme is changed according to
the orientation. so if scrollable mode is changed after that, it shows
the old theme. this patch fixes it.

5 years agoevas gl - fix patch that fixed warnings that then broke evas gl tests
Carsten Haitzler (Rasterman) [Sat, 19 Jan 2019 19:30:18 +0000 (19:30 +0000)]
evas gl - fix patch that fixed warnings that then broke evas gl tests

even though it was reviewed... 8a617fda979d1522a880f3e57d2e1adfc9f20814
broke the evas gl tests. this fixes that.

5 years agoEfl.Loop.Timer.interval is a constructor property
Xavi Artigas [Fri, 18 Jan 2019 16:05:05 +0000 (17:05 +0100)]
Efl.Loop.Timer.interval is a constructor property

Summary:
If you don't set the interval during construction, construction fails
so there's no chance to set it later.
We either change that behavior (is it really needed? can't we just set some
default during construction and override it later?) or properly mark this
property as a construction-time property with this patch.

Test Plan: Nothing changes, this will only have effect once bindings start using it.

Reviewers: cedric, zmike, bu5hm4n, q66

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agoedje: convert var timer list to inlist
Derek Foreman [Wed, 16 Jan 2019 22:44:36 +0000 (16:44 -0600)]
edje: convert var timer list to inlist

Since these are only ever on one list, inlist is better.

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7697

5 years agoedje: Use EINA_LIST_FREE instead of hand coded variant
Derek Foreman [Wed, 16 Jan 2019 20:19:11 +0000 (14:19 -0600)]
edje: Use EINA_LIST_FREE instead of hand coded variant

Minor simplification, should be no functional change.

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7696

5 years agoefl_ui_widget: Save some pointer indirection
Derek Foreman [Fri, 18 Jan 2019 19:39:46 +0000 (13:39 -0600)]
efl_ui_widget: Save some pointer indirection

We're getting the same widget data twice, as well as testing if the
object is a widget twice.  Let's do these things once.

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7698

5 years agoelm_code: Pass widget data to _elm_code_widget_fill_line
Derek Foreman [Fri, 18 Jan 2019 16:41:05 +0000 (10:41 -0600)]
elm_code: Pass widget data to _elm_code_widget_fill_line

We already have this looked up in all callers, and the lookup is mind
smashingly heavy.  Just use what we have.

ref T6209

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
Reviewed-by: Chris Michael <cp.michael@samsung.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7694

5 years agoelm_code: Don't update selection if it didn't change
Derek Foreman [Fri, 18 Jan 2019 17:35:26 +0000 (12:35 -0500)]
elm_code: Don't update selection if it didn't change

Summary:
Mouse motion can cause multiple worthless selection updates with no
change to row or column.  Discard updates that don't really update.

ref T6209
Depends on D7692

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T6209

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

5 years agoelm_code: Pass data to status_type_get
Derek Foreman [Fri, 18 Jan 2019 17:20:59 +0000 (12:20 -0500)]
elm_code: Pass data to status_type_get

Summary:
Every single call path has already dearly paid the price of pointer
indirection so let's save a few million extra look-ups and just pass
it along.

ref T6209

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T6209

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