platform/upstream/efl.git
7 years agoecore_drm2: Properly release buffers on output disable
Derek Foreman [Fri, 2 Jun 2017 16:38:01 +0000 (11:38 -0500)]
ecore_drm2: Properly release buffers on output disable

Give back all buffers, and do it through the release mechanism that can
fire a callback into the engine.

Previously we just leaked one and left the rest.

7 years agoecore_drm2: Rename _release_buffer and make it private instead of static
Derek Foreman [Fri, 2 Jun 2017 16:36:51 +0000 (11:36 -0500)]
ecore_drm2: Rename _release_buffer and make it private instead of static

Other files in ecore_drm2 need to release buffers too.

7 years agoEfl.Ui.Image.Zoomable: implement Ui.Image.icon property
Amitesh Singh [Fri, 2 Jun 2017 01:45:25 +0000 (10:45 +0900)]
Efl.Ui.Image.Zoomable: implement Ui.Image.icon property

@feature

7 years agopopup: fix object_mirrored_set didn't work
JinYong Park [Fri, 2 Jun 2017 07:25:11 +0000 (16:25 +0900)]
popup: fix object_mirrored_set didn't work

Summary:
object_mirroed_set as opposed to config_mirrored_set doesn't work with
popup. This patch broadcasts a change on 'mirrored' to internal notify,
main layout, scroller and action area layout to make API work.

@fix

Reviewers: singh.amitesh, jpeg, conr2d, cedric, raster

Reviewed By: conr2d

Subscribers: herb

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

7 years agoexamples: edje: make sure we use the edje_object_language_set legacy API
Stefan Schmidt [Thu, 1 Jun 2017 13:16:47 +0000 (15:16 +0200)]
examples: edje: make sure we use the edje_object_language_set legacy API

The EO based edje_obj_language_set API is now longer available since a
rework of this API. Also make sure a used parameter is not marked as
unused.

7 years agodocs: efl_text_style: add docs for various style related enums
Stefan Schmidt [Wed, 31 May 2017 15:56:56 +0000 (17:56 +0200)]
docs: efl_text_style: add docs for various style related enums

7 years agodocs: efl_font_format: add docs for Efl.Text.Format.Wrap enum
Stefan Schmidt [Wed, 31 May 2017 15:41:37 +0000 (17:41 +0200)]
docs: efl_font_format: add docs for Efl.Text.Format.Wrap enum

7 years agodocs: efl_text_font: add docs for font width and slant enums
Stefan Schmidt [Wed, 31 May 2017 15:30:28 +0000 (17:30 +0200)]
docs: efl_text_font: add docs for font width and slant enums

7 years agodocs: efl_text_font: add docs for font weight enum
Stefan Schmidt [Wed, 31 May 2017 15:19:57 +0000 (17:19 +0200)]
docs: efl_text_font: add docs for font weight enum

Who comes up with font weight names like extrabold or black? :)

7 years agodocs: elm: add description for external Elm.Glob.Match_Flags
Stefan Schmidt [Wed, 31 May 2017 15:19:24 +0000 (17:19 +0200)]
docs: elm: add description for external Elm.Glob.Match_Flags

7 years agoelm: move Elm.Glob.Match_Flags extern into a single place
Stefan Schmidt [Wed, 31 May 2017 15:08:38 +0000 (17:08 +0200)]
elm: move Elm.Glob.Match_Flags extern into a single place

Since this was moved into the two genlist and gengrid files I get
redefinition warnings during the build and when generating the docs
eolian actually errors out on me and stops parsing.

7 years agoelm_gen : apply Elm_Theme_Apply enum return types for theme_object_get of item view.
SangHyeon Lee [Fri, 2 Jun 2017 01:32:04 +0000 (10:32 +0900)]
elm_gen : apply Elm_Theme_Apply enum return types for theme_object_get of item view.

elm_widget_theme_object_get now return Elm_Theme_Apply enum not bools.
only ELM_THEME_APPLY_FAILED case, need to re-apply default item edje.

Signed-off-by: SangHyeon Lee <sh10233.lee@samsung.com>
7 years agoecore_imf: Add commit content event callback
Jihoon Kim [Wed, 31 May 2017 09:23:32 +0000 (18:23 +0900)]
ecore_imf: Add commit content event callback

COMMIT_CONTENT is called when the input method commits content such as an image.

Change-Id: Idf238dc9b27811999b1ee733eeba2318d57e54f1
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
7 years agoelput: Fix logind session object path
Derek Foreman [Wed, 31 May 2017 19:16:36 +0000 (14:16 -0500)]
elput: Fix logind session object path

We're supposed to query the path for a session id instead of just
making up the string ourselves.

Fixes all input devices being dead after a vc switch for some users.

7 years agoEfl.Ui.Image.Zoomable: inherit from Efl.Ui.Image
Amitesh Singh [Mon, 29 May 2017 08:59:35 +0000 (17:59 +0900)]
Efl.Ui.Image.Zoomable: inherit from Efl.Ui.Image

7 years agoelm_image: Fix previous image visible issue
jiin.moon [Wed, 31 May 2017 10:01:03 +0000 (19:01 +0900)]
elm_image: Fix previous image visible issue

Summary: Previous image still visible when elm_image_file_set has wrong file path.

Test Plan: self

Reviewers: jpeg, jypark, singh.amitesh

Reviewed By: singh.amitesh

Subscribers: singh.amitesh, minkyu, cedric

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

7 years agoedje: Move some functions to Efl.Ui.Base (EO)
Jean-Philippe Andre [Wed, 31 May 2017 09:33:11 +0000 (18:33 +0900)]
edje: Move some functions to Efl.Ui.Base (EO)

This introduces the new interface Efl.Ui.Base, intended to
share some APIs between Edje and Elm:
 - mirrored (rtl)
 - language
 - scale

base_scale remains in Edje.Object for now. I don't think it
applies to generic widgets.

The new interface uses eo prefix "efl_ui". It could be renamed
as Efl.Ui (no Base), or anything else. As always, I'm open to
propositions!

Ref T5315

7 years agointerfaces: Remove display_mode from EO size hints
Jean-Philippe Andre [Wed, 31 May 2017 08:58:14 +0000 (17:58 +0900)]
interfaces: Remove display_mode from EO size hints

This size hint is only used by naviframe, which is not part of
our EO widgets. I also believe it might be an even more confusing
hint than the others.

I kept the typedef as is in Evas_Legacy.h in case an app is
written using EFL_GFX_ instead of EVAS_...

7 years agoedje: Reshuffle a bit edje_object.eo
Jean-Philippe Andre [Wed, 31 May 2017 08:03:26 +0000 (17:03 +0900)]
edje: Reshuffle a bit edje_object.eo

This changes a few method names:
 - freeze -> calc_freeze
 - thaw -> calc_thaw
 - update_hints -> calc_update_hints

Otherwise this is mostly about reshuffling the EO file itself
and changing documentation.

Ref T5315

7 years agoedje: Rename "data" to "group_data" for EO
Jean-Philippe Andre [Wed, 31 May 2017 07:20:54 +0000 (16:20 +0900)]
edje: Rename "data" to "group_data" for EO

Still not happy with the name. I'm trying to avoid a name
clash between other "data" elements in the object. This is
the EDC group "data item".

Ref T5315

7 years agodrm: Fix build warning (invalid enum type)
Jean-Philippe Andre [Wed, 31 May 2017 08:46:21 +0000 (17:46 +0900)]
drm: Fix build warning (invalid enum type)

7 years agoedje: Revert build fix and make "internal" eo public
Jean-Philippe Andre [Wed, 31 May 2017 02:33:33 +0000 (11:33 +0900)]
edje: Revert build fix and make "internal" eo public

Those classes are simply badly named, and I've come to realize since
that part class definitions are not internal, but instead they are
part of the public API. They are required for documentation, casting,
etc... I will rename them to "part" instead of "internal" later.

Since the headers are included in Edje_Eo.h not installing them
broke the build of any external app. Sorry for the mess!

This reverts 665856027d85802a29ede6f005674a8294df60fe

Ref T5306

7 years agoedje: Remove external param_set from EO
Jean-Philippe Andre [Wed, 31 May 2017 02:20:40 +0000 (11:20 +0900)]
edje: Remove external param_set from EO

As Dave pointed out, those are meant for internal use by Edje and
the plugins implementation, rather than for apps. This removes
ugly and complex code. Makes me happy :)

Note that I've kept the composition for now. We can remove it
as efl_content_get() must work on the part handle anyway. But it
can be used as a quick solution.

7 years agotest: Cleanup timer when window is closed
Jean-Philippe Andre [Tue, 30 May 2017 14:52:22 +0000 (23:52 +0900)]
test: Cleanup timer when window is closed

This avoids confusing ERR messages in efl_part().

7 years agoedje: Move part drag APIs to efl_part
Jean-Philippe Andre [Tue, 30 May 2017 14:13:02 +0000 (23:13 +0900)]
edje: Move part drag APIs to efl_part

This moves all part_drag APIs to legacy and implements them for
EO using efl_part(). All parts now support these APIs, even if
they are not draggable. Making this more fine grained would
probably be much extra work for little gain.

This creates a new interface Efl.Ui.Drag.

7 years agoedje: Improve reference doc for part drag APIs
Jean-Philippe Andre [Tue, 30 May 2017 13:38:13 +0000 (22:38 +0900)]
edje: Improve reference doc for part drag APIs

7 years agopopup: remove previous object when setting new content
JinYong Park [Wed, 31 May 2017 04:12:59 +0000 (13:12 +0900)]
popup: remove previous object when setting new content

Summary:
Other widgets remove previous object when setting new content, but popup does
nothing for the part whose name is "default".
content_unset can be used to keep previous content object, so content_set
(especially with NULL) should be able to delete previous content object
for uniformity of the entire widgets.

@fix

Reviewers: jpeg, singh.amitesh, cedric, raster, conr2d

Reviewed By: conr2d

Subscribers: minkyu, herb

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

7 years agoedje: temporary build fix.
Cedric BAIL [Tue, 30 May 2017 21:03:31 +0000 (14:03 -0700)]
edje: temporary build fix.

Currently Edje_Eo.h does use all the internal eo file for part.
This should be fixed soon, but in the mean time we need a usable tree.

7 years agoecore-drm2: Don't free output plane states if not using atomic
Chris Michael [Tue, 30 May 2017 19:57:07 +0000 (15:57 -0400)]
ecore-drm2: Don't free output plane states if not using atomic

If atomic support is not enabled (kernel or env var), then we will not
be filling output plane_states, so no need to free them (if non-atomic).

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
7 years agoecore-drm2: Minor formatting fix
Chris Michael [Tue, 30 May 2017 19:56:51 +0000 (15:56 -0400)]
ecore-drm2: Minor formatting fix

NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
7 years agoeolian: add new unit API
Daniel Kolesa [Tue, 30 May 2017 15:18:31 +0000 (17:18 +0200)]
eolian: add new unit API

The idea of units (as in translation units) is to encapsulate a single
parser pass into a structure to prevent leakage of data from other
passes (therefore catching error cases that couldn't be caught before).

The internals of the unit system are currently not implemented, this
batch merely switches all the relevant APIs to use units as well as
updates various things that use those APIs; implementation will come
afterwards.

@feature

7 years agoeolian: silence a unused warning temporarily
Daniel Kolesa [Tue, 30 May 2017 14:42:26 +0000 (16:42 +0200)]
eolian: silence a unused warning temporarily

7 years agodocgen: stub out units so the generator works again
Daniel Kolesa [Tue, 30 May 2017 14:09:59 +0000 (16:09 +0200)]
docgen: stub out units so the generator works again

7 years agoeolian: use unit in typedecl c_type_get
Daniel Kolesa [Fri, 26 May 2017 13:09:49 +0000 (15:09 +0200)]
eolian: use unit in typedecl c_type_get

7 years agoeolian: pass unit in internal type serialization
Daniel Kolesa [Fri, 26 May 2017 13:04:49 +0000 (15:04 +0200)]
eolian: pass unit in internal type serialization

7 years agoeolian: doc token ref resolver now takes unit
Daniel Kolesa [Fri, 26 May 2017 13:01:00 +0000 (15:01 +0200)]
eolian: doc token ref resolver now takes unit

7 years agoeolian: type_class_get takes unit
Daniel Kolesa [Fri, 26 May 2017 12:52:44 +0000 (14:52 +0200)]
eolian: type_class_get takes unit

7 years agoeolian: expr eval APIs now take units
Daniel Kolesa [Thu, 25 May 2017 14:18:10 +0000 (16:18 +0200)]
eolian: expr eval APIs now take units

7 years agoeolian: more expr system unit updates
Daniel Kolesa [Thu, 25 May 2017 14:10:29 +0000 (16:10 +0200)]
eolian: more expr system unit updates

7 years agoeolian: pass unit around in expr eval
Daniel Kolesa [Thu, 25 May 2017 14:07:48 +0000 (16:07 +0200)]
eolian: pass unit around in expr eval

7 years agoeolian: update lua bindings with new unit apis
Daniel Kolesa [Thu, 25 May 2017 13:20:12 +0000 (15:20 +0200)]
eolian: update lua bindings with new unit apis

7 years agoeolian: use unit in all getters for typedecls
Daniel Kolesa [Thu, 25 May 2017 13:18:57 +0000 (15:18 +0200)]
eolian: use unit in all getters for typedecls

7 years agoeolian: use units in by_file getters for typedecls
Daniel Kolesa [Thu, 25 May 2017 13:17:29 +0000 (15:17 +0200)]
eolian: use units in by_file getters for typedecls

7 years agoeolian: pass unit to enum get by name
Daniel Kolesa [Thu, 25 May 2017 13:15:04 +0000 (15:15 +0200)]
eolian: pass unit to enum get by name

7 years agoeolian: pass unit to struct get by name
Daniel Kolesa [Thu, 25 May 2017 13:11:08 +0000 (15:11 +0200)]
eolian: pass unit to struct get by name

7 years agoeolian: pass unit to alias get by name
Daniel Kolesa [Thu, 25 May 2017 12:56:44 +0000 (14:56 +0200)]
eolian: pass unit to alias get by name

7 years agoeolian: return real nil on parse failure
Daniel Kolesa [Wed, 24 May 2017 15:41:31 +0000 (17:41 +0200)]
eolian: return real nil on parse failure

7 years agoelua: update for unit api usage
Daniel Kolesa [Wed, 24 May 2017 15:40:51 +0000 (17:40 +0200)]
elua: update for unit api usage

7 years agoeolian: update tests according to unit API
Daniel Kolesa [Wed, 24 May 2017 15:35:34 +0000 (17:35 +0200)]
eolian: update tests according to unit API

7 years agoeolian: pass unit to all_classes_get
Daniel Kolesa [Wed, 24 May 2017 15:28:48 +0000 (17:28 +0200)]
eolian: pass unit to all_classes_get

7 years agoeolian: pass unit to class get_by_name/file
Daniel Kolesa [Wed, 24 May 2017 14:36:23 +0000 (16:36 +0200)]
eolian: pass unit to class get_by_name/file

7 years agoeolian: make all variable lookups take unit
Daniel Kolesa [Thu, 18 May 2017 14:34:58 +0000 (16:34 +0200)]
eolian: make all variable lookups take unit

7 years agoeolian: make by-file variable lookups take unit
Daniel Kolesa [Thu, 18 May 2017 14:33:31 +0000 (16:33 +0200)]
eolian: make by-file variable lookups take unit

7 years agoeolian: make by-name variable lookups take unit
Daniel Kolesa [Thu, 18 May 2017 14:31:03 +0000 (16:31 +0200)]
eolian: make by-name variable lookups take unit

7 years agoeolian gen: pass the unit around
Daniel Kolesa [Tue, 16 May 2017 14:47:33 +0000 (16:47 +0200)]
eolian gen: pass the unit around

7 years agoeolian: make eolian_file_parse return unit
Daniel Kolesa [Tue, 16 May 2017 14:13:15 +0000 (16:13 +0200)]
eolian: make eolian_file_parse return unit

7 years agoeolian: units will contain multiple files
Daniel Kolesa [Fri, 12 May 2017 11:54:30 +0000 (13:54 +0200)]
eolian: units will contain multiple files

7 years agoeolian: initial structure for units
Daniel Kolesa [Thu, 11 May 2017 14:35:19 +0000 (16:35 +0200)]
eolian: initial structure for units

Units are Eolian files (eo/eot). Each unit contains information
about its class, dependencies, variables and types. This allows
for saner checking to be done.

7 years agoecore-drm2: Don't fill device atomic state if atomic is disabled
Chris Michael [Tue, 30 May 2017 15:01:22 +0000 (11:01 -0400)]
ecore-drm2: Don't fill device atomic state if atomic is disabled

If atomic support is disabled (via kernel or env var), then we do not
need to fill device atomic state as it will not be used anyway.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
7 years agoecore-drm2: Don't fill output atomic states if not using atomic
Chris Michael [Tue, 30 May 2017 15:00:20 +0000 (11:00 -0400)]
ecore-drm2: Don't fill output atomic states if not using atomic

If atomic support is not enabled (kernel or env var), then we should
not be filling in output atomic state

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
7 years agoecore-drm2: Remove useless return
Chris Michael [Tue, 30 May 2017 14:59:25 +0000 (10:59 -0400)]
ecore-drm2: Remove useless return

This 'return' statement here is just useless as the code can fall
through and the function will return 0 anwyay.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
7 years agoefl_ui_image_zoomable: fix wrong initial value for zoom mode
Taehyub Kim [Tue, 30 May 2017 11:33:16 +0000 (20:33 +0900)]
efl_ui_image_zoomable: fix wrong initial value for zoom mode

Summary:
fix wrong initial value for ELM_PHOTOCAM_ZOOM_MODE_AUTO_FILL mode

@fix

Test Plan:
1. set zoom mode of photocam to ELM_PHOTOCAM_ZOOM_MODE_AUTO_FILL in text_photocam.c example
2. run elementary_test -to photocam
3. check it is working well

Reviewers: jpeg, cedric, raster, Hermet, singh.amitesh

Reviewed By: singh.amitesh

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

7 years agoevas: Fix don't redraw map_sufarce issue
jiin.moon [Tue, 30 May 2017 10:25:37 +0000 (19:25 +0900)]
evas: Fix don't redraw map_sufarce issue

Summary:
map_surface does not redraw in below case.

1) parent and child are smart object and has map.
3) drawing objects.
4) apply new map to child object.

Test Plan: sample code

Reviewers: jpeg, cedric, jypark

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

7 years agoevas: Set modifiers & locks on global key events
Jean-Philippe Andre [Tue, 30 May 2017 10:16:48 +0000 (19:16 +0900)]
evas: Set modifiers & locks on global key events

Fixes T5510

7 years agoelm_code: fix wrong selection delete
YeongJong Lee [Tue, 30 May 2017 07:33:10 +0000 (08:33 +0100)]
elm_code: fix wrong selection delete

Summary:
If multi selection have 0 column and delete the selection, 0 + 1 column also
deleted
This fix that bug.

Also, remove needless code.

Test Plan:
1. select multi line with 0 column.
2. delete the selection

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, jpeg

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

7 years agoelm_toolbar: added to ensure different sizes of items in shrink mode.
Bowon Ryu [Fri, 26 May 2017 04:01:56 +0000 (13:01 +0900)]
elm_toolbar: added to ensure different sizes of items in shrink mode.

Change-Id: I9f8a14e77a8859c9a7543e442f8355d5ef5c0d3d
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
7 years agoelm_widget: optimize memory alignment for focus related fields
Jeeyong Um [Tue, 30 May 2017 06:36:17 +0000 (15:36 +0900)]
elm_widget: optimize memory alignment for focus related fields

7 years agoedje: Add test case for signal_recursive_process
Jean-Philippe Andre [Tue, 30 May 2017 04:34:57 +0000 (13:34 +0900)]
edje: Add test case for signal_recursive_process

7 years agoedje: Implement part proxy for all parts
Jean-Philippe Andre [Tue, 30 May 2017 04:52:22 +0000 (13:52 +0900)]
edje: Implement part proxy for all parts

This is required for part_state_get, which is now based
on the EO API internally. This fixes the test case introduced
in the following commmit.

7 years agoedje: Also implement content_get on external part
Jean-Philippe Andre [Mon, 29 May 2017 14:08:54 +0000 (23:08 +0900)]
edje: Also implement content_get on external part

This implements edje_object_part_external_object_get() using
efl_content_get() on the part object. Note that there are now
two ways to call APIs on the external part:
 - direct call to the efl_part() as if it was the object itself
     (implemented by composition),
 - get a handle with efl_content_get(efl_part()) and manipulate
      it directly (it is the real object).

Do we need this? Do we need the composition trick? Should we have
only one of those solutions implemented?

7 years agoedje: Compose external part with real object
Jean-Philippe Andre [Mon, 29 May 2017 13:47:55 +0000 (22:47 +0900)]
edje: Compose external part with real object

This effectively replaces edje_object_part_external_object_get
and allows all function calls except those from Efl.Object.

Is this good enough? Or do we need access to the real object?

7 years agoedje: Remove external_object_get from EO
Jean-Philippe Andre [Mon, 29 May 2017 13:33:28 +0000 (22:33 +0900)]
edje: Remove external_object_get from EO

This will be replaced by a trick: composition on the part
object itself!

7 years agoedje: Remove part_external_content_get from EO
Jean-Philippe Andre [Mon, 29 May 2017 13:27:21 +0000 (22:27 +0900)]
edje: Remove part_external_content_get from EO

I couldn't find a use of this API. This looks like it returns
an object inside a part inside an external (so, inside an edje).

Kept as legacy only.

7 years agoedje: Move external_param_set to a efl_part API
Jean-Philippe Andre [Mon, 29 May 2017 11:28:08 +0000 (20:28 +0900)]
edje: Move external_param_set to a efl_part API

This adds a new class: Efl.Canvas.Layout.External.
I hate this long name...

This class represents an external part, and for now only
supports param_set/get as well as param_type_get. For now
param_type_get() still returns an Edje_External_Param_Type and
not another more generic type.

TODO: enumerate choices, return object, return content

7 years agoedje: Enhance documentation for play vs animation
Jean-Philippe Andre [Mon, 29 May 2017 09:57:09 +0000 (18:57 +0900)]
edje: Enhance documentation for play vs animation

I had to test in order to get an idea of what those two similar
properties meant. Hopefully this is clear and not wrong.

See example: edje-animations

7 years agoeina: Fix broken link in doc to introduce integer hash algorithms
Jeeyong Um [Tue, 30 May 2017 04:33:19 +0000 (13:33 +0900)]
eina: Fix broken link in doc to introduce integer hash algorithms

7 years agoevas gl: Add an env var to debug GLSL version issues
Jean-Philippe Andre [Tue, 30 May 2017 02:11:41 +0000 (11:11 +0900)]
evas gl: Add an env var to debug GLSL version issues

Set this env var to "300 es" to test GLSL 300 ES as shader
version. This is for brokenshakles.

Example:
  export EVAS_GL_GET_PROGRAM_BINARY=0
  export EVAS_GL_SHADER_GLSL_VERSION="300 es"
  export ELM_ACCEL=gl
  elementary_test

7 years agocheck: Bump version to 0.9.10 and change macro
Jean-Philippe Andre [Tue, 30 May 2017 02:02:05 +0000 (11:02 +0900)]
check: Bump version to 0.9.10 and change macro

Changing ck_assert_ptr_nonnull() to ck_assert_ptr_ne() in order to
require "only" check >= 0.9.10. ck_assert_ptr_nonnull() was
introduced in 0.11.0. ck_assert_ptr_ne() is already used a lot
in the test suite so a recent version of check is required.

7 years agoevas - adjust code in evas init to keep threaded gl patches applying
Carsten Haitzler (Rasterman) [Mon, 29 May 2017 09:01:37 +0000 (18:01 +0900)]
evas - adjust code in evas init to keep threaded gl patches applying

7 years agoedje: Add recursive flag for message_signal_process
Jean-Philippe Andre [Mon, 29 May 2017 06:41:06 +0000 (15:41 +0900)]
edje: Add recursive flag for message_signal_process

Original patch by Jinwoo Shin:

If edje has multiple levels of child group,
edje_object_message_signal_process cannot process message on
child group. To cover that, it needs to add new API which
traverses its hierarchy and process messages.

@feature

Signed-off-by: jinwoo.shin <jw0227.shin@samsung.com>
Differential Revision: https://phab.enlightenment.org/D4914

7 years agoelm: rename elm_photocam to Efl.Ui.Image.Zoomable
Amitesh Singh [Mon, 29 May 2017 03:00:41 +0000 (12:00 +0900)]
elm: rename elm_photocam to Efl.Ui.Image.Zoomable

Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
7 years agoecore: Try to fix build
Jean-Philippe Andre [Mon, 29 May 2017 04:36:51 +0000 (13:36 +0900)]
ecore: Try to fix build

ecore_types.eot does not exist anymore.

7 years agoeo: Make efl_cast() return NULL if invalid cast
Jean-Philippe Andre [Mon, 29 May 2017 02:28:13 +0000 (11:28 +0900)]
eo: Make efl_cast() return NULL if invalid cast

This makes it work like C++ dynamic_cast<> operator, so that
the return value will be NULL if the object is not an instance
of the given class.

In case of efl_super() we don't do it as efl_super is used A LOT
inside EFL itself (all constructors & destructors, for a start)
and efl_isa is in fact a bit expensive. efl_cast isn't really used
and is intended to be something like dynamic_cast.

For @cedric :)

7 years agoedje: Move part_state_get to efl_part
Jean-Philippe Andre [Fri, 26 May 2017 02:53:27 +0000 (11:53 +0900)]
edje: Move part_state_get to efl_part

7 years agoedje: Implement part_geometry_get with Efl.Part
Jean-Philippe Andre [Fri, 26 May 2017 02:33:58 +0000 (11:33 +0900)]
edje: Implement part_geometry_get with Efl.Part

This refactors even more the edje part eo internals. But now
common part APIs can easily be implemented in edje_part.c

The API now looks like:
  efl_gfx_geometry_get(efl_part(edje, "part"), &x, &y, &w, &h)

7 years agoedje: Refactor a bit internal parts for edje objects (EO)
Jean-Philippe Andre [Fri, 26 May 2017 01:52:57 +0000 (10:52 +0900)]
edje: Refactor a bit internal parts for edje objects (EO)

1. Make internal part "real_part_set" an internal function (EO)
2. Use a common class rather than an interface:
  - Cost: 1 extra call to efl_data_scope_get() as we don't have
    the data inside the EO function call implementation.
  - Gain: Ability to implement common code, such as part_geometry_get

7 years agoedje: Remove part_object_get from EO
Jean-Philippe Andre [Fri, 26 May 2017 01:41:52 +0000 (10:41 +0900)]
edje: Remove part_object_get from EO

Ooooh. This one might be controversial, as some apps definitely
use the function. But it is so easily abused. For our EO API
we are trying to not expose any internal object, as this prevents
us from making changes to the internal behaviour and structure.
All the features that this API provided should be limited to
read-only access to the internal object. In order to replace
this, we will have to return an Efl.Part object that implements
all those APIs: geometry_get, visibility_get, etc...

7 years agoedje: Unify load error types for image and edje (EO)
Jean-Philippe Andre [Fri, 26 May 2017 01:29:05 +0000 (10:29 +0900)]
edje: Unify load error types for image and edje (EO)

Most of the values were the same, with edje having just a couple
more error codes.

Not entirely sure the prefix Efl.Image is correct for this type.
Maybe just Efl.Load.Error?

7 years agoedje: Move message structs to legacy header
Jean-Philippe Andre [Fri, 26 May 2017 01:11:20 +0000 (10:11 +0900)]
edje: Move message structs to legacy header

7 years agoedje: Remove Message_Type from EO
Jean-Philippe Andre [Thu, 25 May 2017 10:22:46 +0000 (19:22 +0900)]
edje: Remove Message_Type from EO

See the previous commits, Eina_Value is used directly, no need to
specify the type.

7 years agoecore: Remove ecore_types.eot
Jean-Philippe Andre [Thu, 25 May 2017 10:12:08 +0000 (19:12 +0900)]
ecore: Remove ecore_types.eot

This moves one enum from EO to legacy only (Ecore_Pos_Map).
Ideally the type should be in Ecore_Legacy and no Common, that
can be done later.

Ref T5522

7 years agoelm inwin - fix unised variable warning by removing it
Carsten Haitzler (Rasterman) [Mon, 29 May 2017 01:14:38 +0000 (10:14 +0900)]
elm inwin - fix unised variable warning by removing it

7 years agoUi text: use new text api instead of 'style'
Daniel Hirt [Tue, 23 May 2017 13:04:53 +0000 (16:04 +0300)]
Ui text: use new text api instead of 'style'

7 years agoUi text: use 'wrap' and 'multiline' properties
Daniel Hirt [Tue, 23 May 2017 13:04:04 +0000 (16:04 +0300)]
Ui text: use 'wrap' and 'multiline' properties

7 years agoCanvas text: implement Font, Format and Style interfaces
Daniel Hirt [Mon, 22 May 2017 15:02:43 +0000 (18:02 +0300)]
Canvas text: implement Font, Format and Style interfaces

This replaces the 'style' API with actual properties.

@feature

7 years agoEfl text: add Font, Format and Style interfaces
Daniel Hirt [Mon, 22 May 2017 14:36:41 +0000 (17:36 +0300)]
Efl text: add Font, Format and Style interfaces

The following text interfaces are added:
  - Efl.Text.Font: font settings that decide which font to display in
the text
  - Efl.Text.Format: formatting that affects the looks and layout of
the text
  - Efl.Text.Style: decorations and overlays that shouldn't affect the
font choice or the layout

@feature

7 years agoelm_code: Allow multibyte characters to be entered
Andy Williams [Fri, 26 May 2017 22:07:52 +0000 (23:07 +0100)]
elm_code: Allow multibyte characters to be entered

@fix T5496

7 years agoelput: do not set TABLET_PAD to have POINTER caps
Mike Blumenkrantz [Fri, 26 May 2017 20:34:10 +0000 (16:34 -0400)]
elput: do not set TABLET_PAD to have POINTER caps

7 years agoelput: fallback to regular device name if output_name is not available
Mike Blumenkrantz [Fri, 26 May 2017 20:34:10 +0000 (16:34 -0400)]
elput: fallback to regular device name if output_name is not available

7 years agowayland/drm: create evas_devices and add device pointer to input events
Mike Blumenkrantz [Fri, 26 May 2017 20:34:10 +0000 (16:34 -0400)]
wayland/drm: create evas_devices and add device pointer to input events

this is still semi-broken if a seat has many pointer-ish type devices since
pointer devices in ecore-evas were never correctly implemented to be 1:1 with
seat:cursor relationships

@feature