platform/upstream/efl.git
6 years agoefl_ui_win: hand-ref-count the provider object
Marcel Hollerbach [Wed, 16 May 2018 17:30:33 +0000 (13:30 -0400)]
efl_ui_win: hand-ref-count the provider object

Summary: Depends on D6108

Reviewers: cedric

Reviewed By: cedric

Subscribers: zmike

Tags: #efl

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

6 years agoIntroduce efl_ui_widget_focus_manager
Marcel Hollerbach [Wed, 16 May 2018 17:30:28 +0000 (13:30 -0400)]
Introduce efl_ui_widget_focus_manager

Summary:
The mixin encapsulates the correct
- creation
- composition attaching
- Lifecycle handling

of the focus managers that are assosiated with the object.

This fixes error messages on shutdown, and additionally lifetime issues
where the composite_attached object was deleted before the object was
deleted.

Reviewers: cedric, zmike

Reviewed By: zmike

Subscribers: segfaultxavi, zmike

Tags: #efl

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

6 years agobuild: ensure we delete all new check-results*xml files
Stefan Schmidt [Wed, 16 May 2018 15:03:51 +0000 (17:03 +0200)]
build: ensure we delete all new check-results*xml files

When we split up the tests to run them in parallel we also created a lot
more xml report files. Make sure we delete them when cleaning up.
Nicely spotted by distcheck by complaining about non removed files.

6 years agoci: test the installed parts of efl
Marcel Hollerbach [Tue, 15 May 2018 11:36:44 +0000 (13:36 +0200)]
ci: test the installed parts of efl

Summary:
ci for now was not testing if building against the installation of efl
was working, this builds the lifegame example which ensures that elm is
build correctly.

Reviewers: stefan_schmidt

Subscribers: cedric, zmike

Tags: #efl

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

6 years agoci: travis: move macos build out of allowed failures
Stefan Schmidt [Wed, 16 May 2018 09:20:18 +0000 (11:20 +0200)]
ci: travis: move macos build out of allowed failures

It is working fine again and we want to know if something breaks it.

6 years agoci: travis: switch Ubuntu and Fedora builds to latest release
Stefan Schmidt [Wed, 16 May 2018 09:18:42 +0000 (11:18 +0200)]
ci: travis: switch Ubuntu and Fedora builds to latest release

6 years agoedje: Fix to support translation for textblock part
SubodhKumar [Tue, 15 May 2018 16:44:17 +0000 (12:44 -0400)]
edje: Fix to support translation for textblock part

Summary:
Text translation in edc for textblock is missing.
Added to support it.

@fix

Reviewers: cedric, zmike

Reviewed By: cedric, zmike

Subscribers: shilpasingh, zmike

Tags: #efl

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

6 years agoeolian: more useful namespace checks with no false negatives
Daniel Kolesa [Tue, 15 May 2018 14:42:01 +0000 (16:42 +0200)]
eolian: more useful namespace checks with no false negatives

6 years agoeolian: initial simple namespace conflict check
Daniel Kolesa [Tue, 15 May 2018 14:25:23 +0000 (16:25 +0200)]
eolian: initial simple namespace conflict check

6 years agoEo: introduce convenience macro efl_new()
Xavi Artigas [Tue, 15 May 2018 13:53:24 +0000 (09:53 -0400)]
Eo: introduce convenience macro efl_new()

Summary:
This is just a wrapper around efl_add_ref() with a NULL parent.
It only simplifies a bit object creation when no parent is desired, but it
simplifies a lot the explanation of the refcounting concepts (and tutorials).

Reviewers: cedric, bu5hm4n

Reviewed By: cedric, bu5hm4n

Subscribers: bu5hm4n, zmike

Tags: #efl

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

6 years agoremove potential double free
Andy Williams [Tue, 15 May 2018 13:47:36 +0000 (14:47 +0100)]
remove potential double free

6 years agoAdd missing continue keyword from Go definition
Andy Williams [Tue, 15 May 2018 13:45:55 +0000 (14:45 +0100)]
Add missing continue keyword from Go definition

6 years agoevas: error out when there appeared a object while a new one is focused
Marcel Hollerbach [Tue, 15 May 2018 13:32:20 +0000 (09:32 -0400)]
evas: error out when there appeared a object while a new one is focused

Summary:
this is on the one side error prone and race, as reacting to a focus out
with a new focused object leads to weird cases. On the other side we are
then using eina hash wrong which leads to later weirdness as the element
that is assosiated with &key is broken.

Reviewers: raster, zmike, stefan_schmidt, cedric

Reviewed By: zmike

Subscribers: cedric

Tags: #efl

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

6 years agoci: build with default prefix
Marcel Hollerbach [Tue, 15 May 2018 11:36:47 +0000 (13:36 +0200)]
ci: build with default prefix

Summary:
not building with a default prefix might end up that the installed
.pc files are not fetched automatically, which makes the building of the
example fail.
Depends on D6160

Reviewers: stefan_schmidt

Subscribers: cedric, zmike

Tags: #efl

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

6 years agoelm_slider: fix test suite fail
Hosang Kim [Tue, 15 May 2018 11:13:06 +0000 (20:13 +0900)]
elm_slider: fix test suite fail

Summary: change legacy widget name.

Reviewers: Jaehyun, stefan_schmidt, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, zmike

Tags: #efl

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

6 years agoexamples: Fix slider cxx example based on Efl.Ui.Slider
Jaehyun Cho [Tue, 15 May 2018 10:59:45 +0000 (19:59 +0900)]
examples: Fix slider cxx example based on Efl.Ui.Slider

Unlike Elm_Slider, Efl.Ui.Slider does not support text_set,
format_cb_set, and format_string_set.
To support Efl.Ui.Slider, slider cxx example is modified.

6 years agoefl_ui_slider: refactor slider widget.
Hosang Kim [Tue, 15 May 2018 05:16:00 +0000 (14:16 +0900)]
efl_ui_slider: refactor slider widget.

Test Plan: elementary_test -> Efl.Ui.Slider, Efl.Ui.Slider_Interval, slider

Reviewers: woohyun, cedric, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: zmike, cedric

Tags: #efl

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

6 years agoelm: use build dir data when EFL_RUN_IN_TREE is set
Mike Blumenkrantz [Mon, 14 May 2018 15:26:09 +0000 (17:26 +0200)]
elm: use build dir data when EFL_RUN_IN_TREE is set

Summary:
this prevents tests from loading user configs and providing inconsistent
results or accidentally modifying a user's config

fix T6863
Depends on D6013

Reviewers: cedric, stefan_schmidt

Reviewed By: stefan_schmidt

Subscribers: stefan_schmidt

Tags: #efl

Maniphest Tasks: T6863

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

6 years agobuild: move config/ to data/elementary/config
Mike Blumenkrantz [Mon, 14 May 2018 15:26:06 +0000 (17:26 +0200)]
build: move config/ to data/elementary/config

Summary:
this is part of the datadir distribution, it should not be in a different
directory than the rest of the datadir distribution

the gnu coding standards (https://www.gnu.org/prep/standards/html_node/Directory-Variables.html)
define 'datadir' as:

The directory for installing idiosyncratic read-only architecture-independent
data files for this program. This is usually the same place as ‘datarootdir’,
but we use the two separate variables so that you can move these program-specific
files without altering the location for Info files, man pages, etc.

This should normally be /usr/local/share, but write it as $(datarootdir).
(If you are using Autoconf, write it as ‘@datadir@’.)

The definition of ‘datadir’ is the same for all packages, so you should install your
data in a subdirectory thereof. Most packages install their data under $(datadir)/package-name/.

while this text has no clear requirement or suggestion for a corresponding
repository layout, projects typically employ a certain consistency in their
repository layout both for ease of maintenance and ease of learning for new
contributors.

this project has both a data/ directory, which contains the datadir distribution,
as well as the config/ directory, which also contains the datadir distribution.
this complicates matters both for active maintainers/developers who must
remember that the repository and build tree layouts have this exception,
and for new contributors who will initially be confused by this exception

other well-organized open source projects, such as wayland, have chosen to not
use a data/ directory. these projects have the datadir distribution in the base
directory of the repositor, which is a fine practice as it maintains consistency
for the project since all the files for the datadir distribution are in the same
directory.

by applying this patch, the project will move towards a more easily readable and
learnable layout. current and future developers will no longer need to wonder why
this directory is outside of the data/ directory, and anyone attempting to reference
these files from the source/build trees will be able to do so more easily

Reviewers: cedric, stefan_schmidt, raster

Reviewed By: stefan_schmidt, raster

Tags: #efl

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

6 years agoedje_cc: do not keep the filedescriptor
Marcel Hollerbach [Mon, 14 May 2018 13:42:10 +0000 (15:42 +0200)]
edje_cc: do not keep the filedescriptor

we have a limited number of filedescriptors available, a theme can
consist out of a number of groups with scripts, keeping the fd for later
use is going above the maximum number of open files, thus use the path
of the file, not the fd to access the file.

fix  T6922

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

6 years agoelm_multibuttonentry: Fix to install eo header files
Jaehyun Cho [Mon, 14 May 2018 13:22:55 +0000 (22:22 +0900)]
elm_multibuttonentry: Fix to install eo header files

Move elm_multibuttonentry and its sub eo files to the correct location
in Makefile_Elementary.am to install eo header files.

@fix

6 years agoedje: return proper value from the function.
SubhransuSekhar Mohanty [Mon, 14 May 2018 04:26:54 +0000 (13:26 +0900)]
edje: return proper value from the function.

@fix

6 years agoelm_code: add EOAPI to refresh theme after a user layout change.
Alastair Poole [Sun, 13 May 2018 16:14:01 +0000 (17:14 +0100)]
elm_code: add EOAPI to refresh theme after a user layout change.

Hopefully this retains the object hierarchy. Gives us a method
to update the widget theme after a layout change.

6 years agoeolian: second batch of unused import removals
Daniel Kolesa [Sun, 13 May 2018 16:12:26 +0000 (18:12 +0200)]
eolian: second batch of unused import removals

This fixes all remaining occurences introduced by false negatives
in 6bcd70f01d527cb05c16bfde0bf85ce79bef465e. The rest was already
fixed in 6be3809c04fad847e353edecf5b6eef3c8766df4.

6 years agoeolian: fix false negatives in unused dependency static checker
Daniel Kolesa [Sun, 13 May 2018 16:10:37 +0000 (18:10 +0200)]
eolian: fix false negatives in unused dependency static checker

It is not necessary to check entire classes/typedecls/variables
when referenced, as that also checks their contents and adds
false negatives. It is enough to simply add their own unit
as a 'used' dependency and let the system do the work, besides
for actual declarations in the checked file.

6 years agoeolian: first batch of unused import removals
Daniel Kolesa [Sun, 13 May 2018 15:28:47 +0000 (17:28 +0200)]
eolian: first batch of unused import removals

Initial results of our static analysis showed a bunch of unused
imports or imports used only for documentation references. In the
first case, remove entirely, in the second case, change to 'parse'
in order to keep references working.

The static analysis is not perfect and yields false negatives for
certain cases, so there will be a second batch later.

6 years agoeolian: cycle checks for all toplevel decls in static analyzer
Daniel Kolesa [Sun, 13 May 2018 14:57:42 +0000 (16:57 +0200)]
eolian: cycle checks for all toplevel decls in static analyzer

This is necessary because e.g. typedecls can introduce cycles into
the system by self-referencing in struct field expressions.

6 years agoeolian: always validate entire staging area
Daniel Kolesa [Sun, 13 May 2018 14:53:40 +0000 (16:53 +0200)]
eolian: always validate entire staging area

This is necessary even when parsing a single file because there
may be parsed results directly in the staging area introduced by
doc references, those wouldn't get correctly validated and would
be left in an inconsistent and unusable state.

6 years agoelua: add check API to eolian bindings
Daniel Kolesa [Sun, 13 May 2018 13:59:01 +0000 (15:59 +0200)]
elua: add check API to eolian bindings

6 years agoeolian: check does no changes, so take a const state
Daniel Kolesa [Sun, 13 May 2018 13:57:51 +0000 (15:57 +0200)]
eolian: check does no changes, so take a const state

6 years agoelm_code_widget: on theme change update the background widget.
Alastair Poole [Sun, 13 May 2018 12:43:08 +0000 (13:43 +0100)]
elm_code_widget: on theme change update the background widget.

This ensures consistency between the colours of the widget and
its parent. When theme changes the whole visible region changes
and matches so that it isn't bogus and ugly.

6 years agoefl_mono: Support type aliases.
Lauro Moura [Fri, 11 May 2018 01:00:07 +0000 (22:00 -0300)]
efl_mono: Support type aliases.

Summary:
Due to the absence of typedef from C#, we generate thin structs with
implicit operators to allow reference the data from their typedef'd name
from C#.

The other alternatives would be always converting to the lowest base on
the alias stack (losing the meaningfulness of the typedef name) or using
the 'using' directive. The latter has the restriction that it makes an
alias visible only in the file they are declared.

Reviewers: felipealmeida, cedric, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: zmike

Tags: #efl

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

6 years agoeolian: introduce initial out-of-validation static checking
Daniel Kolesa [Fri, 11 May 2018 12:01:27 +0000 (14:01 +0200)]
eolian: introduce initial out-of-validation static checking

For now this checks for validity of explicitly imported
dependencies in eo/eot files. It will warn if the dependency
is unused.

6 years agoelm test - progress - add vertical wheel test...
Carsten Haitzler (Rasterman) [Fri, 11 May 2018 08:26:13 +0000 (17:26 +0900)]
elm test - progress - add vertical wheel test...

yes. in theory it can exist, so add a test for it. because for flat
theme i actually have an idea where vrtical vs horizontal do look
different and the theme already procvided both via an alias and code
would use them if needed... so... why not?

6 years agoefl: update arcconfig to be able to work with git-phab
Marcel Hollerbach [Fri, 11 May 2018 07:42:30 +0000 (09:42 +0200)]
efl: update arcconfig to be able to work with git-phab

Summary: Depends on D6109

Reviewers: cedric, zmike

Reviewed By: zmike

Subscribers: zmike

Tags: #efl

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

6 years agoedje_cc: Fix coverity issue of accessing invalid memory.
SubhransuSekhar Mohanty [Fri, 11 May 2018 04:49:23 +0000 (13:49 +0900)]
edje_cc: Fix coverity issue of accessing invalid memory.

6 years agoedje_cc: resolve possible dereferencing freed pointer
WooHyun Jung [Fri, 11 May 2018 01:44:55 +0000 (10:44 +0900)]
edje_cc: resolve possible dereferencing freed pointer

6 years agoelm_toolbar: only use the more_item if mode is correct
Marcel Hollerbach [Thu, 10 May 2018 11:25:43 +0000 (13:25 +0200)]
elm_toolbar: only use the more_item if mode is correct

the more item is only usefull for SHRINK_MENU and SHRINK_EXPAND,
otherwise the item should not be there.

6 years agoevas: introduce a log domain to monitor which object gets focus
Marcel Hollerbach [Thu, 10 May 2018 09:55:43 +0000 (11:55 +0200)]
evas: introduce a log domain to monitor which object gets focus

6 years agoefl_ui_focus_manager_root_focus: restructure state eval
Marcel Hollerbach [Wed, 9 May 2018 19:48:12 +0000 (21:48 +0200)]
efl_ui_focus_manager_root_focus: restructure state eval

registering and unregsitering caused a few issues.
- Relations are recalculated even if they should not be
- We unfocus a element just to refocus it again
- We loose any iinformation about custom chains that have been set meanwhile

This fixes it

6 years agoefl_ui_focus_manager_root_focus: support a custom canvas object
Marcel Hollerbach [Wed, 9 May 2018 19:10:47 +0000 (21:10 +0200)]
efl_ui_focus_manager_root_focus:  support a custom canvas object

6 years agoecore - dont rely on commons merge for func ptr
Carsten Haitzler (Rasterman) [Sun, 6 May 2018 06:58:52 +0000 (15:58 +0900)]
ecore - dont rely on commons merge for func ptr

use a proper extern delcaration to do this not a extern func ptr.
fixes compile errors with lto on.

6 years agoeolian: add optional warnings about events missing a type
Daniel Kolesa [Wed, 9 May 2018 13:44:36 +0000 (15:44 +0200)]
eolian: add optional warnings about events missing a type

Set the EOLIAN_EVENT_NO_TYPE_WARN environment variable to enable
those warnings during Eolian usage. They will be considered a part
of the validation then.

Use the void type for events to suppress the warning.

6 years agoefl_ui_widget: use efl_data_scope_safe_get instead of macro
Yeongjong Lee [Wed, 9 May 2018 01:19:38 +0000 (10:19 +0900)]
efl_ui_widget: use efl_data_scope_safe_get instead of macro

Summary: This macro isn't actually as safe as this safe data_get.

Reviewers: woohyun, Jaehyun_Cho

Subscribers: cedric, zmike

Tags: #efl

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

6 years agoecore_wl2: complain loudly when move or resize doesn't provide a seat
Derek Foreman [Tue, 8 May 2018 18:27:00 +0000 (13:27 -0500)]
ecore_wl2: complain loudly when move or resize doesn't provide a seat

Summary:
We now have the ability to provide the seat information properly, so
fire off an ERR if a caller doesn't.
Depends on D6131

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoee_wayland: retain seat names when creating a new canvas
Derek Foreman [Tue, 8 May 2018 18:26:57 +0000 (13:26 -0500)]
ee_wayland: retain seat names when creating a new canvas

Summary:
We were creating seats with silly arbitray names like seat-11 when
creating a new canvas.
Depends on D6130

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoecore_wl2: warn on unused result from ecore_wl2_input_seat_id_get
Derek Foreman [Tue, 8 May 2018 18:26:53 +0000 (13:26 -0500)]
ecore_wl2: warn on unused result from ecore_wl2_input_seat_id_get

Summary:
Make it harder to misuse this function in the future.
Depends on D6129

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoefl_selection: return wayland seat id if present
Derek Foreman [Tue, 8 May 2018 18:26:50 +0000 (13:26 -0500)]
efl_selection: return wayland seat id if present

Summary:
We looked it up, we probably wanted to return it?
Depends on D6128

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoecore_wl2: Fix window drag mouse eventing
Derek Foreman [Tue, 8 May 2018 18:26:46 +0000 (13:26 -0500)]
ecore_wl2: Fix window drag mouse eventing

Summary:
When a CSD button interaction under wayland leads to a compositor action
like move or resize, we essentially "give back" that button press to the
compositor, and it never sends us a mouse up for it.

We need to internally fire a mouse up event to fix up state so the client
doesn't think the mouse is still down.  Until now we've been doing this
by setting a flag when we start a move/resize and checking it at next
pointer enter for the window.

This leads to unsolvable races and wacky bookkeeping, and runs afoul of
the fact that we're not actually guaranteed a pointer enter immediately
after a move completes.  There is absolutely no way at all on wayland to
know if a move or resize operation has completed.

So, let's just fire the mouse up immediately on start of interaction,
which is raceless.

This fixes a years old bug where dragging a window might leave a stuck
mouse up, and allow hilighting text without drag after the window drag
completes.  (elementary-test -to "text editor" with multiple windows open
exhibits this bug)
Depends on D6127

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoefl_selection_manager: Stop calling ecore_wl2_input_ungrab
Derek Foreman [Tue, 8 May 2018 18:26:39 +0000 (13:26 -0500)]
efl_selection_manager: Stop calling ecore_wl2_input_ungrab

Summary:
This "ungrab" thing appears to just send a mouse up event in some
situations.

This already happens at *start* of drag, so at best calling it again will
do nothing, and at worst it'll break input.
Depends on D6125

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoefl_ui_win: Pass seat info for wayland move/resize
Derek Foreman [Tue, 8 May 2018 18:26:35 +0000 (13:26 -0500)]
efl_ui_win: Pass seat info for wayland move/resize

Summary:
In wayland we need to know which seat initiated the CSD compositor move
request to properly handle input.
Depends on D6124

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoefl_ui_win: Directly call ecore_wl2 move and resize functions
Derek Foreman [Tue, 8 May 2018 18:26:30 +0000 (13:26 -0500)]
efl_ui_win: Directly call ecore_wl2 move and resize functions

Summary:
These ecore_evas_wayland things seem like they shouldn't exist.  The
ecore_wl2 api is better and still in beta so it can be fixed when it's
shown to be broken/wrong as the ecore_evas_wayland ones are. :(

The move API is stuck with x, y co-ordinates that can never make sense,
and neither API is capable of passing seat info.
Depends on D6123

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoee_wayland_shm: Remove resize flag
Derek Foreman [Tue, 8 May 2018 18:26:18 +0000 (13:26 -0500)]
ee_wayland_shm: Remove resize flag

Summary:
This hasn't been useful in a very long time.
Depends on D6120

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoelm_win: Remove move stop callback
Derek Foreman [Tue, 8 May 2018 18:25:54 +0000 (13:25 -0500)]
elm_win: Remove move stop callback

Summary:
This is only fired to trigger a cursor set under wayland, but that cursor
set should be done unconditionally on mouse in.

However, mouse in was being discarded because mouse out was being deferred
when the window was "grabbed" for moving.

If instead we just let the mouse out occur as it should, the cursor
is properly updated on mouse in.
Depends on D6118

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoedje: Send seat name to all seat emitted events
Derek Foreman [Tue, 8 May 2018 18:25:46 +0000 (13:25 -0500)]
edje: Send seat name to all seat emitted events

Summary:
We now send the name of the seat (if available) to legacy and seat events
so the callbacks can query them via the new seat data api.

This isn't quite what I wanted, but it's enough to fix the ecore_wl2
input problems for now.  When multi-seat is a usable thing we can rework
these bits.
Depends on D6117

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoedje: Add beta api for seat_data_get
Derek Foreman [Tue, 8 May 2018 17:26:36 +0000 (12:26 -0500)]
edje: Add beta api for seat_data_get

Summary:
Currently this is only to help wayland CSD function correctly, so the
opaque pointer is very poorly defined.
Depends on D6116

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoedje: Emit extra/seat data from programmed signal emits
Derek Foreman [Tue, 8 May 2018 17:26:20 +0000 (12:26 -0500)]
edje: Emit extra/seat data from programmed signal emits

Summary:
Now if we generate an event in response to an event with seat data we
automatically carry the seat data with the emitted event.

This allows something like elm,action,move,start to have seat data
attached.

NB: Since extra and seat data share the same structs, extra data such as
the data from edje_entry is similarly propagated as a side effect.
Depends on D6115

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoedje: Pass extra signal data to program_run
Derek Foreman [Tue, 8 May 2018 17:26:13 +0000 (12:26 -0500)]
edje: Pass extra signal data to program_run

Summary: Depends on D6114

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoedje: Add edje_emit_full_data
Derek Foreman [Tue, 8 May 2018 17:26:08 +0000 (12:26 -0500)]
edje: Add edje_emit_full_data

Summary:
This is an even fuller emit_full, that takes a pre-made signal data
struct.  The original edje_emit_full is now implemented as a call to it.
Depends on D6113

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoedje: Add seat data to extra data struct
Derek Foreman [Tue, 8 May 2018 17:26:02 +0000 (12:26 -0500)]
edje: Add seat data to extra data struct

Summary:
Since the extra data struct is already nicely refcounted, it's easy to
add the seat data to it instead of making a new struct with almost
identical code.
Depends on D6112

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoedje: Create signal extra data before calling _edje_emit_send
Derek Foreman [Tue, 8 May 2018 17:25:56 +0000 (12:25 -0500)]
edje: Create signal extra data before calling _edje_emit_send

Summary:
Steps towards recursively sending these.
Depends on D6111

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoedje: Factor out signal extra data setup code
Derek Foreman [Tue, 8 May 2018 17:25:51 +0000 (12:25 -0500)]
edje: Factor out signal extra data setup code

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

6 years agoelm_toolbar: flush out the items once one is hidden
Marcel Hollerbach [Sun, 6 May 2018 17:02:35 +0000 (19:02 +0200)]
elm_toolbar: flush out the items once one is hidden

ref T6806

6 years agoefl_ui_focus_manager: unset redirect instead of wrefing it
Marcel Hollerbach [Sun, 6 May 2018 16:23:46 +0000 (18:23 +0200)]
efl_ui_focus_manager: unset redirect instead of wrefing it

so focus is restored correctly

6 years agoefl_ui_focus_manager_calc: do not restore focus when redirect is set
Marcel Hollerbach [Sun, 6 May 2018 16:14:11 +0000 (18:14 +0200)]
efl_ui_focus_manager_calc: do not restore focus when redirect is set

When there is a redirect there is no need to adjust the focus property
based on a unregister, so just continue and cleanup the history. When
the redirect is unset the focus is restored.

fix T6908

6 years agoeio: delay tests until we have started listing some files.
Cedric BAIL [Mon, 7 May 2018 16:55:55 +0000 (09:55 -0700)]
eio: delay tests until we have started listing some files.

6 years agoeina: actually it make more sense to do the check for EINA_VALUE_EMPTY inside eina_va...
Cedric BAIL [Mon, 7 May 2018 16:46:42 +0000 (09:46 -0700)]
eina: actually it make more sense to do the check for EINA_VALUE_EMPTY inside eina_value_type_get.

6 years agoeina: allow EINA_VALUE_EMPTY for Eina_Future as Eina_Value.
Cedric BAIL [Mon, 7 May 2018 16:34:04 +0000 (09:34 -0700)]
eina: allow EINA_VALUE_EMPTY for Eina_Future as Eina_Value.

6 years agoevas textblock: remove NULL checking after dereferencing
Youngbok Shin [Sun, 6 May 2018 07:49:42 +0000 (10:49 +0300)]
evas textblock: remove NULL checking after dereferencing

Summary:
c->paragraphs couldn't be NULL if it is created by
_layout_paragraph_new() well. So, NULL checking should be
moved to after _layout_paragraph_new().

Test Plan: N/A

Reviewers: jpeg, tasn, raster, herdsman, cedric

Subscribers: zmike, stefan_schmidt, jpeg

Tags: #efl

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

6 years agoEvas textblock: fix wrong hyphenation issues with non UTF8 encoded dictionary
Youngbok Shin [Sun, 6 May 2018 07:24:58 +0000 (10:24 +0300)]
Evas textblock: fix wrong hyphenation issues with non UTF8 encoded dictionary

Summary:
hnj_hyphen_hyphenate2() needs properly encoded text based on the given
dictionary. Each dictionary contains its encoding information at the head
of file. So, text will be converted to proper encoding before calling
the function. It fixes T3221.
@fix

Test Plan: Included in Evas test suite.

Reviewers: z-wony, tasn, woohyun, herdsman, Blackmole, minudf

Subscribers: zmike, stefan_schmidt, raster, cedric, jpeg

Tags: #efl

Maniphest Tasks: T3221

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

6 years agoelementary: unreak non tree mode for fileselector.
Cedric BAIL [Sun, 6 May 2018 04:27:31 +0000 (21:27 -0700)]
elementary: unreak non tree mode for fileselector.

The model can outlive the item which resulted in keeping a dead reference in the model.

6 years agoeio: on error/cancel properly destroy weak reference.
Cedric BAIL [Sun, 6 May 2018 04:15:55 +0000 (21:15 -0700)]
eio: on error/cancel properly destroy weak reference.

6 years agoeio: cancel idler on Eio.Model destruction properly.
Cedric BAIL [Sun, 6 May 2018 04:15:24 +0000 (21:15 -0700)]
eio: cancel idler on Eio.Model destruction properly.

6 years agoeina: Eina_Future as Eina_Value can also be cancelled.
Cedric BAIL [Sun, 6 May 2018 04:04:20 +0000 (21:04 -0700)]
eina: Eina_Future as Eina_Value can also be cancelled.

6 years agoevas_main: fix structually dead code
Myoungwoon Roy, Kim [Sat, 5 May 2018 03:02:34 +0000 (12:02 +0900)]
evas_main: fix structually dead code

Summary: Fix structually dead code in evas_main owing to wrong #ifdef EVAS_CSERVE2 definition

Test Plan: Execute test suite

Reviewers: raster, Hermet, cedric, jpeg, stefan_schmidt, Jaehyun_Cho

Reviewed By: raster

Subscribers: zmike

Tags: #efl

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

6 years agoeio: do not call efl_model_child_del at the end of build_st as that might result...
Cedric BAIL [Fri, 4 May 2018 23:21:41 +0000 (16:21 -0700)]
eio: do not call efl_model_child_del at the end of build_st as that might result in the destruction of files.

6 years agotests: optimize eio tests
Mike Blumenkrantz [Fri, 4 May 2018 10:31:18 +0000 (12:31 +0200)]
tests: optimize eio tests

Summary:
by removing the sleep() calls and reducing timeout time, tests remain
as accurate while taking less than 5% of the required time to run

fix T6914

Reviewers: stefan_schmidt, cedric

Reviewed By: cedric

Subscribers: cedric

Tags: #efl

Maniphest Tasks: T6914

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

6 years agoelm_object : Support to translatable_part_text of legacy widget
JunsuChoi [Fri, 4 May 2018 11:34:29 +0000 (20:34 +0900)]
elm_object : Support to translatable_part_text of legacy widget

Summary:
this commit supports aliasing of legacy widget
about translatable_part_text_set/get.

Test Plan:
elm_object_domain_translatable_part_text_set(btn, "default", NULL, "sample_text");
const char* text = elm_object_translatable_part_text_get(btn, "default");

Reviewers: cedric, herb, id213sin, woohyun

Tags: #efl

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

6 years agoelementary: Fix eina_safety return val
Chris Michael [Fri, 4 May 2018 10:55:59 +0000 (06:55 -0400)]
elementary: Fix eina_safety return val

The function that this is used in returns Eina_Bool, but the safety
check was returning NULL

6 years agoci: add new build to test release profile and distcheck
Stefan Schmidt [Fri, 27 Apr 2018 08:55:19 +0000 (10:55 +0200)]
ci: add new build to test release profile and distcheck

To avoid surprises when starting the release process make sure we have a
build which actually runs the release profile and tests distcheck.

6 years agoci: enable check-build in default build target
Stefan Schmidt [Wed, 25 Apr 2018 16:21:29 +0000 (18:21 +0200)]
ci: enable check-build in default build target

Just building so far as test execution will need more environment
preparations.

6 years agoci: disable cxx bindings in default build
Stefan Schmidt [Thu, 3 May 2018 14:36:08 +0000 (16:36 +0200)]
ci: disable cxx bindings in default build

This is causing way to much problems when building examples or check.
I need to have them reliable before I can have them as default build
option.

6 years agoefl_mono: Update tests and examples after rename
Lauro Moura [Thu, 3 May 2018 04:02:11 +0000 (01:02 -0300)]
efl_mono: Update tests and examples after rename

Summary:
Separated from the generator and libs for easier review
Depends on D6050

Reviewers: felipealmeida, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric

Tags: #efl

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

6 years agoefl_mono: Change generated classes naming scheme
Lauro Moura [Wed, 2 May 2018 22:49:37 +0000 (19:49 -0300)]
efl_mono: Change generated classes naming scheme

Summary:
Now the generated classes use an approach more familiar to C#
developers:

Interfaces: efl.Object -> efl.IObject

Concrete (implementation) classes: efl.ObjectConcrete -> efl.Object.

During this change, some methods that could clash with the
implementation class name (CS0542) had the prefix "Do" added (like in
efl.Duplicate.Duplicate() and efl.Pack.Pack()).
Depends on D6049

Reviewers: felipealmeida, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric

Tags: #efl

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

6 years agoefl_mono: More uniformization of the handling of names
Lauro Moura [Fri, 27 Apr 2018 21:08:25 +0000 (18:08 -0300)]
efl_mono: More uniformization of the handling of names

Summary:
Uses a common helper to open and close namespaces, to get the managed
and unmanaged name of things, the interface, concrete and inherit class
names, etc.

eolian_cxx: Add namespace information to func_def, as it'll avoid
eolian-cxx clients dealing with the eolian C api directly when trying
to access a function pointer namespace.
Depends on D6048

Reviewers: felipealmeida, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric

Tags: #efl

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

6 years agoelm: Use ck_assert_str_eq for better error logging
Lauro Moura [Thu, 19 Apr 2018 19:57:14 +0000 (16:57 -0300)]
elm: Use ck_assert_str_eq for better error logging

Summary: It was introduced in libcheck 0.9.6, before our minimum 0.9.10.

Reviewers: felipealmeida, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric

Tags: #efl

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

6 years agoefl_ui_focus_manager_calc: resolve shadow warning
Mike Blumenkrantz [Thu, 3 May 2018 20:13:30 +0000 (16:13 -0400)]
efl_ui_focus_manager_calc: resolve shadow warning

Summary:
lib/elementary/efl_ui_focus_manager_calc.c: In function ‘node_item_free’:
lib/elementary/efl_ui_focus_manager_calc.c:208:20: warning: declaration of ‘n’ shadows a previous local [-Wshadow]
         Eina_List *n;
                    ^
lib/elementary/efl_ui_focus_manager_calc.c:197:10: note: shadowed declaration is here
    Node *n;
          ^

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

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

6 years agoeolian: switch Eina.Future instances to future<T>
Daniel Kolesa [Thu, 3 May 2018 15:13:28 +0000 (17:13 +0200)]
eolian: switch Eina.Future instances to future<T>

6 years agoeolian: allow void and non-ownable types in future
Daniel Kolesa [Thu, 3 May 2018 15:10:31 +0000 (17:10 +0200)]
eolian: allow void and non-ownable types in future

6 years agoeolian: add builtin type for Eina_Future
Daniel Kolesa [Wed, 2 May 2018 11:40:18 +0000 (13:40 +0200)]
eolian: add builtin type for Eina_Future

6 years agoeolian gen: remove unused promise variables
Daniel Kolesa [Wed, 2 May 2018 11:16:39 +0000 (13:16 +0200)]
eolian gen: remove unused promise variables

6 years agoeolian: add source file for the future static checker
Daniel Kolesa [Wed, 2 May 2018 10:55:03 +0000 (12:55 +0200)]
eolian: add source file for the future static checker

6 years agoeolian: add API that will allow for additional static analysis
Daniel Kolesa [Mon, 30 Apr 2018 12:47:15 +0000 (14:47 +0200)]
eolian: add API that will allow for additional static analysis

Currently this API does nothing.

6 years agotests: parallelize evas mesh tests
Mike Blumenkrantz [Thu, 3 May 2018 12:55:36 +0000 (14:55 +0200)]
tests: parallelize evas mesh tests

Summary:
ref T6857
Depends on D5912

Reviewers: stefan_schmidt

Subscribers: cedric

Maniphest Tasks: T6857

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

6 years agobuild: include newly created file test_tab_pager.edc in dist
Stefan Schmidt [Thu, 3 May 2018 12:13:10 +0000 (14:13 +0200)]
build: include newly created file test_tab_pager.edc in dist

Created in 67045ea28ad09701641b8be7cc96577df62b630d this file was never
included in EXTRA_DIST and thus never made it to the tarball. The result
was a failing distcheck.

6 years agobuild: include newly created blacklist.hpp in dist
Stefan Schmidt [Thu, 3 May 2018 12:00:55 +0000 (14:00 +0200)]
build: include newly created blacklist.hpp in dist

Added in 473d5b79c51f19f7949eea8030edc8180826e055, the build systemw as
never made aware of this file. make sure we do, so it can land in dist.

6 years agobuild: include newly created efl_ui_focus_graph.h file in dist
Stefan Schmidt [Thu, 3 May 2018 10:57:06 +0000 (12:57 +0200)]
build: include newly created efl_ui_focus_graph.h file in dist

This header file was newly created in 258b96be358e7313366ed9194360746ddcd3d6ea
Autotools need to made aware of it so it will actually land in the dist
or a distcheck run will break with:
../../../src/lib/elementary/efl_ui_focus_graph.c:9:10: fatal error: efl_ui_focus_graph.h: No such file or directory

6 years agobuild: fix indent in elm makefile
Stefan Schmidt [Thu, 3 May 2018 10:44:36 +0000 (12:44 +0200)]
build: fix indent in elm makefile

6 years agoefl_ui_image: add NULL check in elm_image_memfile_set() function
Jaeun Choi [Thu, 3 May 2018 11:36:16 +0000 (20:36 +0900)]
efl_ui_image: add NULL check in elm_image_memfile_set() function

return EINA_FALSE if the data source is NULL elm_image_memfile_set()

@fix

6 years agoefl ui fmt - make strbuf simpler and dont use printf to avoid warnings
Carsten Haitzler (Rasterman) [Mon, 30 Apr 2018 15:32:48 +0000 (00:32 +0900)]
efl ui fmt - make strbuf simpler and dont use printf to avoid warnings

if someone turns on a lot of warning flags this is a warning (fals as
the string is checked already for having a static format - no fmt
flags, thus printf is valid).