platform/upstream/efl.git
5 years agoelementary: add internal Efl_Ui_Model_Homogeneous.
Cedric BAIL [Fri, 28 Dec 2018 23:41:44 +0000 (15:41 -0800)]
elementary: add internal Efl_Ui_Model_Homogeneous.

This model enable View that require to compute the size of their item
to rely on its logic to have all items of the same size. It is the
equivalent of the Homogeneous behavior of Genlist, except that now this
behavior can be customized outside of the View logic itself.

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

5 years agoelementary: add internal Efl_Ui_Model_Size.
Cedric BAIL [Sat, 29 Dec 2018 00:39:44 +0000 (16:39 -0800)]
elementary: add internal Efl_Ui_Model_Size.

This model enable View that require to compute the size of their items
to rely on an interface to provide the properties they need to get the object
size. This is the base class for all the sizing logic of the new List/Grid View.

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

5 years agoecore: add an index property on Efl.Model_Composite and handle children_slice_get.
Cedric BAIL [Thu, 3 Jan 2019 22:54:18 +0000 (14:54 -0800)]
ecore: add an index property on Efl.Model_Composite and handle children_slice_get.

This will enable inheriting class to not have to implement as much code. This patch
fix also all class that use Efl.Model_Composite and its test.

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

5 years agoci: travis: switch mingw cross build to also use Fedora 29 as base
Stefan Schmidt [Wed, 30 Jan 2019 19:51:30 +0000 (14:51 -0500)]
ci: travis: switch mingw cross build to also use Fedora 29 as base

Summary:
The new image also contains the ewpi install in a different location.
Updating the references here.

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoelementary: update Efl.Ui.Caching_Factory to rely on Efl.Ui.Widget_Factory for Efl...
Cedric BAIL [Sat, 19 Jan 2019 02:01:23 +0000 (18:01 -0800)]
elementary: update Efl.Ui.Caching_Factory to rely on Efl.Ui.Widget_Factory for Efl.Ui.Widget.

I am not sure we really need Efl.Ui.Caching_Factory after this, but in case we want a Caching_Factory
for non Efl.Ui.Widget, this is supported by this patch (And is the reason why most of the complexity).
The benefit from inheriting from Efl.Ui.Widget_Factory allow to get the style of an Efl.Ui.Widget
defined by an Efl.Model properly done at creation time.

Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Reviewed-by: Larry Lira <larry@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7705

5 years agoelementary: add Efl.Ui.Widget_Factory.
Cedric BAIL [Sat, 19 Jan 2019 01:58:39 +0000 (17:58 -0800)]
elementary: add Efl.Ui.Widget_Factory.

The Widget_Factory is in charge of creating any object that inherit from Efl.Ui.Widget Class.
If the style property is connected to a model property, it will fetch it and build the widget
with that style. This factory is to be used with every View.

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

5 years agoefl_ui: mulibuttonentry is now tags
Marcel Hollerbach [Wed, 30 Jan 2019 18:44:45 +0000 (13:44 -0500)]
efl_ui: mulibuttonentry is now tags

Summary:
further more it can be just included here, without this warning.
Depends on D7819

Reviewers: zmike, cedric, stefan_schmidt

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agomeson: fix race condition in building
Marcel Hollerbach [Wed, 30 Jan 2019 16:06:50 +0000 (16:06 +0000)]
meson: fix race condition in building

the error
```
./src/modules/evas/engines/gl_generic/../software_generic/evas_ector_software.h:31:10: fatal error: 'evas_ector_software_buffer.eo.h' file not found
```
Came up when building efl on osx with meson. This is caused by the fact that gl_generic was build before the .eo files of evas_ector have been created in software_generic, this fixes this race condition by adding a new dependency to avoid that.

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

5 years agoefl.file: move 'save' method into separate efl.file_save interface
Mike Blumenkrantz [Wed, 30 Jan 2019 14:05:05 +0000 (09:05 -0500)]
efl.file: move 'save' method into separate efl.file_save interface

the save method is implemented very rarely, and most objects which use efl.file
will not be able to use a save method

ref T5719

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7786

Change-Id: I169c7efc06a4ecb60afb7073b20c41a8ce0751c3

5 years agoRevert "meson: fix race condition in building"
Marcel Hollerbach [Wed, 30 Jan 2019 16:07:08 +0000 (17:07 +0100)]
Revert "meson: fix race condition in building"

This reverts commit e1f3a4232e65c487dcbb4d62206a8181959e712d.

git push on the wrong branch - sorry

5 years agomeson: fix race condition in building
Marcel Hollerbach [Wed, 30 Jan 2019 13:48:04 +0000 (14:48 +0100)]
meson: fix race condition in building

this came up on travis with osx. However, it should hit everyone, and
its questionable why it did not happened ever before.

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

5 years agodocs: Add links to Efl.Loop_Consumer
Xavi Artigas [Wed, 30 Jan 2019 15:16:37 +0000 (16:16 +0100)]
docs: Add links to Efl.Loop_Consumer

5 years agoeo: check memory allocation of table data
Jaehyun Cho [Wed, 30 Jan 2019 12:03:20 +0000 (12:03 +0000)]
eo: check memory allocation of table data

Memory allocation is checked for the given domain's table data like
other cases for main and shared table data.
Differential Revision: https://phab.enlightenment.org/D7810

5 years agoefl_ui_win: Load config values into gesture manager.
Woochanlee [Fri, 4 Jan 2019 08:03:52 +0000 (08:03 +0000)]
efl_ui_win: Load config values into gesture manager.

https://phab.enlightenment.org/T7544

The other config values will be added Later.
Differential Revision: https://phab.enlightenment.org/D7540

5 years agoefl.text_markup: move cursor-related methods to efl.text_markup_interactive
Mike Blumenkrantz [Mon, 28 Jan 2019 16:10:40 +0000 (11:10 -0500)]
efl.text_markup: move cursor-related methods to efl.text_markup_interactive

many users of the markup property are not interactive text cases, so splitting
off the interactive methods resolves a number of unimplemented method issues

ref T5719

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

5 years agoefl_ui_scroll_manager: avoid some safety check errors on deletion
Mike Blumenkrantz [Tue, 29 Jan 2019 17:46:17 +0000 (12:46 -0500)]
efl_ui_scroll_manager: avoid some safety check errors on deletion

only remove callbacks if pan_obj is still alive

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

5 years agotests: move efl_ui focus tests into efl_ui_suite
Mike Blumenkrantz [Tue, 29 Jan 2019 18:50:40 +0000 (13:50 -0500)]
tests: move efl_ui focus tests into efl_ui_suite

ref T6815

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

5 years agoefl_ui: add proto for efl_ui_focus_relation_free() into header
Mike Blumenkrantz [Tue, 29 Jan 2019 19:04:23 +0000 (14:04 -0500)]
efl_ui: add proto for efl_ui_focus_relation_free() into header

ref T7667

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

5 years agodocs: Improve Efl.Ui.Tags documentation
Xavi Artigas [Wed, 30 Jan 2019 11:49:31 +0000 (12:49 +0100)]
docs: Improve Efl.Ui.Tags documentation

5 years agodocs: introduce how to receive media content
Jihoon Kim [Wed, 30 Jan 2019 09:55:44 +0000 (18:55 +0900)]
docs: introduce how to receive media content

Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
5 years agotests: move efl_ui_image test -> efl_ui_suite
Mike Blumenkrantz [Tue, 29 Jan 2019 17:56:32 +0000 (12:56 -0500)]
tests: move efl_ui_image test -> efl_ui_suite

ref T6815

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

5 years agotests: move efl_ui_layout tests into efl_ui_suite
Mike Blumenkrantz [Tue, 29 Jan 2019 17:07:54 +0000 (12:07 -0500)]
tests: move efl_ui_layout tests into efl_ui_suite

also use legacy api for elm_layout swallow test

ref T6815

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

5 years agoefl_ui: include layout header in Efl_Ui.h
Mike Blumenkrantz [Tue, 29 Jan 2019 17:47:41 +0000 (12:47 -0500)]
efl_ui: include layout header in Efl_Ui.h

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

5 years agotests: move image_zoomable into efl_ui_suite
Mike Blumenkrantz [Mon, 28 Jan 2019 19:38:38 +0000 (14:38 -0500)]
tests: move image_zoomable into efl_ui_suite

ref T6815

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

5 years agotests: add atspi test for efl_ui_suite
Mike Blumenkrantz [Mon, 28 Jan 2019 19:03:26 +0000 (14:03 -0500)]
tests: add atspi test for efl_ui_suite

this is just a copy of the existing suite but with some small changes to
use (mostly) eo apis

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

5 years agotests: formatting
Mike Blumenkrantz [Mon, 28 Jan 2019 18:42:56 +0000 (13:42 -0500)]
tests: formatting

make this consistent for possible sed later

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

5 years agotests: modify efl_ui_suite to use same test infrastructure as elm_suite
Mike Blumenkrantz [Mon, 28 Jan 2019 18:38:24 +0000 (13:38 -0500)]
tests: modify efl_ui_suite to use same test infrastructure as elm_suite

this should enable us to begin moving efl_ui tests into the proper suite
instead of sticking them all into elm_suite

also move grid tests to efl_ui_suite

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D7765

5 years agoefl_ui_list_view: Handling failed memory allocation
Myoungwoon Roy, Kim [Wed, 30 Jan 2019 00:38:11 +0000 (09:38 +0900)]
efl_ui_list_view: Handling failed memory allocation

Summary: Add a logic for handling failed memory allocation to prevent null pointer exception

Test Plan: Run unit test cases

Reviewers: eagleeye, Jaehyun_Cho, Hermet, zmike, SanghyeonLee

Reviewed By: SanghyeonLee

Subscribers: SanghyeonLee, cedric, #committers, #reviewers

Tags: #efl

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

5 years agoevas_test_textblock: Fix unused variable warning
Chris Michael [Tue, 29 Jan 2019 16:03:09 +0000 (11:03 -0500)]
evas_test_textblock: Fix unused variable warning

In evas_textblock_cursor test, the variable 'dir' is only used if
HAVE_FRIBIDI is defined. If that is not defined, then we get an unused
variable warning when compiling. This patch wraps the variable around
an #ifdef so that it does not get declared without FRIBIDI support.

5 years agoelementary: enable efl_ui_suite tests for meson build.
Cedric BAIL [Tue, 29 Jan 2019 14:26:51 +0000 (09:26 -0500)]
elementary: enable efl_ui_suite tests for meson build.

Summary: Depends on D7661

Reviewers: SanghyeonLee, felipealmeida, segfaultxavi, zmike

Reviewed By: SanghyeonLee, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7382

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

5 years agoelm: prevent from accessing null pointer after memory allocation
WooHyun Jung [Tue, 29 Jan 2019 14:23:44 +0000 (09:23 -0500)]
elm: prevent from accessing null pointer after memory allocation

Summary: Add null checking code just after allocating memory

Test Plan: make check

Reviewers: jypark, Jaehyun_Cho, zmike

Reviewed By: Jaehyun_Cho, zmike

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

Tags: #efl

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

5 years agoefl_ui_grid: Fix return value from macros
Christopher Michael [Tue, 29 Jan 2019 13:43:57 +0000 (08:43 -0500)]
efl_ui_grid: Fix return value from macros

The function _grid_item_unpack_internal does not return a value, so
these macros should not be trying to return EINA_FALSE.

5 years agoeina modinfo: improve eina modinfo guide.
Amitesh Singh [Tue, 29 Jan 2019 11:28:25 +0000 (16:58 +0530)]
eina modinfo: improve eina modinfo guide.

5 years agoefl gfx_frame_controller: improve doc.
Hermet Park [Tue, 29 Jan 2019 10:56:03 +0000 (19:56 +0900)]
efl gfx_frame_controller: improve doc.

5 years agoecore: check fcntl return.
Hosang Kim [Tue, 29 Jan 2019 10:30:45 +0000 (19:30 +0900)]
ecore: check fcntl return.

Summary: Found by svace

Reviewers: Jaehyun_Cho, woohyun, Hermet

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoefl_gfx_map: free alloc' memory at exception case.
Hermet Park [Tue, 29 Jan 2019 09:36:09 +0000 (18:36 +0900)]
efl_gfx_map: free alloc' memory at exception case.

5 years agoefl_ui : fix minor defects from converity check.
SangHyeon Jade Lee [Tue, 29 Jan 2019 06:38:49 +0000 (15:38 +0900)]
efl_ui : fix minor defects from converity check.

Summary: This is first coverity defect after efl_ui_grid merged.

Test Plan: build test and check exmaples.

Reviewers: eagleeye

Reviewed By: eagleeye

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoexamples: fix slider cxx example not to call content_set
Jaehyun Cho [Tue, 29 Jan 2019 04:51:47 +0000 (13:51 +0900)]
examples: fix slider cxx example not to call content_set

Since Efl.Content is removed from Efl.Ui.Slider, slider should not call
content_set.

This patch is for the commit 4c44c44e1a46bc05ea812259474cbc8c83659769.

5 years agoecore-drm2: Support multiple gpus during vblank
Christopher Michael [Mon, 28 Jan 2019 19:45:23 +0000 (14:45 -0500)]
ecore-drm2: Support multiple gpus during vblank

Summary:
When we try to calculate a drm vblank type, we should take into
account the output's pipe value which is used to determine if we are
using multiple gpus (if so, we need to use the high_crtc_mask.

Reviewers: ManMower

Reviewed By: ManMower

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoelm_prefs: remove efl.file usage
Mike Blumenkrantz [Mon, 28 Jan 2019 18:08:56 +0000 (13:08 -0500)]
elm_prefs: remove efl.file usage

Summary:
this is a legacy-only api which does not need to drag in unimplemented methods
from interfaces

ref T5719

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T5719

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

5 years agoefl_model_loop: make it abstract
Marcel Hollerbach [Mon, 28 Jan 2019 18:08:51 +0000 (13:08 -0500)]
efl_model_loop: make it abstract

Summary:
there is no user, additionally, there is undefined API on this object,
thus make it abstract. This resolves the missing APIs of efl_model_loop.

ref T5719
Depends on D7790

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T5719

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

5 years agofocus: do not allow focus to exit a popup
Xavi Artigas [Mon, 28 Jan 2019 17:35:44 +0000 (12:35 -0500)]
focus: do not allow focus to exit a popup

Summary:
Popup windows dim the background and do not allow the user
to click outside the popup. However, pressing TAB can take
you to widgets on the background. This didn't happen in
legacy.

Fixes T7432

Test Plan: Instructions in T7432

Reviewers: bu5hm4n, stephenmhouston, Jaehyun_Cho, herb, Blackmole, zmike

Reviewed By: zmike

Subscribers: zmike, felipealmeida, lauromoura, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7432

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

5 years agoefl_net_server_udp: add empty functions
Marcel Hollerbach [Mon, 28 Jan 2019 17:11:48 +0000 (12:11 -0500)]
efl_net_server_udp: add empty functions

Summary:
these functions are never called from within this class, thus they are
empty here. They are not used because setting up the client does
require here more API than just a fd.

ref T5719
Depends on D7791

Reviewers: segfaultxavi, zmike

Reviewed By: segfaultxavi, zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T5719

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

5 years agoelm_map: convert paused to animation property
Marcel Hollerbach [Mon, 28 Jan 2019 17:11:37 +0000 (12:11 -0500)]
elm_map: convert paused to animation property

Summary:
this commit migrates the paused property over to the property defined by
efl.ui.zoom. This is done in order to implement all APIs in the elm_map
object.

ref T5719

Depends on D7783

Reviewers: cedric, zmike, segfaultxavi

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T5719

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

5 years agoci: travis: shorten job descriptions
Stefan Schmidt [Mon, 28 Jan 2019 17:00:26 +0000 (12:00 -0500)]
ci: travis: shorten job descriptions

Summary:
This makes job descriptions shorter and also clearer to see what env
variable belongs to what job and os.

Moving the release ready build to an earlier start position in the cron
job to shorten the total build time.
Depends on D7799

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoci: travis: enable a meson/ninja build on osx
Stefan Schmidt [Mon, 28 Jan 2019 17:00:24 +0000 (12:00 -0500)]
ci: travis: enable a meson/ninja build on osx

Summary:
This cuts down the time the osx builld takes from ~30min to ~20min
Keeping the autotools osx build in the cron job for now.

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoevas-clip: Remove unused variable
Christopher Michael [Mon, 28 Jan 2019 16:58:49 +0000 (11:58 -0500)]
evas-clip: Remove unused variable

NB: No functional changes

5 years agodocs: Fix assorted typos in legacy documentation
Xavi Artigas [Mon, 28 Jan 2019 12:14:20 +0000 (13:14 +0100)]
docs: Fix assorted typos in legacy documentation

Samsung reported a long list of typos in our legacy docs, this fixes them.

5 years agoepp: fix correct parameters for cpp_error_with_line
Yeongjong Lee [Mon, 28 Jan 2019 08:15:34 +0000 (17:15 +0900)]
epp: fix correct parameters for cpp_error_with_line

Reviewers: zmike, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoefl_ui_dnd: fix the wrong parameter passing
Taehyub Kim [Mon, 28 Jan 2019 07:58:35 +0000 (16:58 +0900)]
efl_ui_dnd: fix the wrong parameter passing

Summary: fix the wrong parameter passing

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoeolian-cxx: Add constructor_def
Lauro Moura [Mon, 28 Jan 2019 07:20:02 +0000 (16:20 +0900)]
eolian-cxx: Add constructor_def

Summary: To be used generating argument-aware constructors in C#.

Reviewers: felipealmeida, vitor.sousa

Reviewed By: felipealmeida

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoelementary: Declare style as a Widget constructor
Lauro Moura [Mon, 28 Jan 2019 07:16:26 +0000 (16:16 +0900)]
elementary: Declare style as a Widget constructor

Summary: Despite being required as a use case for C# constructors, style is not yet listed as a constructing property.

Reviewers: bu5hm4n, Jaehyun_Cho, segfaultxavi, zmike, felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoeo: Replace ptr(Eina.Strbuf) with plain strbuf.
Lauro Moura [Mon, 28 Jan 2019 07:10:43 +0000 (16:10 +0900)]
eo: Replace ptr(Eina.Strbuf) with plain strbuf.

Summary: Also fix CXX compilation after this change.

Reviewers: cedric, felipealmeida

Reviewed By: felipealmeida

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agoefl_ui_list_view_seg_array: remove seg_array from Elementary.h
Larry Lira [Mon, 28 Jan 2019 06:39:35 +0000 (15:39 +0900)]
efl_ui_list_view_seg_array: remove seg_array from Elementary.h

Summary:
Change seg_array to private

This is a leftover of https://phab.enlightenment.org/D7724

Reviewers: felipealmeida, cedric, SanghyeonLee

Reviewed By: felipealmeida

Subscribers: segfaultxavi, #reviewers, #committers

Tags: #efl

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

5 years agoevas_clip: do not set clip->changed to true
Shinwoo Kim [Mon, 28 Jan 2019 05:49:02 +0000 (14:49 +0900)]
evas_clip: do not set clip->changed to true

Summary:
[Issuse]
The issue solved by this commit occurs with 'export EVAS_GL_PARTIAL_DISABLE=0'.

The _efl_canvas_object_clip_set set clip->changed to true, but did not add the
clip object to e->pending_objects. So there is no chance to reset it to false.
(Please refer to evas_render_object_recalc.)

The clip->changed is always ture so its clipees cannot change its 'changed'
to true.  Because if 'changed' is true, evas_object_change returns before
calling evas_object_change for its clipees. (Please see evas_object_change.)
So 'changed' of clipees is false always, and clipees cannot call render_pre
in _evas_render_phase1_direct, and eglSwapBuffersWithDamage is not called.
This caused rendering issue.

This could be rare case. The _efl_canvas_object_clip_set is called when the
clipper and its clipees are out of view.

[Solution]
I would like to explain why removing line setting clip->changed to true makes
sense. First, the following commit added line setting clip->changed to true.

(1) committ 5e8d46e884930f109a28147cda4ce002e6836017
    Author: Carsten Haitzler <raster@rasterman.com>
    Date:   Wed Sep 22 04:37:51 2004 +0000

        clip bug fix :)

And following commit removed line calling evas_damage_rectangle_add which is
part of commit (1) above.

(2) commit 8767a80b0dbda4e2c3a6b2a41a04bf35f43a3ed1
    Author: Carsten Haitzler (Rasterman) <raster@rasterman.com>
    Date:   Wed Apr 16 16:14:16 2014 +0900

        fix overdraw issue in evas when clips change

Between above two commits, another commit calling evas_object_change(clip) was
added. This commit sets clip->changed to ture, and adds clip object to
e->pending_objects by evas_object_change -> evas_render_object_recalc.

(3) commit 4aca7949f581eaaf943785759b542acd8fc6794c
    Author: Carsten Haitzler <raster@rasterman.com>
    Date:   Wed Nov 2 04:03:55 2005 +0000

        fix excess overdraw bug

So we do not need the remains of commit (1). REMOVE!! :-]

Reviewers: raster, Hermet, jypark

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoelm_photo: implement remaining efl.file methods
Mike Blumenkrantz [Fri, 25 Jan 2019 19:41:41 +0000 (14:41 -0500)]
elm_photo: implement remaining efl.file methods

ref T5719

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

5 years agoefl_ui_image: implement efl.file.mmap_get
Mike Blumenkrantz [Fri, 25 Jan 2019 14:12:41 +0000 (09:12 -0500)]
efl_ui_image: implement efl.file.mmap_get

this returns the current file, though the result is that the "current file"
could be changed asynchronously after this function is called

ref T5719

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

5 years agoImplement missing APIs in elm_photo
Xavi Artigas [Fri, 25 Jan 2019 12:32:48 +0000 (12:32 +0000)]
Implement missing APIs in elm_photo

This widget does not seem to support dragging things on top of it, so implement
the missing property drag_target as a readonly EINA_FALSE.

Ref T5719

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

5 years agoevas_canvas3d_mesh: implement get methods for efl.file file and mmap props
Mike Blumenkrantz [Fri, 25 Jan 2019 17:47:38 +0000 (12:47 -0500)]
evas_canvas3d_mesh: implement get methods for efl.file file and mmap props

also add unit tests for new methods

ref T5719

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7785

5 years agoecore: make ecore_audio_out abstract
Marcel Hollerbach [Fri, 25 Jan 2019 14:32:53 +0000 (15:32 +0100)]
ecore: make ecore_audio_out abstract

ecore_audio does define format and source, those are then used in some
leave classes, ecore_audio is only used in the tests, and should not be
used externally. Therefore make it abstract.
The other missing implementations are in the leave classes,
They are resolved with providing empty implementations, since no format
switching is supported.

ref T5719

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

5 years agoevas_canvas3d_primitives: make unused functions empty
Marcel Hollerbach [Fri, 25 Jan 2019 12:18:11 +0000 (13:18 +0100)]
evas_canvas3d_primitives: make unused functions empty

it appears that primiteves where not designed to redirect notify calls
etc. to its children elements (if there are any). Thus those can be
empty.

ref T5719

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

5 years agoefl_net_dialer_websocker: set cannot be called here
Marcel Hollerbach [Fri, 25 Jan 2019 12:16:51 +0000 (13:16 +0100)]
efl_net_dialer_websocker: set cannot be called here

the state of eos is decided weather on internals, therefore calling set
on it does not work, and should never do anything.

ref T5719

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7777

5 years agoefl_ui_tab_page: implement missing api
Marcel Hollerbach [Thu, 24 Jan 2019 16:06:14 +0000 (17:06 +0100)]
efl_ui_tab_page: implement missing api

unset is now implemented, and is mirrored to the main object, just like
in the setter above.

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

5 years agoefl_ui_pan: implement content interface
Marcel Hollerbach [Thu, 24 Jan 2019 13:09:42 +0000 (14:09 +0100)]
efl_ui_pan: implement content interface

the last two functions for the content interface have been missing.
Now the pan object can also unset and set new content

ref T5719

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

5 years agoefl_ui_scroller: support the complete efl.content API
Marcel Hollerbach [Thu, 24 Jan 2019 12:19:50 +0000 (13:19 +0100)]
efl_ui_scroller: support the complete efl.content API

content_get and content_unset was not added.

ref T5719

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

5 years agoefl_ui_slider: this does not use anything from Efl.Content
Marcel Hollerbach [Thu, 24 Jan 2019 12:12:57 +0000 (13:12 +0100)]
efl_ui_slider: this does not use anything from Efl.Content

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7783

5 years agoefl: introduce efl_ui_direction_readonly
Marcel Hollerbach [Thu, 24 Jan 2019 11:47:38 +0000 (12:47 +0100)]
efl: introduce efl_ui_direction_readonly

the readonly mixin implement the efl_ui_direction interface and prints a
error in case it is written.

ref T5719

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7755

5 years agoelm_fileselector_entry: resolve missing interface api by composition
Marcel Hollerbach [Thu, 24 Jan 2019 10:40:34 +0000 (11:40 +0100)]
elm_fileselector_entry: resolve missing interface api by composition

this patch will redirect every elm_interface_fileselector call to the
added fileselector button. This resolves the missing fileselector API on
the fileselector entry.

ref T5719

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

5 years agoelm_fileselector_button: support the whole interface
Marcel Hollerbach [Thu, 24 Jan 2019 10:32:38 +0000 (11:32 +0100)]
elm_fileselector_button: support the whole interface

this adds full support of the full elm_fileselector interface to
elm_fileselector_button.

ref T5719

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

5 years agoelm_fileselector: improve documentation
Marcel Hollerbach [Thu, 24 Jan 2019 10:01:53 +0000 (11:01 +0100)]
elm_fileselector: improve documentation

lets safe up the time of the next one trying to figure out what
current_name is.

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

5 years agoelm_code: remove the implementation of efl.access.text
Marcel Hollerbach [Thu, 24 Jan 2019 09:45:55 +0000 (10:45 +0100)]
elm_code: remove the implementation of efl.access.text

its not implementing any of those functions, so better drop it

ref T5719

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

5 years agoelm: add container api for the two objects
Marcel Hollerbach [Thu, 24 Jan 2019 09:20:23 +0000 (10:20 +0100)]
elm: add container api for the two objects

this resolves unimplemented API by just mirroring the calls to different
API calls.

ref T5719

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

5 years agoedje: implement container api
Marcel Hollerbach [Thu, 24 Jan 2019 09:18:01 +0000 (10:18 +0100)]
edje: implement container api

the container api returns the number of added swallows.
the content iterator returns a iterator over all swallowed objects.

The reason this is only for swallows is that the interface explicitly
mentions UI elements at the count. Since i am believing the the result
of the count operation should mirror to the amount of elements in the
iterator, the iterator only returns swallowed objects.

ref T5719

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

5 years agoefl_task: remove efl.io.* interfaces
WooHyun Jung [Fri, 25 Jan 2019 08:57:54 +0000 (08:57 +0000)]
efl_task: remove efl.io.* interfaces

Remove efl.io.* interfaces from efl_task, and make other extended
classes properly.

ref T7657

Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Derek Foreman <derekf@osg.samsung.com>
Differential Revision: https://phab.enlightenment.org/D7747

5 years agogesture_manager: Filter events we add hooks for
Derek Foreman [Thu, 24 Jan 2019 18:57:19 +0000 (12:57 -0600)]
gesture_manager: Filter events we add hooks for

Gesture manager doesn't care about focus manager events, animation events,
and various other things it's currently hooking.

We can save a lot of pointer indirection nonsense by only paying attention
to events it can actually do something with.

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
5 years agogesture_manager: Use private data getter to save some lookups
Derek Foreman [Thu, 24 Jan 2019 17:34:12 +0000 (11:34 -0600)]
gesture_manager: Use private data getter to save some lookups

We frequently process an array of several events at once, so we can now
look up the gesture manager private data once for the entire array.

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
5 years agogesture_manager: Add a call to get private data
Derek Foreman [Thu, 24 Jan 2019 17:32:08 +0000 (11:32 -0600)]
gesture_manager: Add a call to get private data

We end up looking this up multiple times, having a getter will sometimes
allow us to get it and use it multiple times.

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
5 years agoeolian: clear the unimplemented implement set for each tree
Daniel Kolesa [Fri, 25 Jan 2019 13:11:25 +0000 (14:11 +0100)]
eolian: clear the unimplemented implement set for each tree

We keep a hash tracking implements that were already errored on
so that we don't print some errors multiple times. The problem is
that it wasn't getting cleared when switching to a new inheritance
tree so errors from an interface implemented in multiple distinct
inheritance trees would only get printed once.

5 years agodocs: Fix Efl.Object Freeze and Thaw docs
Xavi Artigas [Mon, 21 Jan 2019 10:54:41 +0000 (11:54 +0100)]
docs: Fix Efl.Object Freeze and Thaw docs

Summary: Fixes T7641

Test Plan: Only docs affected.

Reviewers: zmike, cedric

Reviewed By: cedric

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7641

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

5 years agoefl-mono: Add new dependencies to autotools
Felipe Magno de Almeida [Fri, 25 Jan 2019 11:57:07 +0000 (20:57 +0900)]
efl-mono: Add new dependencies to autotools

Summary: This fix make check for csharp bindings

Reviewers: woohyun

Reviewed By: woohyun

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoefl_ui_pager : Add missing meson config for pager test.
JunsuChoi [Fri, 25 Jan 2019 06:57:37 +0000 (06:57 +0000)]
efl_ui_pager : Add missing meson config for pager test.

   it occur to build fail in meson build.

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

5 years agoRevert "Revert "efl_ui_pager: add tests for efl_ui_pager""
Stefan Schmidt [Fri, 25 Jan 2019 08:41:24 +0000 (09:41 +0100)]
Revert "Revert "efl_ui_pager: add tests for efl_ui_pager""

This reverts commit a686b7d9fee99c631756eca2ce3e2dad1e296f0d.

Turns out in my eagerness to un-break the build I did not check the
patch queue before reverting. If I would have done this I would have
seen the fix for the break alreay being submitted by Junsu Choi.

This is my bad, the two reverts could have been avoid. Sorry.
Note to self: give yourself a moment, and check the patch queue, before
rushing out a revert. :/

5 years agoRevert "efl_ui_pager: add tests for efl_ui_pager"
Stefan Schmidt [Fri, 25 Jan 2019 08:30:00 +0000 (09:30 +0100)]
Revert "efl_ui_pager: add tests for efl_ui_pager"

This reverts commit 0b79064f4c5c383bf75833c7f3b64cd9a2d37af9.

Appreciating the new tests but they are breaking the meson build.

/usr/bin/ld: src/bin/elementary/aea5856@@elementary_test@exe/test.c.o: in function `my_win_main':
test.c:(.text+0x501e): undefined reference to `test_ui_pager'
/usr/bin/ld: test.c:(.text+0x504d): undefined reference to `test_ui_pager_scroll'
collect2: error: ld returned 1 exit status

Once the meson build break is fixed this could go in again.

5 years agoefl_ui_pager: add tests for efl_ui_pager
Jaeun Choi [Wed, 23 Jan 2019 11:10:55 +0000 (20:10 +0900)]
efl_ui_pager: add tests for efl_ui_pager

5 years agoefl_ui_pager: remove unnecessary lines
Jaeun Choi [Fri, 25 Jan 2019 04:46:12 +0000 (13:46 +0900)]
efl_ui_pager: remove unnecessary lines

5 years agoefl_page_indicator_icon: set size_hint_fill as 0
Jaeun Choi [Fri, 25 Jan 2019 04:42:26 +0000 (13:42 +0900)]
efl_page_indicator_icon: set size_hint_fill as 0

5 years agoefl_page_indicator_icon: fix update function
Jaeun Choi [Fri, 25 Jan 2019 04:38:49 +0000 (13:38 +0900)]
efl_page_indicator_icon: fix update function

pd->adj is NULL if pos equals 0

5 years agoefl_page_indicator_icon: refactor update function
Jaeun Choi [Fri, 25 Jan 2019 04:37:29 +0000 (13:37 +0900)]
efl_page_indicator_icon: refactor update function

5 years agoefl_page_indicator_icon: mark selected item in pack function if necessary
Jaeun Choi [Fri, 25 Jan 2019 04:26:03 +0000 (13:26 +0900)]
efl_page_indicator_icon: mark selected item in pack function if necessary

5 years agoefl_page_indicator_icon: refactor if-else statement
Jaeun Choi [Fri, 25 Jan 2019 02:17:19 +0000 (11:17 +0900)]
efl_page_indicator_icon: refactor if-else statement

5 years agoefl_ui_pager: implement unpack function
Jaeun Choi [Thu, 24 Jan 2019 10:06:07 +0000 (19:06 +0900)]
efl_ui_pager: implement unpack function

5 years agoefl_page_indicator: add unpack function
Jaeun Choi [Thu, 24 Jan 2019 09:42:24 +0000 (18:42 +0900)]
efl_page_indicator: add unpack function

5 years agoefl_page_indicator: add a variable 'curr_idx; in data
Jaeun Choi [Thu, 24 Jan 2019 09:47:50 +0000 (18:47 +0900)]
efl_page_indicator: add a variable 'curr_idx; in data

5 years agoefl_page_indicator_icon: remove unnecessary function
Jaeun Choi [Thu, 24 Jan 2019 09:32:11 +0000 (18:32 +0900)]
efl_page_indicator_icon: remove unnecessary function

invalidate function is not necessary since each item is deleted
when it's parent (box) is deleted.

5 years agoefl_page_transition_scroll: fix _efl_page_transition_scroll_update() function
Jaeun Choi [Thu, 24 Jan 2019 08:27:55 +0000 (17:27 +0900)]
efl_page_transition_scroll: fix _efl_page_transition_scroll_update() function

% operator should not be used when loop is disabled

5 years agoefl_page_transition_scroll: remove _content_show() function
Jaeun Choi [Thu, 24 Jan 2019 07:32:19 +0000 (16:32 +0900)]
efl_page_transition_scroll: remove _content_show() function

_content_show() function was used in page_info_geometry_change() and
_efl_page_transition_scroll_loop_set() function since they need to
show/hide page info objects in common. but using a common function
made each function inefficient and buggy.
this patch removes _content_show() function.

5 years agoefl_page_transition_scroll: refactor calculation code for beffer readability
Jaeun Choi [Thu, 24 Jan 2019 07:11:30 +0000 (16:11 +0900)]
efl_page_transition_scroll: refactor calculation code for beffer readability

5 years agoefl_ui_pager: make loop set function to return boolean value
Jaeun Choi [Thu, 24 Jan 2019 06:38:40 +0000 (15:38 +0900)]
efl_ui_pager: make loop set function to return boolean value

loop mode might not be available if the number of pages is
less than required to make a loop

5 years agoefl_page_transition_scroll: remove unnecessary line
Jaeun Choi [Thu, 24 Jan 2019 06:00:11 +0000 (15:00 +0900)]
efl_page_transition_scroll: remove unnecessary line

5 years agoefl_ui_pager: move page_box when page size is changed
Jaeun Choi [Thu, 24 Jan 2019 02:32:48 +0000 (11:32 +0900)]
efl_ui_pager: move page_box when page size is changed