platform/upstream/efl.git
5 years agoefl-csharp: Add support for containers in events.
Lauro Moura [Fri, 22 Feb 2019 17:02:26 +0000 (14:02 -0300)]
efl-csharp: Add support for containers in events.

Summary: Using a simple wrapper as event parameters are not ownable.

Reviewers: vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoexamples: fixes after Efl.Gfx.Hint rename
Xavi Artigas [Fri, 22 Feb 2019 16:42:31 +0000 (17:42 +0100)]
examples: fixes after Efl.Gfx.Hint rename

5 years agoexamples: Fix cxx examples compilation.
Lauro Moura [Fri, 22 Feb 2019 16:09:18 +0000 (17:09 +0100)]
examples: Fix cxx examples compilation.

Summary: After Efl.Gfx.Hint changes.

Reviewers: segfaultxavi, vitor.sousa

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoeolian: introduce typed slice types
Daniel Kolesa [Thu, 21 Feb 2019 14:24:35 +0000 (15:24 +0100)]
eolian: introduce typed slice types

Summary:
This adds two new complex types, slice<T> and rw_slice<T>. This
is necessary to make the type useful to bindings, as Eina_Slice
on its own says nothing about what it's carrying and that prevents
useful code from being generated outside of C.

@feature

Reviewers: bu5hm4n, segfaultxavi, lauromoura, cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agodocs: Polish focus documentation.
Marcel Hollerbach [Fri, 22 Feb 2019 09:41:38 +0000 (10:41 +0100)]
docs: Polish focus documentation.

Summary: Depends on D7994

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agobuild: fix macos build
Marcel Hollerbach [Fri, 22 Feb 2019 13:53:19 +0000 (08:53 -0500)]
build: fix macos build

Summary:
it the .pc file of luajit carries linker flags that causes compilation
fails on macos, thus we need to split up the .pc file into our own
dependency, and use it with causion

Reviewers: zmike, cedric, segfaultxavi

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agoevas_callbacks: redo legacy smart object events for recently changed event names
Mike Blumenkrantz [Fri, 22 Feb 2019 13:50:07 +0000 (08:50 -0500)]
evas_callbacks: redo legacy smart object events for recently changed event names

Summary:
this makes it more obvious which events are legacy and makes them easier to remove
in the future

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoapi: add bool data to efl.io.reader/writer 'changed' events
Mike Blumenkrantz [Fri, 22 Feb 2019 13:50:02 +0000 (08:50 -0500)]
api: add bool data to efl.io.reader/writer 'changed' events

Summary:
changed events should always be triggered with the accompanying changed
data to reduce function calls

ref T7600, T7599

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7600, T7599

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

5 years agoefl_ui_focus_object: rename API
Marcel Hollerbach [Thu, 21 Feb 2019 20:46:32 +0000 (21:46 +0100)]
efl_ui_focus_object: rename API

these API names have been considered a better choice.

ref T7571

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

5 years agoefl_ui_focus_object: rename events
Marcel Hollerbach [Thu, 21 Feb 2019 20:35:34 +0000 (21:35 +0100)]
efl_ui_focus_object: rename events

the event now math the pattern of <property-name>,changed.

ref T7571

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

5 years agoefl_ui_focus_composition: remove unneeded API
Marcel Hollerbach [Sun, 17 Feb 2019 17:22:13 +0000 (18:22 +0100)]
efl_ui_focus_composition: remove unneeded API

the purpose of this API can be improved, and the values there can be
guessed.

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

5 years agoefl_ui_focus_object: improve doc
Marcel Hollerbach [Sun, 17 Feb 2019 17:08:42 +0000 (18:08 +0100)]
efl_ui_focus_object: improve doc

ref T7571

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

5 years agoefl_ui_focus_manager: improve docs
Marcel Hollerbach [Sun, 17 Feb 2019 16:56:32 +0000 (17:56 +0100)]
efl_ui_focus_manager: improve docs

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

5 years agoefl_ui_focus_manager: rename focus,changed
Wonki Kim [Fri, 8 Mar 2019 01:25:05 +0000 (10:25 +0900)]
efl_ui_focus_manager: rename focus,changed

focus,changed is already used in efl_ui_focus_object, which makes sense
there. However, here we listen for the property focus_manager, thus its
renamed to focus_manager,changed.

ref T7571

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

Change-Id: If0efbe092fd05a953655ed58afec7a5702e4db86

5 years agogitignore: add .eo.legacy.c
Daniel Kolesa [Fri, 22 Feb 2019 12:07:48 +0000 (13:07 +0100)]
gitignore: add .eo.legacy.c

5 years agoelementary meson: fix script typo.
Hermet Park [Fri, 22 Feb 2019 11:16:09 +0000 (20:16 +0900)]
elementary meson: fix script typo.

5 years agoefl_ui_table: fix correct parameters of table_rows_get
Yeongjong Lee [Fri, 22 Feb 2019 11:05:39 +0000 (20:05 +0900)]
efl_ui_table: fix correct parameters of table_rows_get

Test Plan:
efl_pack_table_size_set(ui_table, 3, 4);
efl_pack_table_size_get(ui_table, &cols, &rows);

Check (cols, rows) are (3, 4)

Reviewers: Jaehyun_Cho, zmike, jpeg, bu5hm4n

Reviewed By: Jaehyun_Cho, bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

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

5 years agotest_ui_relative_layout: fix maybe-uninitialized warning
Jaehyun Cho [Fri, 22 Feb 2019 11:00:14 +0000 (20:00 +0900)]
test_ui_relative_layout: fix maybe-uninitialized warning

Warning, which 'text' may be used uninitialized, is fixed.

5 years agoTODO: squash into efl_ui_relative_layout: introduce new relative container
Wonki Kim [Fri, 8 Mar 2019 01:25:50 +0000 (10:25 +0900)]
TODO: squash into efl_ui_relative_layout: introduce new relative container

Change-Id: I48b38f1b625034fba797a4c50ef2591594071463

5 years agoefl_ui_relative_layout: introduce new relative container
Yeongjong Lee [Fri, 22 Feb 2019 10:47:47 +0000 (19:47 +0900)]
efl_ui_relative_layout: introduce new relative container

Summary:
Efl.Ui.Relative_Layout is a container which allows you to position and size with
relation to each other.
it is possible to position and size using relation like edje even though
you don't know a edc script.
Position and size can be changed dynamically using widget APIs.

@feature

ref T5487

Test Plan:
make check
examples
elementary_test -to 'efl.ui.relative_layout'

Reviewers: cedric, Hermet, Jaehyun_Cho, zmike, bu5hm4n, jpeg, segfaultxavi

Reviewed By: Jaehyun_Cho, segfaultxavi

Subscribers: segfaultxavi, kimcinoo

Tags: #efl

Maniphest Tasks: T5487

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

5 years agomono-examples: Fix after Efl.Gfx.Hints rename
Xavi Artigas [Fri, 22 Feb 2019 10:12:03 +0000 (11:12 +0100)]
mono-examples: Fix after Efl.Gfx.Hints rename

5 years agoRevert "eo: fix to remove unreachable loop"
Jaehyun Cho [Fri, 22 Feb 2019 10:01:09 +0000 (19:01 +0900)]
Revert "eo: fix to remove unreachable loop"

This reverts commit f02b82a49e12c0d02bb3f438046e1ceb93d1643b.

5 years agoapi: efl.gfx.stack stack,changed -> stacking,changed
Mike Blumenkrantz [Thu, 21 Feb 2019 19:09:41 +0000 (14:09 -0500)]
api: efl.gfx.stack stack,changed -> stacking,changed

slight tweak to make this more consistent with meaning and docs

ref T7560

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

5 years agoapi: rename efl.gfx.entity geometry events and add geometry data to those events
Wonki Kim [Fri, 8 Mar 2019 01:01:41 +0000 (10:01 +0900)]
api: rename efl.gfx.entity geometry events and add geometry data to those events

the convention for event naming is to use $property,changed where possible
and to always emit related data with the event to reduce function calls

ref T7558

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

Change-Id: I71bb7e7a70349bd6d797263724fe185b435b345a

5 years agoeo: fix to remove unreachable loop
Jaehyun Cho [Mon, 18 Feb 2019 04:24:27 +0000 (13:24 +0900)]
eo: fix to remove unreachable loop

5 years agoelementary: make sure Efl.Ui.Average_Model stay alive until the end of a property_set.
Cedric BAIL [Tue, 29 Jan 2019 19:57:24 +0000 (11:57 -0800)]
elementary: make sure Efl.Ui.Average_Model stay alive until the end of a property_set.

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

5 years agoecore: add infrastructure to make it easy to enforce Efl.Loop_Model children lifecycle.
Cedric BAIL [Tue, 29 Jan 2019 19:56:34 +0000 (11:56 -0800)]
ecore: add infrastructure to make it easy to enforce Efl.Loop_Model children lifecycle.

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

5 years agoefl: make sure that the expected lifecycle of the children of Efl.Model is well descr...
Cedric BAIL [Tue, 29 Jan 2019 19:54:55 +0000 (11:54 -0800)]
efl: make sure that the expected lifecycle of the children of Efl.Model is well described.

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

5 years agointerfaces: move animator,tick to efl.canvas.object and remove efl.animator
Mike Blumenkrantz [Thu, 21 Feb 2019 20:50:35 +0000 (21:50 +0100)]
interfaces: move animator,tick to efl.canvas.object and remove efl.animator

Summary:
this interface only contains a single event which is implemented only by the
canvas object

ref T7561

Reviewers: cedric, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7561

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

5 years agotests: fix elua test with autotools
Daniel Kolesa [Thu, 21 Feb 2019 20:51:55 +0000 (21:51 +0100)]
tests: fix elua test with autotools

For one, TESTS_SRC_DIR was missing even though it's present in
meson. For two, top_builddir/top_srcdir are relative paths, which
means the chdir added earlier would result in a wrong apps dir
being pointed to; fix that by making all paths passed into the
tests source absolute.

5 years agoapi: remove efl.ui.cursor interface
Mike Blumenkrantz [Fri, 8 Feb 2019 19:36:05 +0000 (14:36 -0500)]
api: remove efl.ui.cursor interface

this existed only to provide the methods for Efl.Ui.Layout_Part and fill
in implementation for some legacy functions which should probably not be
supported going forward

the corresponding methods have been merged into efl_ui_widget and the
legacy functions no longer use eolian-generated implementations

Reviewed-by: WooHyun Jung <woohyun0705@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7899

5 years agoeo: add tests for efl_property_reflection_exist.
Cedric BAIL [Tue, 12 Feb 2019 02:21:39 +0000 (18:21 -0800)]
eo: add tests for efl_property_reflection_exist.

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

5 years agoeo: add efl_property_reflection_exist to be able to know if a property is available...
Cedric BAIL [Tue, 12 Feb 2019 02:20:51 +0000 (18:20 -0800)]
eo: add efl_property_reflection_exist to be able to know if a property is available on an object.

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

5 years agoeo: return an Eina_Value error when a get for a property is not implemented.
Cedric BAIL [Tue, 12 Feb 2019 01:39:00 +0000 (17:39 -0800)]
eo: return an Eina_Value error when a get for a property is not implemented.

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

5 years agoeo: make reflection setter able to return an error code in case of failure.
Cedric BAIL [Tue, 12 Feb 2019 00:31:52 +0000 (16:31 -0800)]
eo: make reflection setter able to return an error code in case of failure.

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

5 years agoefl.canvas.scene: clean up pointer_position property
Wonki Kim [Thu, 7 Mar 2019 23:45:05 +0000 (08:45 +0900)]
efl.canvas.scene: clean up pointer_position property

this needed to take a seat param (to handle multiseat) and also have a
bool return to indicate whether a pointer device exists for the specified
seat

ref T7584

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

Change-Id: Iecaf379a60aeff9c07cee876dd900ac283955e8d

5 years agoefl.canvas.scene: add 'seat_default' property
Mike Blumenkrantz [Thu, 14 Feb 2019 19:32:52 +0000 (14:32 -0500)]
efl.canvas.scene: add 'seat_default' property

there seems to be no other way to directly return the default seat object?

ref T7584

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

5 years agointerfaces: move pointer_iterate method efl.canvas.scene -> efl.ui.win
Mike Blumenkrantz [Thu, 14 Feb 2019 18:59:54 +0000 (13:59 -0500)]
interfaces: move pointer_iterate method efl.canvas.scene -> efl.ui.win

this method should probably be merged into a gesture class somewhere,
but it's @beta anyway so shuffling it around to reduce spaghettification
of code is fine for now

ref T7584

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

5 years agoelementary_test: fix meson build after renaming efl_gfx_map to mapping
Xavi Artigas [Thu, 21 Feb 2019 18:27:59 +0000 (19:27 +0100)]
elementary_test: fix meson build after renaming efl_gfx_map to mapping

5 years agoRename Efl.Gfx.Map -> Efl.Gfx.Mapping
Xavi Artigas [Wed, 20 Feb 2019 20:32:41 +0000 (21:32 +0100)]
Rename Efl.Gfx.Map -> Efl.Gfx.Mapping

Summary:
For clarity, since there are all kinds of maps, including a navigation map
widget.
Also, corrected some misspellings.

Test Plan: make && make check && make examples all work

Reviewers: cedric, zmike, bu5hm4n

Reviewed By: cedric

Subscribers: Jaehyun_Cho, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7564

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

5 years agoefl_loop: remove message_handler_get
Marcel Hollerbach [Thu, 21 Feb 2019 17:56:00 +0000 (18:56 +0100)]
efl_loop: remove message_handler_get

it appears that this could be emulated with other functions. Plus the
function had the limitation, that no constructors could be used.

ref T7597

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

5 years agoefl_loop_timer: resolve fixups of documentation
Marcel Hollerbach [Thu, 21 Feb 2019 14:56:16 +0000 (15:56 +0100)]
efl_loop_timer: resolve fixups of documentation

this resolves a few FIXMEs regarding documentation.
Overwriting functions does not help that much, since the documentation
will not be displayed in a IDE, so the documentation of these functions
are moved to the class documentation, which is assosiated with the
object.

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

5 years agoefl_loop / efl_app: make efl_app / efl_loop abstract
Marcel Hollerbach [Thu, 21 Feb 2019 14:33:55 +0000 (15:33 +0100)]
efl_loop / efl_app: make efl_app / efl_loop abstract

this is done inorder to ensure that noone ever thinks of creating theire
own app/loop object.

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

5 years agoTODO: squash into api: efl.gfx.hints.change,size,hints -> efl.gfx.hints.hints,changed
Wonki Kim [Thu, 7 Mar 2019 23:45:25 +0000 (08:45 +0900)]
TODO: squash into api: efl.gfx.hints.change,size,hints -> efl.gfx.hints.hints,changed

Change-Id: Ie5a630aaac994dde913fdc9d8ac99a219405ed8f

5 years agoapi: efl.gfx.hints.change,size,hints -> efl.gfx.hints.hints,changed
Mike Blumenkrantz [Thu, 21 Feb 2019 17:46:36 +0000 (18:46 +0100)]
api: efl.gfx.hints.change,size,hints -> efl.gfx.hints.hints,changed

Summary:
this is consistent with other "changed" event naming

ref T7563

Depends on D7977

Reviewers: segfaultxavi, cedric, bu5hm4n

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7563

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

5 years agoapi: efl.gfx.size_hints -> efl.gfx.hints
Mike Blumenkrantz [Thu, 21 Feb 2019 17:19:45 +0000 (18:19 +0100)]
api: efl.gfx.size_hints -> efl.gfx.hints

Summary:
these hints are not strictly size-related, so renaming them is more consistent
with their actual function

ref T7563

Depends on D7968

Reviewers: segfaultxavi, cedric, bu5hm4n

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7563

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

5 years agoefl.gfx.stack: restack -> stack,changed
Wonki Kim [Thu, 7 Mar 2019 12:19:52 +0000 (21:19 +0900)]
efl.gfx.stack: restack -> stack,changed

Summary:
ref T7560

Depends on D7967

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T7560

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

Change-Id: Ifcc911edc42c2974b82f095796bec7162188a5e4

5 years agoefl.screen: add screen_scale_factor property
Mike Blumenkrantz [Thu, 21 Feb 2019 17:19:39 +0000 (18:19 +0100)]
efl.screen: add screen_scale_factor property

Summary:
ref T7590

Depends on D7966

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T7590

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

5 years agoefl.screen: add screen_size_in_mm property
Mike Blumenkrantz [Thu, 21 Feb 2019 17:19:35 +0000 (18:19 +0100)]
efl.screen: add screen_size_in_mm property

Summary:
ref T7590

Depends on D7965

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T7590

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

5 years agoefl.screen: screen_size -> screen_size_in_pixels
Mike Blumenkrantz [Thu, 21 Feb 2019 17:19:33 +0000 (18:19 +0100)]
efl.screen: screen_size -> screen_size_in_pixels

Summary:
also improve docs slightly

ref T7590

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T7590

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

5 years agoeolian gen: generate a separate file with legacy implementations
Daniel Kolesa [Thu, 21 Feb 2019 15:52:40 +0000 (16:52 +0100)]
eolian gen: generate a separate file with legacy implementations

If legacy implementations are generated, eolian_gen now creates
a separate file for them and includes it. The file name convention
for that is <.c file name without ext>.legacy.<.c file name ext>
or <.c file name>.legacy.c if it has no ext, so for example
foo.eo.c becomes foo.eo.legacy.c and foo becomes foo.legacy.c.

The file is generated assuming there are any legacy APIs contained
inside the .eo file.

5 years agotests: add chdir in elua to prevent incorrect file accesses
Daniel Kolesa [Thu, 21 Feb 2019 14:04:31 +0000 (15:04 +0100)]
tests: add chdir in elua to prevent incorrect file accesses

Elua is testing API that tries to read files by path, prevent
unintentional reads from current working directory by changing
that directory.

5 years agotests: Include ecore test dir for generated eo.h
Lauro Moura [Thu, 21 Feb 2019 12:10:27 +0000 (13:10 +0100)]
tests: Include ecore test dir for generated eo.h

Summary: Was causing builds off-tree failing check-build

Test Plan: build tests

Reviewers: cedric, bu5hm4n, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agoeolian gen: emit doxygen references to constants in uppercase
Daniel Kolesa [Sun, 17 Feb 2019 20:33:54 +0000 (21:33 +0100)]
eolian gen: emit doxygen references to constants in uppercase

Since these are made into macros in C, they get uppercase names.
Reflect this in documentation generation.

Fixes T7691.

5 years agoecore drm2 - work around kms/drm bug seemingly when no flip event comes
Carsten Haitzler (Rasterman) [Sun, 17 Feb 2019 13:33:25 +0000 (13:33 +0000)]
ecore drm2 - work around kms/drm bug seemingly when no flip event comes

so we request a flip so we can do vsync events. the flip event never
comes. i am not sure why it never comes, but we ask and nothing
arrives, and this basically halts all rendering in wayland compositor
mode as we are syncing rendering to vsync (of course). put in a
timeout of 0.05s (50ms) to try ask again if the event never comes and
log the error. this is a pretty useful workaround becauswe having your
entire display freeze is a ... bad thing.

@fix

5 years agomeson: add the elementary examples to the build
Marcel Hollerbach [Sun, 17 Feb 2019 18:11:53 +0000 (19:11 +0100)]
meson: add the elementary examples to the build

5 years agolayout_property_bind: make it work again
Marcel Hollerbach [Sun, 17 Feb 2019 18:11:26 +0000 (19:11 +0100)]
layout_property_bind: make it work again

5 years agoefl_ui_theme: fix example
Marcel Hollerbach [Sun, 17 Feb 2019 18:11:05 +0000 (19:11 +0100)]
efl_ui_theme: fix example

5 years agoefl_app: improve docs
Marcel Hollerbach [Wed, 20 Feb 2019 13:16:50 +0000 (14:16 +0100)]
efl_app: improve docs

ref T7596

5 years agoefl_loop: document and annotate efl_loop_time correctly
Marcel Hollerbach [Wed, 20 Feb 2019 13:14:13 +0000 (14:14 +0100)]
efl_loop: document and annotate efl_loop_time correctly

this adds over the documentation of the legacy header.
Additionally set is defined as protected.

ref T7597

5 years agoefl_loop: declare this class function to the object
Marcel Hollerbach [Wed, 20 Feb 2019 12:12:37 +0000 (13:12 +0100)]
efl_loop: declare this class function to the object

we pass the object as first argument, so everything is just like object
function, thus we can declare it like this.

ref T7597

5 years agoeo: add API for querying the class type
Marcel Hollerbach [Mon, 18 Feb 2019 14:09:27 +0000 (15:09 +0100)]
eo: add API for querying the class type

a class can be a interface mixin abstract or regular.
This adds a API for getting this information

5 years agomono-docs: Add <value> tags to properties
Xavi Artigas [Tue, 19 Feb 2019 12:29:09 +0000 (13:29 +0100)]
mono-docs: Add <value> tags to properties

eolian_mono now generates properties (which simply wrap the setter and getter
methods when both ara available), but they were missing docs, because
properties require a special <value> tag instead of <returns> or <param> which
we are already implementing.
This commit adds <value> tags only if docs can be retrieved from the setter or
the getter methods.

5 years agoci: host binaries have moved to a new path
Marcel Hollerbach [Wed, 20 Feb 2019 15:52:16 +0000 (16:52 +0100)]
ci: host binaries have moved to a new path

this fixes ci

5 years agoevas vg: fix correct increment for tflags
Yeongjong Lee [Thu, 21 Feb 2019 05:17:18 +0000 (14:17 +0900)]
evas vg: fix correct increment for tflags

Summary:
There is warning.

```
lib/evas/vg/evas_vg_cache.c: In function ‘_vg_file_save’:
lib/evas/vg/evas_vg_cache.c:185:30: warning: pointer of type ‘void *’ used in arithmetic [-Wpointer-arith]
         tflags = alloca(len) + 1;
```
Previous code of a8d5f275c78 is intended to increase flags length.

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoevas vg: check for OOM when calloc()
Hermet Park [Mon, 18 Feb 2019 06:09:44 +0000 (15:09 +0900)]
evas vg: check for OOM when calloc()

5 years agoevas vg: use strncpy() instead of strcpy() for better security.
Hermet Park [Mon, 18 Feb 2019 05:47:14 +0000 (14:47 +0900)]
evas vg: use strncpy() instead of strcpy() for better security.

5 years agoeolian: disallow freefuncs on typedefs
Daniel Kolesa [Sun, 17 Feb 2019 01:20:35 +0000 (02:20 +0100)]
eolian: disallow freefuncs on typedefs

Now the only kind of typedecl that is allowed a freefunc is
a struct. This simplifies the overall logic and makes freefuncs
a bit more predictable.

5 years agoeolian: restrict usage of ptr() to directly used types
Daniel Kolesa [Sun, 17 Feb 2019 01:11:02 +0000 (02:11 +0100)]
eolian: restrict usage of ptr() to directly used types

That means, it can only now be used on parameters and struct
fields, never aliased within typedefs. This simplifies the
logic so that we don't have ptr metadata buried several layers
deep.

5 years agoexamples - add examples for efl exe/thread
Carsten Haitzler (Rasterman) [Sat, 16 Feb 2019 22:03:08 +0000 (22:03 +0000)]
examples - add examples for efl exe/thread

5 years agoefl cmdline use simpler stringshare type to not be redundant
Carsten Haitzler (Rasterman) [Fri, 15 Feb 2019 19:52:50 +0000 (19:52 +0000)]
efl cmdline use simpler stringshare type to not be redundant

5 years agoeolian gen: initial support for reflection api
Daniel Kolesa [Fri, 15 Feb 2019 16:15:36 +0000 (17:15 +0100)]
eolian gen: initial support for reflection api

This adds support for generating reflection functions for
properties. This support is basic for now, supporting only
primitive types and string(shares), it will be expanded later
as required.

@feature

5 years agoefl.canvas.scene: improve class docs
Mike Blumenkrantz [Fri, 15 Feb 2019 15:20:58 +0000 (16:20 +0100)]
efl.canvas.scene: improve class docs

Summary:
these were some pretty efl docs, and I've tried to make them more accessible

ref T7584

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7584

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

5 years agoefl commandline - make strings also owned as well as array
Carsten Haitzler (Rasterman) [Fri, 15 Feb 2019 12:27:21 +0000 (12:27 +0000)]
efl commandline - make strings also owned as well as array

this seems like it should be the right one. i don't have sample tests
etc.  to run - the mono suite succeeds... so...

5 years agoecore audio - mark it all as beta
Carsten Haitzler (Rasterman) [Fri, 15 Feb 2019 10:38:09 +0000 (10:38 +0000)]
ecore audio - mark it all as beta

this api needs a re-think in terms of being portablke/back-enmd
agnostic. it shouldnt expose windows vs pulse etc. and shouldnt be
ecore_XXX for sure.

5 years agofix efl exe/thread/appthread to work again after seemingly bitrotting
Carsten Haitzler (Rasterman) [Fri, 15 Feb 2019 01:19:03 +0000 (01:19 +0000)]
fix efl exe/thread/appthread to work again after seemingly bitrotting

5 years agofix args handling in cmdline class to not be broken
Carsten Haitzler (Rasterman) [Fri, 15 Feb 2019 01:16:49 +0000 (01:16 +0000)]
fix args handling in cmdline class to not be broken

first use consistent ownership (stringshare the strings) and then also
properly dup and pass them and not free null arrays and so on where
they are used

5 years agocmdline iface - fix to consume input array AND strings totally
Carsten Haitzler (Rasterman) [Thu, 14 Feb 2019 11:28:23 +0000 (11:28 +0000)]
cmdline iface - fix to consume input array AND strings totally

strings often enough are generated e.g. via "%s/%s" or "%i" or similar
etc. ... i have poitned to examples, so move to make all strings
consistently stringshared, fix a bug added to the efl thread code
where it accessed and freed array even tho array was consumed (but not
strings) in the set, and the code used free to consume not
stringshare_del. fix other code and tests to match

EXCTLY the kind of bugs and mistakes with this kind of design that i
said would happen more often just happened...

5 years agoenv obj - fixx implementation to use a shared object
Carsten Haitzler (Rasterman) [Thu, 14 Feb 2019 11:27:27 +0000 (11:27 +0000)]
env obj - fixx implementation to use a shared object

so this chnage totally threww away all the thread safety and locking
without doing the simple thing of using a shared obcj for the global
env obj to ensure brute force safety at least. fix.

5 years agoMove Efl.Observable_Tuple into efl_observable.eo
Xavi Artigas [Thu, 14 Feb 2019 20:41:23 +0000 (15:41 -0500)]
Move Efl.Observable_Tuple into efl_observable.eo

Summary:
And out of efl_types.eot
Makes sense, right?

Test Plan: Everything builds

Reviewers: cedric, zmike, bu5hm4n

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agoRemove warnings when building without EFL_BETA_API_SUPPORT
Xavi Artigas [Thu, 14 Feb 2019 20:33:55 +0000 (15:33 -0500)]
Remove warnings when building without EFL_BETA_API_SUPPORT

Summary:
efl_alive_get should be a method defined in efl_object.eo, protected by
EFL_BETA_API_SUPPORT while that class is still @beta.
Instead, it is defined in Eo.h, so the BETA guard has to be defined manually.
This was causing some unsighly warnings during "make" and "make check"
(implicit declaration of function ‘efl_invalidating_get’)

Test Plan: make && make check do not throw that warning anymore

Reviewers: zmike, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agoefl_core_command_line: a +1 was forgotten in order to account \0
Marcel Hollerbach [Thu, 14 Feb 2019 19:10:21 +0000 (20:10 +0100)]
efl_core_command_line: a +1 was forgotten in order to account \0

this forgotten and the allocated string buffer was too small.
This fixes a valgrind warnings

5 years agoStop defining EFL_BETA_API_SUPPORT in Efl_Core.h and Efl_Ui.h
Xavi Artigas [Thu, 14 Feb 2019 15:24:56 +0000 (16:24 +0100)]
Stop defining EFL_BETA_API_SUPPORT in Efl_Core.h and Efl_Ui.h

Summary:
Including these headers does no longer mean that you want to use BETA API.
More and more methods in these libs will come out of BETA and they will
be usable without requiring EFL_BETA_API_SUPPORT to be defined by the app.

This concludes this patchset. Now apps can chose to define EFL_BETA_API_SUPPORT
or not, and they will have access to the requested API subset, but both options
are available.

Depends on D7951
Fixes T7692

Reviewers: zmike, bu5hm4n, cedric

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7692

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

5 years agoMark BETA classes individually
Wonki Kim [Thu, 7 Mar 2019 12:10:28 +0000 (21:10 +0900)]
Mark BETA classes individually

Summary:
Instead of surrounding all the #include "*.eo.h" lines in Efl.h
with #ifdef EFL_BETA_API_SUPPORT, include these files unconditionally, but mark
all classes as @beta in the eo files.
This will allow taking them out of beta one by one as we deem them stable enough.
Otherwise, the current procedure involves moving the #include line out of the
ifdef block, which is cumbersome and messes include order.

Depends on D7950
Fixes T7692

Test Plan: Nothing changes

Reviewers: zmike, bu5hm4n, cedric

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7692

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

Change-Id: Ifc2ccd97807c33e2e4927c38c14d494567d3bbca

5 years agoMark EFL_MAIN and EFL_MAIN_EX macros as stable
Xavi Artigas [Thu, 14 Feb 2019 16:09:23 +0000 (17:09 +0100)]
Mark EFL_MAIN and EFL_MAIN_EX macros as stable

They no longer require EFL_BETA_API_SUPPORT to be defined.

5 years agoMark efl_types.eot as stable
Xavi Artigas [Thu, 14 Feb 2019 15:11:32 +0000 (16:11 +0100)]
Mark efl_types.eot as stable

Summary:
This allows using Efl_Version without EFL_BETA_API_SUPPORT, which in turn
allows failing when trying to use restricted BETA API with a more meaningful
error message.
The error will now tell you which restricted API you are trying to use, instead
of Efl_Version symbol not found.

Fixes T7696
Depends on D7932

Test Plan:
make && make check && make examples continue working.
Building a BETA example while removing the EFL_BETA_API_SUPPORT define should
tell you which BETA API you tried to use.

Reviewers: zmike, bu5hm4n, cedric

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7696

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

5 years agoeo: declare Eo stable
Marcel Hollerbach [Thu, 14 Feb 2019 14:24:45 +0000 (15:24 +0100)]
eo: declare Eo stable

Summary:
This declares the main part of Eo.h as stable, except the domain api for
now. We don't have a user of that API for now, nor do we have bindings
supporting threads, lets wait with this bit until we have bindings for
this, so we can test it.

Further more, this does not stabilize the composition API of
efl_object.eo.h, reason for this is, that we might want to overthink the
solution we have with events, as we might want to forward events per
default.
Depends on D7931

Reviewers: stefan_schmidt, cedric, zmike, segfaultxavi

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agodocs: Typo
Xavi Artigas [Thu, 14 Feb 2019 14:22:01 +0000 (15:22 +0100)]
docs: Typo

5 years agoEfl.Gfx.Stack: Rename raise and lower
Xavi Artigas [Thu, 14 Feb 2019 13:57:22 +0000 (08:57 -0500)]
Efl.Gfx.Stack: Rename raise and lower

Summary:
to move_to_top and move_to_bottom since the previous names seemed to indicate
that the object only moved one step instead of all the way through the top
or the bottom of the stack.

Ref T7560

Test Plan: make && make check && make examples work as before

Reviewers: cedric, zmike

Reviewed By: zmike

Subscribers: kimcinoo, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7560

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

5 years agodocs: Clarify docs for Efl.Screen.
Xavi Artigas [Thu, 14 Feb 2019 12:20:28 +0000 (13:20 +0100)]
docs: Clarify docs for Efl.Screen.

5 years agobuild: enable eolian_gen bootstrapping for cross compile
Marcel Hollerbach [Wed, 13 Feb 2019 12:48:24 +0000 (13:48 +0100)]
build: enable eolian_gen bootstrapping for cross compile

this enables travis to build eolian_gen before cross compiling in mingw.
This is done in order to make eolian_gen patches easier on CI.

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

5 years agobuild: add a option to bootstrap eolian
Marcel Hollerbach [Wed, 13 Feb 2019 12:42:55 +0000 (13:42 +0100)]
build: add a option to bootstrap eolian

this is here in order to make cross compiling easier, and we can just
provide the *all the time changing* eolian_gen binary.

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

5 years agobuild: fix autotools release tarbal generation
Marcel Hollerbach [Wed, 13 Feb 2019 11:36:12 +0000 (12:36 +0100)]
build: fix autotools release tarbal generation

this file was forgotten when initially writing this patch.

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

5 years agotests: guard eina bool variable to avoid compilation failure on windows
Stefan Schmidt [Thu, 14 Feb 2019 09:40:13 +0000 (10:40 +0100)]
tests: guard eina bool variable to avoid compilation failure on windows

The timeout_reached bool is only used in this function when HAVE_FORK is
available. This is not the case on windows. Eina.h would only be
included with fork available so the Eina_Bool type causes a compilation
fail on windows. Guarding them as the other parts of the function using
it solves the problem.

Reviewed-by: Vincent Torri <vincent.torri@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7947

5 years agoecore wl2 - remove pointless sntrcpys causing warnings
Carsten Haitzler (Rasterman) [Thu, 14 Feb 2019 09:31:02 +0000 (09:31 +0000)]
ecore wl2 - remove pointless sntrcpys causing warnings

again pointless:

strcpy(dest, x); -> len - strlen(x); strncpy(dest, x, len);

code put in causing new warnings. this kind of "get rid of strcpy" is
actua;;y dangerous as it's more likely a mistake is made along the way
and bugs are added. strcpy's  should be reviewed and if ok - left
as-is. doing otherwise makes the code worse, not better and raises
risk. it now also produces warnings at compile time which creates
noise we just shouldnt' have.

5 years agoefl_page_transition_scroll: avoid explicit null dereference
Jaeun Choi [Wed, 13 Feb 2019 12:22:59 +0000 (21:22 +0900)]
efl_page_transition_scroll: avoid explicit null dereference

5 years agoefl_pack: move layout,updated event to Efl.Pack_Layout
Yeongjong Lee [Thu, 14 Feb 2019 03:57:13 +0000 (12:57 +0900)]
efl_pack: move layout,updated event to Efl.Pack_Layout

Summary:
'layout,updated' event is more suitable for Efl.Pack_Layout which have
layout_update method.

Test Plan: make

Reviewers: segfaultxavi, cedric, Jaehyun_Cho

Reviewed By: segfaultxavi, Jaehyun_Cho

Subscribers: #reviewers, #committers

Tags: #efl

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

5 years agoeolian: allow tagging complete classes as BETA
Xavi Artigas [Wed, 13 Feb 2019 17:12:59 +0000 (18:12 +0100)]
eolian: allow tagging complete classes as BETA

Summary:
This allows using the @beta tag in classes, like this:
class @beta Efl.Foo extends Efl.Bar { ... }

This will surround the class definition in the .eo.h file with an
EFL_BETA_API_SUPPORT #define, equivalent to tag every method and
event with @beta.

Test Plan: Nothing changes since no class uses this tag yet

Reviewers: q66, bu5hm4n, zmike

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

5 years agoRemove individual class BETA guards
Xavi Artigas [Wed, 13 Feb 2019 10:58:33 +0000 (11:58 +0100)]
Remove individual class BETA guards

Summary:
Eolian adds a per-class BETA guard (like EFL_UI_WIN_BETA) to any method tagged
as @beta. This means that any app (and the EFL code) wanting to use BETA features
has to enable them class by class, which is cumbersome.
This commit replaces the individual guards with the global EFL_BETA_API_SUPPORT
guard, so apps only need to define one symbol to access BETA features.

Any usage of the per-class guards has been removed from the EFL code and examples.
When building EFL the global guard is defined by configure, so all EFL methods
already have access to BETA API.
Efl_Core.h and Efl_Ui.h no longer define EFL_BETA_API_SUPPORT. Apps wanting to
use BETA API have to define this symbol before including any EFL header
(It has been added to the examples requiring it).

Test Plan:
make && make check && make examples still work, but there's a lot less #defines
in the code

Reviewers: zmike, bu5hm4n, q66

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T6788

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

5 years agoecore-x: only modify _ecore_key_grabs when key is toggled
Thierry [Wed, 13 Feb 2019 16:28:01 +0000 (11:28 -0500)]
ecore-x: only modify _ecore_key_grabs when key is toggled

A New entry is added to _ecore_key_grabs even when no key was grabbed.

Summary:  The key grab and ungrab functions should return which keycode was used. Proposed by pascal@ordissimo.com

Reviewers: zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

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