platform/upstream/efl.git
8 years agoevas-wayland-shm: Get page flips out of the render thread
Chris Michael [Wed, 26 Oct 2016 15:56:04 +0000 (11:56 -0400)]
evas-wayland-shm: Get page flips out of the render thread

Now that we have redraws_clear exposed through software generic, we can
use that to do the final buffer swap from the main thread instead of doing
it in outbuf_flush which runs from the render thread.

This becomes more important later when other call sites in the main thread
will perform buffer flips.

Based on 95a00b8e496839c4976259692fb7c308f7a850dc by Derek Foreman

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoevas-wayland-shm: Improve next buffer selection algorithm
Chris Michael [Wed, 26 Oct 2016 15:53:49 +0000 (11:53 -0400)]
evas-wayland-shm: Improve next buffer selection algorithm

When triple buffering it's possible that we'll only need two buffers at
a time for long durations.  When we finally call upon a third buffer it
hasn't been used recently enough to do a partial redraw.
By picking the oldest available buffer when multiple buffers are free we
can increase the likelihood of doing partial redraws.

Based on 79409757c6493738c21015708a1ba5178942ad94 by Derek Foreman.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoevas-wayland-shm: Default to triple buffering
Chris Michael [Wed, 26 Oct 2016 15:33:07 +0000 (11:33 -0400)]
evas-wayland-shm: Default to triple buffering

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoevas-wayland-shm: Fix max buffer age
Chris Michael [Wed, 26 Oct 2016 15:19:28 +0000 (11:19 -0400)]
evas-wayland-shm: Fix max buffer age

Highest possible buffer age should actually be 4, not the number of
available buffers.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoevas-wayland-shm: Fix formatting
Chris Michael [Wed, 26 Oct 2016 15:19:06 +0000 (11:19 -0400)]
evas-wayland-shm: Fix formatting

NB: No functional changes, just formatting

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Remove erroneous cursor structure from Ecore_Wl2_Pointer
Chris Michael [Wed, 26 Oct 2016 15:00:33 +0000 (11:00 -0400)]
ecore-wl2: Remove erroneous cursor structure from Ecore_Wl2_Pointer

These fields in Ecore_Wl2_Pointer were never used, so remove them.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Ensure we remove the proper pointer frame callback
Chris Michael [Wed, 26 Oct 2016 14:54:58 +0000 (10:54 -0400)]
ecore-wl2: Ensure we remove the proper pointer frame callback

During the pointer frame callback, if we had a 'callback' but did not
have an input->cursor.frame_cb then we would have ended up deleting
the callback here anyway. Let's add a comparison of the callback to
the pointer frame callback to ensure we are removing the proper
callback.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Remove usage of pointer update timer
Chris Michael [Wed, 26 Oct 2016 14:53:56 +0000 (10:53 -0400)]
ecore-wl2: Remove usage of pointer update timer

As we are no longer using X pointer images, we no longer have the need
for an Ecore_Timer to update any animated X images so remove.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Remove cursor field from window structure
Chris Michael [Wed, 26 Oct 2016 14:48:05 +0000 (10:48 -0400)]
ecore-wl2: Remove cursor field from window structure

Remove the const char *cursor field from the window structure as this
is useless. It was never used for any real functional purpose.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoefl_io_copier_example: allow udp as input/source.
Gustavo Sverzut Barbieri [Wed, 26 Oct 2016 14:46:09 +0000 (12:46 -0200)]
efl_io_copier_example: allow udp as input/source.

now that we have a 'bind', let's use the given address as bind and
dial to `0.0.0.0` or `::`. This allows the dialer to receive data at
the given address and make the example useful.

8 years agoefl_net_dialer_udp_example: add missing print of groups.
Gustavo Sverzut Barbieri [Wed, 26 Oct 2016 14:24:17 +0000 (12:24 -0200)]
efl_net_dialer_udp_example: add missing print of groups.

8 years agoedje: remove extraneous new line in debug log
Jean Guyomarc'h [Wed, 26 Oct 2016 13:53:25 +0000 (15:53 +0200)]
edje: remove extraneous new line in debug log

There was an extraneous '\n' at the end of the debug log invocation.
Since a new line is already appended by eina_log, this was redundant and
made the console output ugly. It is prettier now.

8 years agoelementary: Delete mouse pointer when window is closed
Chris Michael [Wed, 26 Oct 2016 13:33:24 +0000 (09:33 -0400)]
elementary: Delete mouse pointer when window is closed

If we are running Wayland clients which create their own mouse
pointers, then we need to remove the mouse pointer ecore_evas when the
window is deleted else we get crashes because the mouse pointer is
still trying to render. This fixes the issue of internal Enlightenment
windows causing crashes when closed.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoelm: Fix compilation of other apps (elm_access.eo.h)
Jean-Philippe Andre [Wed, 26 Oct 2016 10:01:52 +0000 (19:01 +0900)]
elm: Fix compilation of other apps (elm_access.eo.h)

Thanks to ApBBB on #e for the report!

8 years agoelm_test: Add minor hack to run test when Enter is pressed
Jean-Philippe Andre [Wed, 26 Oct 2016 05:01:43 +0000 (14:01 +0900)]
elm_test: Add minor hack to run test when Enter is pressed

If there's only one filtered out button in the list after
searching by name, Enter should activate the entry and run the
test case.

8 years agoexamples: Remove now broken cxx elm examples
Jean-Philippe Andre [Tue, 18 Oct 2016 10:34:25 +0000 (19:34 +0900)]
examples: Remove now broken cxx elm examples

Bubble, thumb and separator cxx examples rely on APIs we don't
want to expose in EO, so not available in C++ either. Those
are legacy only.

8 years agoelm: Remove some eo files from installation
Jean-Philippe Andre [Tue, 18 Oct 2016 10:34:12 +0000 (19:34 +0900)]
elm: Remove some eo files from installation

These are some of the EO files that shouldn't be part of the public
EO API:
- elm_access (old)
- actionslider
- bubble
- diskselector
- flipselector (a fancy spinner)
- hoversel (use combobox instead)
- icon (use image instead)
- inwin
- naviframe (unreplaced for now)
- photo (use image)
- prefs
- segment control
- separator
- slideshow
- thumb (use image)

Note: This breaks the use of the elm_widget_xxx.h headers. Those
      were internal headers anyway. Exposed because of a lack of
      a proper inheritance API.

8 years agoevas: Fix legacy events output vs. canvas coords
Jean-Philippe Andre [Mon, 17 Oct 2016 02:34:05 +0000 (11:34 +0900)]
evas: Fix legacy events output vs. canvas coords

In case of a mapped object (eg. when applying a map to a window
in wayland compositor), the canvas and output coordinates are
not meant to be the same.

In EO land, applications should instead use the common interface
Efl.Input.Interface.pointer_xy.get (on the canvas).

@fix

8 years agoeo: do not track NULL future.
Cedric Bail [Wed, 26 Oct 2016 01:51:12 +0000 (18:51 -0700)]
eo: do not track NULL future.

8 years agoecore: allow multiple nested recursion of the same promise/future to happen at the...
Cedric Bail [Wed, 26 Oct 2016 01:50:35 +0000 (18:50 -0700)]
ecore: allow multiple nested recursion of the same promise/future to happen at the same time.

8 years agoeio: fetch mime type asynchronously.
Cedric Bail [Tue, 25 Oct 2016 23:54:29 +0000 (16:54 -0700)]
eio: fetch mime type asynchronously.

8 years agoecore: properly handle promise failure when each member has not been fulfilled yet.
Cedric Bail [Tue, 25 Oct 2016 22:21:51 +0000 (15:21 -0700)]
ecore: properly handle promise failure when each member has not been fulfilled yet.

8 years agoelementary: fixup warning in new colorselector code.
Cedric Bail [Tue, 25 Oct 2016 22:03:26 +0000 (15:03 -0700)]
elementary: fixup warning in new colorselector code.

8 years agoelementary: fix build without wayland.
Cedric Bail [Tue, 25 Oct 2016 22:02:46 +0000 (15:02 -0700)]
elementary: fix build without wayland.

8 years agoelementary: gengrid - check the edge correctly
Minkyu Kang [Tue, 25 Oct 2016 21:12:42 +0000 (14:12 -0700)]
elementary: gengrid - check the edge correctly

Summary:
The routine of checking edge of left side, divide position by row.
Since the result of fisrt item of last line is 1, that item was not checked as edge.
This patch is for fixing it.

Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
Test Plan:
elementary_test -to gengrid2
append items (about 6)
horizontal mode on and item loop enable
check item loop is working properly

Reviewers: cedric, jpeg, Hermet, SanghyeonLee

Subscribers: jehun.lim, SanghyeonLee, cedric, jpeg

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
8 years agoelementary: enable setting custom access info to hoversel items
Shuhrat Dehkanov [Tue, 25 Oct 2016 20:33:36 +0000 (13:33 -0700)]
elementary: enable setting custom access info to hoversel items

Summary: This will enable apps to get item access object using elm_object_item_access_object_get().

Reviewers: jpeg, Hermet

Subscribers: kimcinoo, singh.amitesh, cedric, minkyu

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
8 years agoelementary: colorselector - apply new focus ui for palette and components items
Taehyub Kim [Tue, 25 Oct 2016 20:32:50 +0000 (13:32 -0700)]
elementary: colorselector - apply new focus ui for palette and components items

Summary:
colorselector focus ui is not moving for palette and components items.
now it is changed to focus each item of palette and components.

Test Plan:
1. build efl elementary with this patch
2. remove /home/{user}/.elementary
3. launch colorselector with elementary_test -to colorselector
4. move direction key
5. see the new focus ui

Reviewers: jpeg, raster, Hermet, woohyun, bu5hm4n, cedric

Reviewed By: cedric

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
8 years agoevas: vg/gradient - add missing legacy api for gradient object creation.
Subhransu Mohanty [Tue, 25 Oct 2016 20:31:45 +0000 (13:31 -0700)]
evas: vg/gradient - add missing legacy api for gradient object creation.

Reviewers: jpeg, Hermet, artem.popov, cedric

Reviewed By: artem.popov, cedric

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
8 years agouse more standard IPV6_JOIN_GROUP and IPV6_LEAVE_GROUP.
Gustavo Sverzut Barbieri [Tue, 25 Oct 2016 21:32:07 +0000 (19:32 -0200)]
use more standard IPV6_JOIN_GROUP and IPV6_LEAVE_GROUP.

The IPV6_ADD_MEMBERSHIP and IPV6_DROP_MEMBERSHIP are deprecated alias,
use the correct defines so it compiles everywhere.

Fixes T4764

Thanks netstar!

8 years agoecore_wl2: Add API to disable session recovery
Derek Foreman [Tue, 25 Oct 2016 19:07:09 +0000 (14:07 -0500)]
ecore_wl2: Add API to disable session recovery

Enlightenment needs a way to avoid using session recovery functionality
when connecting to itself for internal windows.

8 years agoelementary: Implement support for EFL Wayland mouse pointers
Chris Michael [Tue, 25 Oct 2016 18:19:57 +0000 (14:19 -0400)]
elementary: Implement support for EFL Wayland mouse pointers

This patch implements support for EFL Wayland applications to be able
to use EFL mouse pointers instead of ugly X cursors inside a Wayland
compositor. This does Not use Softcursor so the mouse pointer becomes
it's own surface which is then sent to wl_pointer.

NB: Some small hiccups when using wayland_shm such as dropped frames.

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Remove usage of libwayland-cursor
Chris Michael [Tue, 25 Oct 2016 18:18:58 +0000 (14:18 -0400)]
ecore-wl2: Remove usage of libwayland-cursor

This commit removes usage of libwayland-cursor inside Ecore_Wl2
library. This is done so that EFL Wayland applications can use EFL
mouse pointers and not look ugly :)

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Don't call cursor_update_stop function twice.
Chris Michael [Tue, 25 Oct 2016 17:10:21 +0000 (13:10 -0400)]
ecore-wl2: Don't call cursor_update_stop function twice.

When setting a cursor by name, the _ecore_wl2_input_cursor_set
function already makes a call to stop updating the cursor, so no need
to run that twice.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoefl: Remove dependency on wayland-cursor library
Chris Michael [Tue, 25 Oct 2016 15:08:16 +0000 (11:08 -0400)]
efl: Remove dependency on wayland-cursor library

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agojs: Fix calling setAlignedInternalPointerField without a aligned value
Felipe Magno de Almeida [Tue, 25 Oct 2016 17:42:49 +0000 (15:42 -0200)]
js: Fix calling setAlignedInternalPointerField without a aligned value

8 years agojs: Fix Makefile location and linking of efl.node and tests
Felipe Magno de Almeida [Tue, 25 Oct 2016 17:42:04 +0000 (15:42 -0200)]
js: Fix Makefile location and linking of efl.node and tests

8 years agoeolian: remove type silencing stuff entirely
Daniel Kolesa [Tue, 25 Oct 2016 16:02:23 +0000 (18:02 +0200)]
eolian: remove type silencing stuff entirely

this was useful during transition, but not anymore

8 years agotheme: slightly expand e/gadget/clock/digital/advanced sizer width
Mike Blumenkrantz [Tue, 25 Oct 2016 15:37:57 +0000 (11:37 -0400)]
theme: slightly expand e/gadget/clock/digital/advanced sizer width

8 years agoEdje_Edit: use correct description array accessing
Vitalii Vorobiov [Tue, 25 Oct 2016 15:22:50 +0000 (18:22 +0300)]
Edje_Edit: use correct description array accessing

its a loop with j, but not with i
kinda a little typo

@fix

8 years agoRevert "elementary: Provide EFL mouse pointers for Wayland Client applications"
Chris Michael [Tue, 25 Oct 2016 14:50:43 +0000 (10:50 -0400)]
Revert "elementary: Provide EFL mouse pointers for Wayland Client applications"

This reverts commit 0a46096337dcbde7b18e093518e3b0846a425053.

Reverting these changes as we need to handle mouse pointer differently.

8 years agoRevert "ecore-wl2: Remove all references to wl_cursor usage"
Chris Michael [Tue, 25 Oct 2016 14:47:15 +0000 (10:47 -0400)]
Revert "ecore-wl2: Remove all references to wl_cursor usage"

This reverts commit 173fda5c11fc083a0b274e404f0005a52b4bf128.

Reverting this as we need to handle mouse pointers a different way.

8 years agoRevert "elementary: Don't try to set pointer edj if there is no pointer"
Chris Michael [Tue, 25 Oct 2016 14:46:42 +0000 (10:46 -0400)]
Revert "elementary: Don't try to set pointer edj if there is no pointer"

This reverts commit 3686a8aa8982517acd3a761e06969cc259b00f18.

Reverting this as we need to handle mouse pointers a different way.

8 years agoRevert "elementary: Don't always show pointer object"
Chris Michael [Tue, 25 Oct 2016 14:46:15 +0000 (10:46 -0400)]
Revert "elementary: Don't always show pointer object"

This reverts commit f56dc8d0c36d45d318f430fb04eae8b2dccd9f14.

Reverting these as we need to handle mouse pointers a different way.

8 years agojs: Fix compilation of new data types in JS binding
Felipe Magno de Almeida [Tue, 25 Oct 2016 14:21:34 +0000 (12:21 -0200)]
js: Fix compilation of new data types in JS binding

8 years agoeo: Fix compilation of macro in C++ because of goto
Felipe Magno de Almeida [Tue, 25 Oct 2016 14:21:12 +0000 (12:21 -0200)]
eo: Fix compilation of macro in C++ because of goto

Moved variable cross-definition to the top, so no more
cross-definition between goto would happen.

8 years agoefl_js: Export Canvas Object and Group
Lauro Moura [Fri, 26 Aug 2016 20:18:50 +0000 (17:18 -0300)]
efl_js: Export Canvas Object and Group

8 years agoecore_js: Add missing HandleScope to addTimeline
Lauro Moura [Fri, 26 Aug 2016 20:18:13 +0000 (17:18 -0300)]
ecore_js: Add missing HandleScope to addTimeline

8 years agoecore: Add _SAFE when iterating the animators.
Lauro Moura [Fri, 12 Aug 2016 22:53:07 +0000 (19:53 -0300)]
ecore: Add _SAFE when iterating the animators.

In some cases (like JS libuv events) an animator callback can trigger the
deletion of an animator, changing the list being iterated.

8 years agoefl_js: Enable Ethumb support for Elm.
Lauro Moura [Thu, 4 Aug 2016 19:28:30 +0000 (16:28 -0300)]
efl_js: Enable Ethumb support for Elm.

8 years agoefl_js: Update after eo/efl api changes
Lauro Moura [Mon, 15 Aug 2016 15:31:05 +0000 (12:31 -0300)]
efl_js: Update after eo/efl api changes

8 years agoefl_js: Update JS examples
Lauro Moura [Tue, 26 Jul 2016 21:21:02 +0000 (18:21 -0300)]
efl_js: Update JS examples

Changing imports, functions, etc.

Also export "cast" function for all eolian_js generated classes.

8 years agoeo_js: Instead of abort, throw an Exception
Lauro Moura [Mon, 11 Jul 2016 19:38:40 +0000 (16:38 -0300)]
eo_js: Instead of abort, throw an Exception

* When the constructor fails
* On cast error.

8 years agoeolian-js: Fix dependency on Ecore.eo.hh
Felipe Magno de Almeida [Wed, 6 Jul 2016 17:08:27 +0000 (14:08 -0300)]
eolian-js: Fix dependency on Ecore.eo.hh

8 years agoeolian-cxx: Normalize variabla name for generated C++ files in automake
Felipe Magno de Almeida [Wed, 6 Jul 2016 17:08:12 +0000 (14:08 -0300)]
eolian-cxx: Normalize variabla name for generated C++ files in automake

8 years agoeolian_js efl_js: Fix tests.
Lauro Moura [Tue, 5 Jul 2016 22:14:49 +0000 (19:14 -0300)]
eolian_js efl_js: Fix tests.

* Probably the idle refactor changed the order the callbacks are called.
* Removed trailing * from class types

8 years agoeina_js: Fix log color persistence.
Lauro Moura [Tue, 5 Jul 2016 22:10:03 +0000 (19:10 -0300)]
eina_js: Fix log color persistence.

The c_ptr() passed to eina_log_register was being lost when saving the string
into the map.

8 years agoefl_js: Update registration functions
Lauro Moura [Tue, 5 Jul 2016 22:04:01 +0000 (19:04 -0300)]
efl_js: Update registration functions

After the Elm -> Efl.Ui and other changes.

Also add extern C guards around private header (elm_widget).

8 years agoeolian_js: Several fixes
Lauro Moura [Wed, 29 Jun 2016 18:06:01 +0000 (15:06 -0300)]
eolian_js: Several fixes

* Update after scope api change.
* Add missing type mapping for new eolian types
* Avoid generating protected properties

  We select the get/set as one (through TYPE_PROPERTY) in the first check for
  visibility. After 375179b47 it is possible to have different scopes for getters
  and setters.

* Add pointer to complex tp and classes

  e984e5a removed the explicit pointer from classes and complex types in the eo
  files, handling them implicitly.

* Avoid generating functions with void*

  Until further notice, they will not be automatically generated.

* Avoid generating ref stuff from eo_base.eo

* Warn when there are methods with the same name.

8 years agoeo_js: Update event callback after return removal.
Lauro Moura [Wed, 29 Jun 2016 20:23:31 +0000 (17:23 -0300)]
eo_js: Update event callback after return removal.

8 years agodocs: gfx interfaces: fix some typos in docs
Stefan Schmidt [Tue, 25 Oct 2016 13:26:05 +0000 (15:26 +0200)]
docs: gfx interfaces: fix some typos in docs

8 years agodocs: interfaces: document missing structs in gfx interfaces
Stefan Schmidt [Tue, 25 Oct 2016 13:23:50 +0000 (15:23 +0200)]
docs: interfaces: document missing structs in gfx interfaces

8 years agodocs: document all missing enums
Stefan Schmidt [Tue, 25 Oct 2016 13:09:59 +0000 (15:09 +0200)]
docs: document all missing enums

With this commit we reach 100% enum doc coverage. The fields in the enums are
still at 91%, but there is progress on that front as well.

8 years agodocs: efl interfaces: document enums accross interfaces eo files
Stefan Schmidt [Tue, 25 Oct 2016 13:08:33 +0000 (15:08 +0200)]
docs: efl interfaces: document enums accross interfaces eo files

8 years agodocs: ecore_con: document missing HTTP enums
Stefan Schmidt [Tue, 25 Oct 2016 11:03:46 +0000 (13:03 +0200)]
docs: ecore_con: document missing HTTP enums

8 years agodocs: elm_icon: fully document elm_icon eo file
Stefan Schmidt [Mon, 24 Oct 2016 18:51:04 +0000 (20:51 +0200)]
docs: elm_icon: fully document elm_icon eo file

8 years agodocs: tree wide enum sentinel value documentation
Stefan Schmidt [Mon, 24 Oct 2016 18:33:26 +0000 (20:33 +0200)]
docs: tree wide enum sentinel value documentation

8 years agodocs: harmonise use of enum sentinel description in eo files
Stefan Schmidt [Mon, 24 Oct 2016 17:57:13 +0000 (19:57 +0200)]
docs: harmonise use of enum sentinel description in eo files

8 years agoelm: remove no longer needed Elm.App.View_State
Stefan Schmidt [Mon, 24 Oct 2016 17:52:00 +0000 (19:52 +0200)]
elm: remove no longer needed Elm.App.View_State

Left over from the elm app server/client removal. Hidden in an eo type file
this was overlooked.

8 years agoeolian gen: add -s for silencing type errors in validation
Daniel Kolesa [Tue, 25 Oct 2016 14:01:54 +0000 (16:01 +0200)]
eolian gen: add -s for silencing type errors in validation

8 years agoeolian gen: always validate database
Daniel Kolesa [Tue, 25 Oct 2016 13:59:41 +0000 (15:59 +0200)]
eolian gen: always validate database

8 years agoecore con: fix invalid doc reference
Daniel Kolesa [Tue, 25 Oct 2016 13:54:46 +0000 (15:54 +0200)]
ecore con: fix invalid doc reference

Fixes T4761 (also spank @barbieri)

8 years agoefl_net_*_udp: make UDP usable, including multicast.
Gustavo Sverzut Barbieri [Tue, 25 Oct 2016 12:03:34 +0000 (10:03 -0200)]
efl_net_*_udp: make UDP usable, including multicast.

This was a huge work, but now UDP is usable as seen in the examples.

Instead of relying on 'connect()', just do 'sendto()' and 'recvfrom()'
as they are universal. Multicast address can only be connected in
IPv4, IPv6 wasn't working and I'm not sure the IPv4 is portable to
other platforms.

Dialer will auto-join multicast groups is the dialed address is
one. Multicast properties such as time to live (hops) and loopback can
be configured. When joining multicast groups, the local
address/interface can be configured by 'IP@IFACE' format, with
'@IFACE' being optional.

Dialers will now auto-bind, so it can receive data as dialers are
expected to be bi-directional. One can manually specify the binding
address if there is such need.

Since datagrams must be read in their full size, otherwise the
remaining bits are dropped, expose next_datagram_size_query() in both
Efl.Net.Socket.Udp and Efl.Net.Server.Udp.Client.

To finalize UDP for real we need to introduce an 'Efl_Net_Ip_Address'
structure to serve as both IPv4 and IPv6 and expose 'sendto()' and
'recvfrom()'. These will come later as this commit is already too big.

8 years agoefl_net_server_udp_client: add missing part of name.
Gustavo Sverzut Barbieri [Mon, 24 Oct 2016 21:47:15 +0000 (19:47 -0200)]
efl_net_server_udp_client: add missing part of name.

8 years agoemotion - add vpath support for file_set on emotion objects
Carsten Haitzler (Rasterman) [Tue, 25 Oct 2016 09:34:25 +0000 (18:34 +0900)]
emotion - add vpath support for file_set on emotion objects

this completes my todo list for vpath path support at least for now
(evas images, edje objects and emotion objects). now vpath's work for
these too.

8 years agoeina: fix shutdown
Marcel Hollerbach [Mon, 24 Oct 2016 19:13:39 +0000 (21:13 +0200)]
eina: fix shutdown

in eina_file we are using eina_hash, eina_hash is using eina_rbtree, so
we should ensure that rbtree is shutted down AFTER file is shutted down.

fix T4753

8 years agoevas: Fix framespace object clipping detection
Chris Michael [Mon, 24 Oct 2016 17:05:44 +0000 (13:05 -0400)]
evas: Fix framespace object clipping detection

This patch fixes an issue where border icons were missing when running
EFL Wayland client applications. This also fixes the issue where
softcursor mouse pointers would not draw over bottom window border.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoelementary: Don't always show pointer object
Chris Michael [Mon, 24 Oct 2016 13:47:47 +0000 (09:47 -0400)]
elementary: Don't always show pointer object

If we are using softcursor mode during intercept show, then we should
check that the pointer is actually in the canvas before showing it
else we end up with mouse pointers drawn on the canvas even when the
mouse itself is nowhere near a window.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoelementary: Don't try to set pointer edj if there is no pointer
Chris Michael [Mon, 24 Oct 2016 13:33:53 +0000 (09:33 -0400)]
elementary: Don't try to set pointer edj if there is no pointer

If we don't have the sd->pointer.obj here, then there is no need to
try and set the edje theme for it.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agodocs: fileselector: improve docs for enum, events and keyword usage
Stefan Schmidt [Mon, 24 Oct 2016 15:41:52 +0000 (17:41 +0200)]
docs: fileselector: improve docs for enum, events and keyword usage

8 years agodocs: ecore: make consistent use of $true and $false keywords in docs
Stefan Schmidt [Mon, 24 Oct 2016 15:21:48 +0000 (17:21 +0200)]
docs: ecore: make consistent use of $true and $false keywords in docs

8 years agodocs: edje: consistent use of $true and $false keywords
Stefan Schmidt [Mon, 24 Oct 2016 15:15:31 +0000 (17:15 +0200)]
docs: edje: consistent use of $true and $false keywords

8 years agodocs: emotion: add missing docs for efl canvas video events
Stefan Schmidt [Mon, 24 Oct 2016 15:02:23 +0000 (17:02 +0200)]
docs: emotion: add missing docs for efl canvas video events

Also make use of $true keyword while being there.

8 years agodocs: eo: make consistent use of $true in docs
Stefan Schmidt [Mon, 24 Oct 2016 14:52:48 +0000 (16:52 +0200)]
docs: eo: make consistent use of $true in docs

Make use of the $true keyword instead of going with Ein_True or just true. We
need to change this tree-wide in the docs.

8 years agodocs: atspi: add docs for events in accessible
Stefan Schmidt [Mon, 24 Oct 2016 11:28:52 +0000 (13:28 +0200)]
docs: atspi: add docs for events in accessible

8 years agodocs: atspi: add docs for atspi accessible enums
Stefan Schmidt [Mon, 24 Oct 2016 11:18:26 +0000 (13:18 +0200)]
docs: atspi: add docs for atspi accessible enums

8 years agoefl_net_server_fd: fix inverted comparison for valid socket handle.
Gustavo Sverzut Barbieri [Sun, 23 Oct 2016 00:41:01 +0000 (22:41 -0200)]
efl_net_server_fd: fix inverted comparison for valid socket handle.

8 years agoefl_net_server_fd: close socket on destructor.
Gustavo Sverzut Barbieri [Sun, 23 Oct 2016 00:26:02 +0000 (22:26 -0200)]
efl_net_server_fd: close socket on destructor.

8 years agoefl_net_*: fix some more Win32-unfriendly code.
Gustavo Sverzut Barbieri [Sun, 23 Oct 2016 00:14:45 +0000 (22:14 -0200)]
efl_net_*: fix some more Win32-unfriendly code.

8 years agoefl_net_socket_fd: use closesocket() and INVALID_SOCKET.
Gustavo Sverzut Barbieri [Sun, 23 Oct 2016 00:13:40 +0000 (22:13 -0200)]
efl_net_socket_fd: use closesocket() and INVALID_SOCKET.

Instead of efl_io_closer_fd that does close() and compares with < 0,
use windows-friendly code.

8 years agoefl_net_*: improve WIN32.
Gustavo Sverzut Barbieri [Sat, 22 Oct 2016 23:49:01 +0000 (21:49 -0200)]
efl_net_*: improve WIN32.

Thanks to vtorri for poiting out about close() is not the correct
socket function, we should use closesocket() instead.

Also defined SOCKET to int on Linux so we can use the same 'type' and
avoid lots of ifdef in our code. On Windows it's unsigned, thus would
cause some warnings about incorrect signed comparison.

8 years agoAI_V4MAPPED may not be defined in some platforms.
Gustavo Sverzut Barbieri [Sat, 22 Oct 2016 23:19:56 +0000 (21:19 -0200)]
AI_V4MAPPED may not be defined in some platforms.

define to 0 in such cases, so the flag won't be affected.

Fixes T4754

8 years agoefl_net_server_fd: one more WIN32 friendly comparison.
Gustavo Sverzut Barbieri [Sat, 22 Oct 2016 23:17:48 +0000 (21:17 -0200)]
efl_net_server_fd: one more WIN32 friendly comparison.

with the fallback define, it's valid on POSIX and Windows.

8 years agoelementary: check if its a wayland window before using ecore_wl2 api
Marcel Hollerbach [Sat, 22 Oct 2016 18:22:18 +0000 (20:22 +0200)]
elementary: check if its a wayland window before using ecore_wl2 api

otherwise there is a bunch of error messages from a app running on
x.

8 years agoevas_callbacks: restore error message behaviour from MAGIC_CHECK
Marcel Hollerbach [Sat, 22 Oct 2016 17:26:47 +0000 (19:26 +0200)]
evas_callbacks: restore error message behaviour from MAGIC_CHECK

before changing MAGIC_CHECK to eo_isa passing NULL to a function would
result in nothing, now it gives a error message. This restores the old
behaviour.

8 years agoefl_net: play better with WIN32.
Gustavo Sverzut Barbieri [Sat, 22 Oct 2016 15:15:16 +0000 (13:15 -0200)]
efl_net: play better with WIN32.

Defined INVALID_SOCKET=-1 and SOCKET_ERROR=-1 on non-Windows platforms
so we can keep the same construct 'function() == error' and it should
work on POSIX and windows.

I cannot test these on Windows, but the situation should be improved
with this commit.

8 years agoefl_io_copier: on close, emit "done" if still pending.
Gustavo Sverzut Barbieri [Sat, 22 Oct 2016 14:01:17 +0000 (12:01 -0200)]
efl_io_copier: on close, emit "done" if still pending.

done event must be emitted before "closed" in order to notify it won't
do anything else.

8 years agoefl_* examples: improve usability of boolean options.
Gustavo Sverzut Barbieri [Sat, 22 Oct 2016 13:55:45 +0000 (11:55 -0200)]
efl_* examples: improve usability of boolean options.

Instead of using 'bool', which requires a parameter to be useful, make
them toggle of the default value.

Adapt names to make more sense in that context.

8 years agoefl_net_*_udp: expose SO_DONTROUTE.
Gustavo Sverzut Barbieri [Sat, 22 Oct 2016 13:46:19 +0000 (11:46 -0200)]
efl_net_*_udp: expose SO_DONTROUTE.

It's common to have protocols that are restricted to local network
only, thus allow exposing SO_DONTROUTE to avoid mistakes.

8 years agoefl_io_copier: add inactivity_timeout.
Gustavo Sverzut Barbieri [Sat, 22 Oct 2016 12:52:22 +0000 (10:52 -0200)]
efl_io_copier: add inactivity_timeout.

This is handful to error the copier with ETIMEDOUT if there are no
reads or writes in the given amount of time.

Since copiers are usable to download data or handle network clients,
it's easy to set a timeout and disconnect, let's say UDP clients that
are gone.

8 years agogetaddrinfo(): when providing hints, make sure we use addrconfig/v4mapped.
Gustavo Sverzut Barbieri [Sat, 22 Oct 2016 11:41:26 +0000 (09:41 -0200)]
getaddrinfo(): when providing hints, make sure we use addrconfig/v4mapped.

if no hints were specified, getaddrinfo() will assume ai_flags as
AI_ADDRCONFIG | AI_V4MAPPED, which only reports useful results based
on what system supports. For instance AI_ADDRCONFIG will only return
IPv4 if IPv4 address exists, likewise IPv6 will only be returned if
IPv6 address is configured, avoiding these to be tried and error for
most local networks where such address could not be used. AI_V4MAPPED
will map IPv4 address over IPv6 if no IPv4 was found.