Commit Graph

17491 Commits

Author SHA1 Message Date
Jee-Yong Um f1ab136abc doxygen: remove reference warnings.
Reviewers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-12-20 16:39:30 -08:00
Marcel Hollerbach 4e9656feac eina: add api for assessing the relative position of two rectangles
Summary:
the api returns if a rectangle is positioned above/below/right or left
of a other rectangle.

Code which does simular things are part of verne and e, i think its a good idea to provide api for that.

Test Plan: Just run the test suite

Reviewers: raster, jpeg, cedric

Reviewed By: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-12-20 16:39:30 -08:00
Cedric BAIL a5804c970d edje: fix float comparison warning in vector loading logic.
Hum, there is no use of our fixed point infrastructure for vector.
2016-12-20 16:39:30 -08:00
Cedric BAIL 4c465772f9 edje: fix float comparison warning in edje programs. 2016-12-20 16:39:30 -08:00
Cedric BAIL 48fb9856c0 edje: fix float comparison warning in edje text logic. 2016-12-20 16:39:30 -08:00
Cedric BAIL 14d7ec478c edje: fix float comparison warning in edje edit logic. 2016-12-20 16:39:30 -08:00
Cedric BAIL 7abe432992 edje: fix float comparison warning in edje callback code. 2016-12-20 16:39:30 -08:00
Cedric BAIL b3ce8381e2 edje: fix float comparison warning in edje calc. 2016-12-20 16:39:30 -08:00
Cedric BAIL dc022d602d edje: fix float comparison warning in Box Layout logic. 2016-12-20 16:39:30 -08:00
Cedric BAIL 9730eb1f47 edje: fix float comparison warning in edje_cc. 2016-12-20 16:39:30 -08:00
Cedric BAIL 4cbca7c357 edje: fix float comparison warning in edje_external_inspector. 2016-12-20 16:39:30 -08:00
Cedric BAIL f89cc21ef0 edje: fix float comparison warning in edje SVG loader. 2016-12-20 16:39:30 -08:00
Cedric BAIL 6e40fd890b edje: fix float comparison warning in edje_pick. 2016-12-20 16:39:30 -08:00
Cedric BAIL a27561b5f5 edje: add infrastructure to test value. 2016-12-20 16:39:30 -08:00
Cedric BAIL 4fd1aa8958 elementary: fix float comparison warning in player. 2016-12-20 16:39:30 -08:00
Cedric BAIL 71df83120c elementary: fix float comparison warning in popup. 2016-12-20 16:39:30 -08:00
Cedric BAIL bec8a19080 elementary: fix float comparison warning in multi button entry. 2016-12-20 16:39:30 -08:00
Cedric BAIL a65cb62853 elementary: fix float comparison warning in action slider. 2016-12-20 16:39:30 -08:00
Cedric BAIL a07a267145 elementary: fix float comparison warning in c&p. 2016-12-20 16:39:30 -08:00
Cedric BAIL df0894f2bf elementary: fix float comparison warning in button. 2016-12-20 16:39:30 -08:00
Cedric BAIL 8952d505c2 elementary: fix float comparison warning for panes. 2016-12-20 16:39:30 -08:00
Cedric BAIL 5e5da80c62 elementary: fix float comparison warning in map. 2016-12-20 16:39:30 -08:00
Cedric BAIL 691ba877d7 elementary: fix float warning in scroller. 2016-12-20 16:39:30 -08:00
Cedric BAIL 33e43c5608 elementary: fix float comparison warning in thumb. 2016-12-20 16:39:30 -08:00
Cedric BAIL 0f6383b73e elementary: fix float warning in progressbar. 2016-12-20 16:39:30 -08:00
Cedric BAIL c994976cdb elementary: fix float warning in Efl.Ui.Image. 2016-12-20 16:39:30 -08:00
Cedric BAIL 144c7deaae elementary: fix float comparison warning in photocam. 2016-12-20 16:39:30 -08:00
Cedric BAIL 30ff98f8fd elementary: fix float warning in Efl.Ui.Box_Layout. 2016-12-20 16:39:30 -08:00
Cedric BAIL a5bc6f7b00 elementary: fix float comparison warning in flip page test. 2016-12-20 16:39:30 -08:00
Cedric BAIL ee79b90066 elementary: fix float comparison warning in bg test. 2016-12-20 16:39:30 -08:00
Cedric BAIL 233cb77c1e evas_cserve2: fix float comparison warning. 2016-12-20 16:39:30 -08:00
Cedric BAIL fb418debc3 ethumb: fix float comparison warning. 2016-12-20 16:39:30 -08:00
Cedric BAIL 4a79542480 ecore_input_evas: fix float comparison warning. 2016-12-20 16:39:29 -08:00
Cedric BAIL 0d1c0773a0 triangulator: fix float comparison warning. 2016-12-20 16:39:29 -08:00
Cedric BAIL ada014ec09 evas: fix proper operator ordering with parentheses. 2016-12-20 16:39:29 -08:00
Cedric BAIL e9ebad1519 efl: in read only case this might get uninitialized. 2016-12-20 16:39:29 -08:00
Guilherme Iscaro 87e458838d Ecore Evas: Add a new cursor example.
This example sets the cursor image of each available mouse and
report its position every one second.
2016-12-20 18:34:39 -02:00
Guilherme Iscaro 044219226c Ecore Evas: Add support for multiple mouse positions.
Since it's possible to have more than one mouse, Ecore Evas
must take into account the position of all mouses and update them
correctly.
2016-12-20 18:34:39 -02:00
Guilherme Iscaro e5acc5604a Ecore Evas: Add support to set cursor icon per mouse device.
Since Ecore Evas now supports multiple mouses new APIs were added
in order to be able to set the cursor image to any device.
2016-12-20 18:34:39 -02:00
Guilherme Iscaro 2e527851cf Ecore Evas VNC: Add support for ecore_evas_pointer_device_xy_get().
This commit adds the support to fetch the mouse position of a VNC
client.
2016-12-20 18:34:39 -02:00
Guilherme Iscaro 133b4fa65b Ecore Wl2: Add ecore_wl2_window_pointer_device_xy_get() API.
This commit adds a Wayland specific function to fetch a mouse
position.
2016-12-20 18:34:39 -02:00
Guilherme Iscaro 64986bccac Ecore Evas: Add API to set/get the pointer position per device.
Since Ecore Evas now support multiple mouse devices new APIs were
added in order to fetch the mouse position.
2016-12-20 18:34:39 -02:00
Felipe Magno de Almeida e64327bacc eolian-cxx: Add std::move to member variable initialization
CID 1361231
2016-12-20 16:06:58 -03:00
Felipe Magno de Almeida b92acd5caf eolian-cxx: Make class_definition lambda's catch parameter by const-reference
CID 1361230
CID 1361234
2016-12-20 16:06:58 -03:00
Felipe Magno de Almeida ae822a396c eina-cxx: Add visit_unsafe to eina::variant and make ~variant possibly noexcept
visit_unsafe member function visits the variant but assumes the
pre-condition that the variant is not empty. This avoids the
possibility of throwing an exception when the destructors
of the types used in variant are also guaranteed to be
noexcept.

CID 1367508
2016-12-20 15:33:57 -03:00
Felipe Magno de Almeida 3704173017 eina-cxx: Add move constructor and move assignment operator for eina::variant
CID 1362797
2016-12-20 15:26:35 -03:00
Derek Foreman fd5a0f6ff9 headers: update copyright 2016-12-20 10:31:26 -06:00
Chris Michael 3b7b894a62 embryo: Fix typo in float comparison 'fix'
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 11:27:18 -05:00
Chris Michael 913479199d Revert "ethumb: remove float comparison warnings"
This broke building and needs to be fixed differently

This reverts commit 8120572d08.
2016-12-20 11:26:10 -05:00
Chris Michael 02ba02d6a9 embryo: Fix typo
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 11:21:04 -05:00
Chris Michael 8120572d08 ethumb: remove float comparison warnings
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 11:21:04 -05:00
Derek Foreman acb0ee2a9d evas engines: Use EGLImageKHR instead of EGLImage
If someone's trying to build efl git with 2.5 year old EGL headers they get
a break on missing EGLImage...

We should probably consider keeping an up to date copy of the EGL headers
in efl.  There may be someone out there with even older headers.
2016-12-20 10:16:40 -06:00
Chris Michael 2faf3df444 emotion: remove float comparison warnings
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 11:13:40 -05:00
Chris Michael be02e13ece embryo: remove float comparison warnings
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 11:03:50 -05:00
Chris Michael 72a3556fa7 efreet: remove float comparison warnings
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 11:01:27 -05:00
Chris Michael 8ce2d99150 ector: remove float comparison warnings
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:59:55 -05:00
Chris Michael 7507efc260 evas: remove float comparison warnings from evas_object_image
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:55:08 -05:00
Chris Michael 87c085688d ecore-fb: remove float comparison warnings for ecore_fb_li
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:30:04 -05:00
Chris Michael e8e59204b1 ecore-evas: remove float comparison warnings for ecore_evas.c
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:28:39 -05:00
Chris Michael 2ae4c978f9 evas: remove float comparison warnings for evas_filter_mixin
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:51 -05:00
Chris Michael f427050b61 evas: remove float comparison warnings for evas_convert_color
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:51 -05:00
Chris Michael b58057e2e7 evas: remove float comparison warnings for evas_canvas3d_primitive
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:51 -05:00
Chris Michael 239d1401db evas: remove float comparison warnings for evas_canvas3d_mesh
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:51 -05:00
Chris Michael 9a06230b8d evas: remove float comparison warnings for evas_canvas3d_scene
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:51 -05:00
Chris Michael f411616069 evas: remove float comparison warnings for evas_canvas3d_node
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:51 -05:00
Chris Michael cbc60f1dd1 evas: remove float comparison warnings for evas_cs2_client
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:50 -05:00
Chris Michael 2c9e46ace5 evas: remove float comparison warnings for evas_cache2
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:50 -05:00
Chris Michael 33ad245b80 evas: remove float comparison warnings for evas_cache_image
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:50 -05:00
Chris Michael 656df71b96 evas: remove float comparison warnings for evas_object_textgrid
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:50 -05:00
Chris Michael 0b17713691 evas: remove float comparison warnings for efl_canvas_image
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:50 -05:00
Chris Michael ec2238ea16 evas: remove float comparison warnings for efl_input_pointer
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:50 -05:00
Chris Michael 0e93d8121b evas: remove float comparison warnings for evas_map
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:50 -05:00
Chris Michael 879041a329 evas: remove float comparison warnings for evas_object_textblock
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:50 -05:00
Chris Michael 9259f0a643 evas: remove float comparison warnings for evas_object_text
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:50 -05:00
Chris Michael a50c811ab0 evas: remove float comparison warning for evas_object_box
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:49 -05:00
Chris Michael 72b1fecbda evas: remove float comparison warning for evas_object_table
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:49 -05:00
Chris Michael 32745f91ae evas: remove float comparison warning for evas_object_main
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:49 -05:00
Chris Michael 1b9aa3f995 evas: remove float comparison warnings for evas_events
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 10:25:36 -05:00
Chris Michael 2bc53c9013 ecore-evas-x: remove float comparison warning from X backend
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 08:54:01 -05:00
Chris Michael fa05393d02 ecore-evas-wayland: remove float comparison warning from wayland backend
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-20 08:53:16 -05:00
Carsten Haitzler b9e0772533 evas - async preload - stop hang when missing wakeup of preload data
this isn't pretty and i think some stuff needs a redesign... but...
this should fix T5025

@fix
2016-12-20 22:38:21 +09:00
Gustavo Sverzut Barbieri b00ea12e8b ecore_con_legacy: fix compatibility behavior (eos-mark on receiver done).
While a socket can be closed to receive data resulting in EOS, it
could still be used to send stuff. Then it won't result in "finished",
just "read,finished" event.

However, previously this was considered a disconnect and we must
respect this otherwise tests (Ecore_Con_Eet suite) will hang waiting
for a disconnect.
2016-12-20 10:18:33 -02:00
Gustavo Sverzut Barbieri fd6dbe3393 efl_io_buffered_stream: eos-mark and flush sender on close.
By marking EOS on the outgoing queue we allow the sender to flush
pending data if that's possible.

This also fixes a typo in the condition for eos_mark, it operates on
outgoing, not incoming queue.
2016-12-20 10:18:33 -02:00
Gustavo Sverzut Barbieri c152aad8c5 efl_io_reader/writer: silent errors when operating on unset-objects.
if we're operating on unset objects, fd are now -1 and would complain,
relax that.
2016-12-20 10:18:33 -02:00
Gustavo Sverzut Barbieri 4d5105afeb efl_io_buffered_stream: if there is a copier, check if it's done.
Before we're exiting if there was nothing pending, but in some cases
this was too aggressive as the copier's source may be alive (ie:
not-EOS), however nothing was read to its internal buffer, thus no
pending.

Since the copier will track its source's EOS, just check if it's done.
2016-12-20 10:18:32 -02:00
Gustavo Sverzut Barbieri 829d1d71fb efl_io_copier: fix typo in efl_io_copier_flush().
We should check if destination 'can write', not source.
2016-12-20 10:18:32 -02:00
Gustavo Sverzut Barbieri 08c38713ce do not emit events from efl_io_closer_close() on destructor.
On destructor we're not supposed to emit events, I even thought that
would be implicit, but it's not. If we do, for example an event
handler that would 'efl_del()' on "EFL_IO_CLOSER_EVENT_CLOSED" would
trigger too-many unrefs.
2016-12-20 10:18:32 -02:00
Gustavo Sverzut Barbieri 963e3a793d efl_io_reader/writer: always set 'can_*' to FALSE on errors.
If user tries to read or write and that fails then set 'can_read' or
'can_write' to false, regardless of the error code.
2016-12-20 10:18:32 -02:00
Gustavo Sverzut Barbieri 2666e927a5 efl_io_copier: avoid extra copy, todo--.
Avoid the intermediate buffer and use the new eina_binbuf_expand() +
eina_binbuf_use(), reading directly to the binbuf.
2016-12-20 10:18:32 -02:00
Gustavo Sverzut Barbieri 22837eacc9 efl_io_copier: remove TODO leftovers.
Copier is based on Efl.Io.Reader.can_read,changed and
Efl.Io.Writer.can_write,changed, these events do not keep being posted
until it's actually read/written, instead they trigger only once when
the property change -- unlike Efl.Loop_Fd read/write events.
2016-12-20 10:18:32 -02:00
Gustavo Sverzut Barbieri 09825cbe5d eina_binbuf: allow expand & usage of extra bytes.
Some code needs to read directly into eina_binbuf to avoid an extra
copy from eina_binbuf_append* variants.

This can be achieved by using eina_binbuf_expand(), which returns a
write-able slice of the spare bytes. Once they are used,
eina_binbuf_use() should be called to increment "buf->len", which is
used by all other binbuf functions such as eina_binbuf_length_get() or
eina_binbuf_append_slice().
2016-12-20 10:18:32 -02:00
Gustavo Sverzut Barbieri 3680ae0bab eo_debug: print tracebacks for more errors.
If eo_debug (libeo_dbg/EO_DEBUG), then print tracebacks if lifecycle
is being tracked.
2016-12-20 10:18:31 -02:00
WooHyun Jung 33e353a2a8 elm_scroller: focus_next needs to give itself when no focusable child
@fix
2016-12-20 19:38:47 +09:00
Stefan Schmidt 343cec01e9 docs: elm: fix stack_base property doc to cover getter function as well
Documenting the property itself will make sure getter as well as setter
are documented.
2016-12-20 09:12:27 +01:00
Jean-Philippe Andre 18123ae800 win: Fix shadow warnings 2016-12-20 16:07:50 +09:00
Jean-Philippe Andre a28cb93d0d Revert "evas: Add source_region property to proxy objects"
This reverts commit 4e110a34bf.

Urgh. I'm stupid. Conceptually I still like the idea of the
region proxy, that only renders part of the source object
in a proxy surface. The problem right now is that the proxy
subrender mechanism renders to a surface that belongs to
the **source** and not the proxy object. As a consequence,
the region would become a property of the source, rather than
the proxy, which is not at all the intention of the original
patch. In other words, everything would fall apart if an object
has more than one proxy, for whatever reason.

I realized that when trying to actually test the region proxy.
It didn't work at all. Revert for now.
2016-12-20 15:47:54 +09:00
Mykyta Biliavskyi bb91c4b45d Ecore_win32: do not handle WM_SYSKEY* events.
Summary:
In case if WM_SYSKEYDOWN or WM_SYSKEYUP events are handled in
DefWindowProc - system doesn't init event for a system shortcuts.
For example any EFL application on Windows couldn't be closed by
Alt+F4 combination.

@fix

Test Plan:
Launch Elemenatry_test app.
           Try to close by Alt+F4 combination.

Reviewers: vtorri, raster

Reviewed By: raster

Subscribers: an.kroitor, bowonryu, cedric, jpeg, #eflete

Differential Revision: https://phab.enlightenment.org/D4477
2016-12-20 08:35:32 +02:00
Carsten Haitzler 39af0d88aa efl stack wins - add base property/boolean to indicate win is a base
part of adding stacks...
2016-12-20 10:57:55 +09:00
Jean-Philippe Andre 85b5064b67 evas/ply: Add filename in error logs
As suggested by @k-s

I'm pretty sure that this parser will easily fail. Eg. find uchar
properties but it's not r,g,b in this exact order? No color for you.
Find no uchar at all? Fail immediately even if we can handle a
no color situation just fine.
2016-12-20 09:58:43 +09:00
Jean-Philippe Andre 6989642221 elm_test: Also filter categories when typing in search bar 2016-12-20 09:42:51 +09:00
Cedric BAIL 77a7d6d9e5 ecore: remove float comparison warning from Ecore_Animator code. 2016-12-19 16:33:46 -08:00
Cedric BAIL 1a6dc04fa1 ecore: remove float comparison warning from Ecore_Poller code. 2016-12-19 16:33:46 -08:00
Cedric BAIL 667b4340b9 ecore: remove floating point comparison warning from Ecore_Thread code. 2016-12-19 16:33:46 -08:00
Cedric BAIL 0a05725cc1 ecore: remove floating point comparison warning from Ecore main loop code. 2016-12-19 16:33:46 -08:00
Cedric BAIL 172c07d5cd ecore: remove float comparison warning from Ecore_Pipe. 2016-12-19 16:33:46 -08:00
Cedric BAIL fa66613ed0 efl: remove float comparison warning from Efl.Gfx.Path code. 2016-12-19 16:33:46 -08:00
Cedric BAIL ae51b841d9 ecore_evas: remove float comparison warning from DRM backend. 2016-12-19 16:33:46 -08:00
Cedric BAIL c12d60c1e6 eina fixup matrix test 2016-12-19 16:33:46 -08:00
Cedric BAIL 2ddbfb2329 evas: get rid of float comparison warning in Evas_3D. 2016-12-19 16:33:46 -08:00
Cedric BAIL ae9257401e eina: get rid of float comparison warning on quaternion tests. 2016-12-19 16:33:46 -08:00
Cedric BAIL 27bf609b9d eina: get rid of float comparison warning on quad tests. 2016-12-19 16:33:46 -08:00
Cedric BAIL e24ad29142 eina: get rid of float comparison warning from str test. 2016-12-19 16:33:46 -08:00
Cedric BAIL d03482a0a7 eina: use proper logic for comparing double in matrix tests. 2016-12-19 16:33:46 -08:00
Cedric BAIL 701aa35e6e eina fixup bezier 2016-12-19 16:33:46 -08:00
Cedric BAIL 3751e29a9b xcf: fix float comparison in xcf generic loader. 2016-12-19 16:33:46 -08:00
Cedric BAIL 3d0c4ac0f6 eina: fix double comparison in eina quaternion. 2016-12-19 16:33:46 -08:00
Cedric BAIL d94a186584 eina: fix double comparison in eina matrix. 2016-12-19 16:33:46 -08:00
Cedric BAIL 1f6c4b1370 eina: fix double comparison in eina bezier. 2016-12-19 16:33:46 -08:00
Cedric BAIL 4489e7520e eina: correctly compar double in eina xattr test. 2016-12-19 16:33:46 -08:00
Cedric BAIL a7e0f26e1b eio: correctly compar double in xattr test. 2016-12-19 16:33:46 -08:00
Cedric BAIL 7bb229d4be eina: add general purpose function to compar float and double. 2016-12-19 16:33:46 -08:00
Derek Foreman 00f8cc4566 wayland_egl: Use common implementation of eglCreateImage
This might fix nested compositors on some architectures...
2016-12-19 16:20:00 -06:00
Derek Foreman fba3927a7d wayland_egl: Remove some weirdness from our egl extension queries
Still totally wrong, of course, but at least a little less wacky.
2016-12-19 16:13:48 -06:00
Derek Foreman ac4c8dbbab gl_x11: Use common implementation of eglCreateImage
Throw away the local copy and use the one in gl_common.
2016-12-19 15:52:58 -06:00
Derek Foreman 2e6f93ccda gl_drm: Use common eglCreateImage implementation
Refactor to reduce copy and paste.
2016-12-19 15:52:58 -06:00
Derek Foreman 74a456253a gl_common: Make secsym_eglCreateImage a wrapper
eglCreateImage and eglCreateImageKHR are subtly different.  Now we try to
handle them both properly by exposing an abstraction.
2016-12-19 15:52:58 -06:00
Derek Foreman 98ef74eeba ector_gl: Add some EGL typedefs to internal header
This lets us include EGL/egl.h in gl_common.
2016-12-19 15:52:57 -06:00
Derek Foreman 93899429ef gl_common: fix eglCreateImageKHR query
There are surprisingly few GL extensions that start with GL_EGL...

This is apparently more widely deployed than OES, so let's bump its
priority too.
2016-12-19 15:52:53 -06:00
Gustavo Sverzut Barbieri 42923bc29e efl_net_server_udp_client: make error easier to understand.
UDP client has no socket on its own, so it can't be marked as
close-on-exec, however failing to resolve the method is bad as
confuses the user.

Instead provide a method that checks if the setting is different from
parent, in such case provide a meaningful message. Otherwise just be
quiet.
2016-12-19 17:19:45 -02:00
Gustavo Sverzut Barbieri a995529a46 efl_net_socket_udp: expose init() as protected method.
remove one more TODO: since Efl.Net.Ip.Address was introduced we can
now expose Efl.Net.Socket.Udp.init as a protected method that will
configure the internal address we use for the remote peer. This allow
subclasses to override or call such methods.
2016-12-19 17:11:46 -02:00
Gustavo Sverzut Barbieri db1e2b994e efl_net_socket_ssl: remove TODO leftover.
There are no jobs to stop there, it was a left over since this code
was somehow derived from Efl.Loop_Fd where "read" and "write" would
constantly be called until the kernel flag was cleared, there the
callback must be removed to stop jobs, not here.
2016-12-19 16:52:29 -02:00
Gustavo Sverzut Barbieri c2aedc117a efl_io_buffer: adopt read-only and read-write buffers.
todo--, allow buffer backing store to be provided by Eina_Slice
(rdonly) or Eina_Rw_Slice (rdwr).
2016-12-19 16:50:58 -02:00
Bruno Dilly ecdf56de47 evas: improve logic regarding events filtering enablement
Only the size of events_whitelist isn't enough, because in some
cases the user may be disabling the usage of a specific seat.

Considering the following scenario, the issue will easy to understand:
 - an application with two entries (one to be used by seat 1 and other
     by seat 2)
 - the first seat is announced - it is enabled for entry 1 and
     disabled for entry 2
 - the second seat is announced

Before second seat is announced, the first seat would be able
to input the entry 1, because the events_whitelist of such
object will continue empty.

So a flag will be used to identify an object with active
filter.

Reviewed By: iscaro

Differential Revision: https://phab.enlightenment.org/D4498
2016-12-19 16:47:14 -02:00
Bruno Dilly e78390c4c5 evas: remove focus when removed from filter whitelist
It doesn't make sense to remove it when a seat is added
to the list. It should be removed only when this seat
is blocked.

But when the list receives its first item, then
it also should be checked if the focused seat
is the one just added, otherwise the previous one
must be removed.
2016-12-19 16:46:57 -02:00
Gustavo Sverzut Barbieri e2c0b7741b tests/ecore_con: skip ipv6 tests if that's disabled on the running system. 2016-12-19 15:49:16 -02:00
Gustavo Sverzut Barbieri dd5cdda64b more eo simplified to use Eina_Slice instead of pointer to.
Working directly with Eina_Slice is easier than a pointer to it,
requires no validation of the pointers and is cheap since it's just
putting together size_t + void*.

However we can't hint the user of 'const(Eina.Slice)' properties as
Eolian is incorrectly generating getters as:

   const Eina_Slice class_property_get(...)

which is makes compilers complain about ignored qualifiers:

   ../src/lib/ecore/efl_io_copier.eo.h:329:7: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]

Leave some TODO so @q66 can fix those.
2016-12-19 15:30:56 -02:00
Gustavo Sverzut Barbieri 25a9e1d886 Efl.Io.{Queue,Buffer,Buffered_Stream}: slice_get is now a property.
Previously we couldn't return a slice, instead required the user to
pass a slice and we'd fill it since Eolian couldn't generate fallbacks
for structures.

Since @q66 fixed eolian, we can now return the structure itself as
initially wanted, ditching some TODO from the code.
2016-12-19 15:30:56 -02:00
Bruno Dilly 4449ec8698 edje/examples: add example of use_custom_seat_names flag
Since seat names defined on evas will depend on evas backends,
maybe udev rules, etc, we aren't able to demonstrate it
without manually setting another name for such seats
with efl_input_devices_name_set(). Otherwise
we wouldn't have guarantees it would match
names on EDC.
2016-12-19 14:58:35 -02:00
Bruno Dilly 60b160f47c edje/examples: add example for focus actions
Just a regular (non multiseat) focus example for
actions FOCUS_SET and FOCUS_OBJECT
2016-12-19 14:58:35 -02:00
Bruno Dilly 287486e920 edje: add flag to choose between evas or edje seat naming
collections.group.use_custom_seat_names should be set to '1'
to use seat names on signals as provided by Evas.

By default just follow Edje naming approach
("seat1", "seat2", ...)
2016-12-19 14:58:35 -02:00
Bruno Dilly f34220f089 examples/edje: add dynamic seats example
It's an example of how themes can be implemented even if the number
of seats using the UI is unknown, and how it can be done
using scripts or C code.
2016-12-19 14:58:35 -02:00
Bruno Dilly c6399665dd edje: support action seats on edje_edit 2016-12-19 14:58:35 -02:00
Bruno Dilly 0ab6567b3e edje: accept optional seat parameter on FOCUS_OBJECT
If not provided, FOCUS_OBJECT action will keep acting
over default seat.

Also include a usage on edje-multiseat test
(actually no example was exercising this action).
2016-12-19 14:58:35 -02:00
Bruno Dilly 7ef5f6c3a0 examples/edje: add multiseat example 2016-12-19 14:58:35 -02:00
Bruno Dilly bb3fd015de edje: add names for seats following an incremental pattern
This way it'll be possible to write EDC with seat names that
will work no matter how seats are named by each ecore_evas
backend or users.
2016-12-19 14:58:35 -02:00
Bruno Dilly 5cfdf3ec3a edje: support seat on focus action and signals
Seat goes as an optional parameter for FOCUS_SET (if not
provided, act over default seat), and emit signals
with seat suffix:
 * focus,in,$SEAT
 * focus,out,$SEAT
 * focus,part,in,$SEAT
 * focus,part,out,$SEAT
2016-12-19 14:58:35 -02:00
Bruno Dilly fecd59fe32 edje: add new signals providing seat information
Add the following signals:
 * mouse,in,$SEAT
 * mouse,out,$SEAT
 * mouse,move,$SEAT
 * mouse,clicked,$BUTTON,$SEAT
 * hold,on,$SEAT
 * hold,off,$SEAT
 * drag,$SEAT
 * drag,start,$SEAT
 * drag,stop,$SEAT
2016-12-19 14:58:35 -02:00
Bruno Dilly 2958aba23a evas: add getter for devices by name
Make it possible to get the evas device given
its name. It sounds useful for Edje since
programs will reference seats by name.
2016-12-19 14:58:35 -02:00
Gustavo Sverzut Barbieri a7657e821f ecore_con/ecore_ipc: flush should wait for connection.
Some applications will create the handle, immediately send data, flush
and delete it, expecting the data to be sent to remote peer.

This is a bad behavior as the application would become unresponsive
until the connection is established, data can be written (since
depends on server consuming it), then allow it to be closed.

A proper behavior here would be to chain based on events, with the
usage of a copier would be simply wait for "done" event.

However the legacy API allowed this and terminology depends on this
awkward "feature", thus be bug-compatible.

This fixes T5015.
2016-12-19 13:03:33 -02:00
Gustavo Sverzut Barbieri fe668ef52c efl_io_file: initialize all fd to -1.
Since 0 is a valid fd, we should initialize these to -1.
2016-12-19 13:03:33 -02:00
Gustavo Sverzut Barbieri b4c80b50bc efl_net_socket_fd: initialize fds to INVALID_SOCKET
Since 0 is a valid fd, then we'd try to do socket operations on it,
which would generate misleading errors.
2016-12-19 13:03:33 -02:00
Gustavo Sverzut Barbieri ae054e6c0b ecore_con/ecore_ipc legacy: fail early for local sockets.
In the old/legacy API the socket would be opened early in non-blocking
mode (connect returned errno==EINPROGRESS), with UNIX socket being
path-validated early and returning NULL as 'server' handle.

Some applications relied on this instead of monitoring the "ERROR"
events, considering the connection to be successful if there was a
handle -- this was the case with Terminology after it moved from DBus
to Ecore_Ipc.

Although this is not correct, we must keep compatibility and thus we
stat() in compatibility layer, failing early as the old API would do.
2016-12-19 13:03:33 -02:00
Gustavo Sverzut Barbieri 482437ee14 ecore_con/ecore_ipc: keep log domain alive after shutdown.
These legacy API had the nasty behavior of keeping handles alive until
the pending events were dispatched, this could happen after the module
itself was shutdown, resulting in log to unregistered domains.

Then do not unregister the domain -- eina_shutdown will avoid leaks
anyway.
2016-12-19 13:03:33 -02:00
Chris Michael d0a6263519 elput: Fix resource leak
Coverty reports that we leak 'reply' here if we fall into the error
condition.

CID1367506

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-19 09:49:36 -05:00
Chris Michael fe27a8d440 elput: Fix resource leak
Coverity reports that 'reply' is leaked here if we fall into the error
condition.

CID1367507

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-19 09:48:30 -05:00
Gustavo Sverzut Barbieri 7de5146a3b efl_net: fix CID 1367489 due copy & paste.
we're looking at "x" since it's the return of getaddrinfo(), not "r"
which is used for something else.
2016-12-19 10:37:21 -02:00
Gustavo Sverzut Barbieri 74d8148da3 efl_debug_common: remove stale code/macros.
These are not needed anymore.
2016-12-19 09:52:30 -02:00
Jean-Philippe Andre 72f98a0649 evas/ply: Fix some memleaks
I have a strong feeling that this parser is not very robust...

Closes T5001
2016-12-19 12:06:24 +09:00
Andy Williams 34c28918d5 elm_code: Don't assume control characters make a change
@fix
2016-12-17 13:12:46 +00:00
Ivan Furs 1c0b3668e1 Eio_monitor: support native monitor for Win32 (T4978)
Test Plan:
eio_monitor_backend_add()  and eio_monitor_fallback_add use different structures
**eio_monitor_backend_add()  **
struct _Eio_Monitor_Backend
{
   Eio_Monitor               *parent;
   Eio_Monitor_Win32_Watcher *watcher_file;
   Eio_Monitor_Win32_Watcher *watcher_dir;
   Eio_Monitor_Win32_Watcher *watcher_parent;
};

**eio_monitor_fallback_add()**
struct _Eio_Monitor_Backend
{
   Eio_Monitor *parent;

   Eina_Stat self;
   Eina_Hash *children;

   Ecore_Timer *timer;
   Ecore_Idler *idler;
   Ecore_Thread *work;

   int version;

   Eina_Bool delete_me : 1;
   Eina_Bool initialised : 1;
   Eina_Bool destroyed : 1;
};

therefore, an error occurs
**void eio_monitor_backend_del**(Eio_Monitor *monitor)
{

   if (!_eio_monitor_win32_native)          <------_eio_monitor_win32_native is EINA_TRUE
     {

        eio_monitor_fallback_del(monitor);  <------ignored------
        return;                             <------ignored------
     }

   _eio_monitor_win32_watcher_free(monitor->backend->watcher_parent);
   _eio_monitor_win32_watcher_free(monitor->backend->watcher_dir);
   _eio_monitor_win32_watcher_free(monitor->backend->watcher_file);
   free(monitor->backend);
   monitor->backend = NULL;
}

Reviewers: raster, vtorri, an.kroitor, jpeg, reutskiy.v.v, FurryMyad, cedric

Reviewed By: cedric

Subscribers: vtorri, artem.popov, cedric, jpeg

Tags: #windows, #efl

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-12-16 15:27:14 -08:00
Hosang Kim 2b3bee1301 scrollable_interface: fixed logic for calcualting position to scroll.
Summary:
When width of parameter(w) is bigger than or equal to scroller's width(pw),
scrollable object must be scrolled to x position.

Test Plan: elementary_test -> focus 4

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

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4491
2016-12-16 15:26:00 -08:00
Hosang Kim 763478c091 elm_widget: add logic for updating geometry after moving
Summary:
scrollable object.

In multiple scrollable case, the target object should be updated.
Because the first object is scrolled. So the parent of the first object should be scrolled.

Reviewers: woohyun, Hermet, jpeg, cedric, raster

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-12-16 15:24:04 -08:00
Cedric BAIL 0f65bde10c edje: handle case when strdup would be NULL.
alternate solution to D4488. Would be better to have a buffer and recycle it.
2016-12-16 15:15:17 -08:00
Jee-Yong Um 4ea7effe70 elm.hoversel: fix item size calculation
Summary:
The way to find the position of hoversel expansion is based on geometry
currently, but it causes errors when theme is not made as expected.
This patch makes hoversel use string to find the right position and
calculate item width correctly when items are shorter than hoversel itself.

Test Plan:
elementary_test -to hoversel
(error case shows in tizen mobile device when screen is rotated)

Reviewers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-12-16 15:02:09 -08:00
Cedric BAIL 9393560178 eio: check error case for eina_value_get.
CID 1356609
2016-12-16 14:10:58 -08:00
Cedric BAIL 2b7a68eb1b ecore: add test for efl_promise_connect. 2016-12-16 14:10:58 -08:00
Cedric BAIL 637073813b ecore: add helper to automatically connect a future result to a promise.
This helper is to be used likely with next and an external request.
2016-12-16 14:10:58 -08:00
Cedric BAIL b7635be57d ecore: add tests for new promise delayed behavior. 2016-12-16 14:10:58 -08:00
Cedric BAIL c1811de61f ecore: fix test to generate one main loop iteration to see promise fulfilled. 2016-12-16 14:10:58 -08:00
Cedric BAIL ca1762be21 ecore: delay promise fulfillment to next loop iteration. 2016-12-16 14:10:58 -08:00
Cedric BAIL b85332fc89 ecore: remove useless information from header. 2016-12-16 10:42:59 -08:00
Cedric BAIL 5882c30a98 ecore: refactor promise propagation code. 2016-12-16 10:19:37 -08:00
Derek Foreman c11b66434f evas engines: Stop using arrays of 1 member for egl context and surface
There's actually an array of 2 in gl_x11, but it appears we only use the
first 1, except in an #if 0 block.

I gather this is legacy for some reason - it sure doesn't seem to make
any sense now, so I'm chopping off all the extra array indexes.

Note: I've not changed gl_sdl - it looks like it doesn't use the context
or surface at all and they could just be removed, but I don't build that
one here and don't want to touch it.
2016-12-16 09:48:15 -06:00
Vyacheslav Reutskiy 6f41b7a690 edje_pick: copy images from image sets
@fix
2016-12-16 15:32:48 +02:00
Vyacheslav Reutskiy ca11f5d678 edje_pick: use separate Eina_List vars for different EINA_LIST_FOREACH 2016-12-16 15:32:20 +02:00
Jean-Philippe Andre a07877bd57 elm: Add a test case for evas masking
This tests masks of masks in a genlist, with maybe a map.
Nothing crazy.
2016-12-16 19:18:29 +09:00
Jean-Philippe Andre 584e17ae84 elm_layout: Implement Efl.Text
This implements support for efl_text_set() for the default
part (NULL). This also adds support for efl_text_set(efl_part())
for layouts. This should cover a LOT of widgets :)

The next step is to remove Elm.Layout.text but it's used in too
many places at the moment. @herdsman!!
2016-12-16 18:53:33 +09:00
Jean-Philippe Andre 03eb4c6409 evas: Fix issues with masking (make check)
After a previous patch, mask_subrender worked differently, and
didn't reset the object's cache clip color. This made evas_suite
fail. But also it seems some other issues creeped in and it was
necessary to fix the test case by adding data_updates (mistake!)
and removing an invalid draw call.
2016-12-16 17:10:01 +09:00
Carsten Haitzler 0bf269d966 elm - add test for efl ui win stacking api 2016-12-16 16:16:53 +09:00
Carsten Haitzler 4b96738443 efl_ui_win - use ecore_x window stack api to set up property in x11 2016-12-16 16:16:53 +09:00
Carsten Haitzler 75a429328a efl_ui_win - teamwork really has issues and i think needs deprecation
teamwork api in elm win (efl_ui_win) has a few issues:

1. it directly ddigs into ecore_wl2 and uses internal headers to use
zwp_* api's directly... which effectively tied elementary directly to
libwayland and thats not a good thing - thats why ecore_wl2 exists -
to act as a layer in between
2. the only thing that supports it is e and only wiht a module and
there is no fallback code in elm to work outside this environment, so
it's kind of broken by design and will not actually reliably work
3. from a stability and security point of view, and api and protocol
that allow a client to ask your wm/compositor to open ANY url - go
make a network request possibly to a hostile url/site is bad. needing
to handle so so so so many protocols, file types etc. etc. is going to
lead to issues that SHOULD at least be isolated in the app, but now it
spreads into your wm/compositor too. :(
4. there is ZERO benefit to asking the wm to do this. the app is
using efl already. it already has all the same abilities with the same
libraries to download/display etc. so why doesnt the app do it itself?
5. doesnt work in windows, osx, framebuffer (fbcon or drm)... only in
x11 and wayland. (and then only with e + module)
6. there is no way to detect if it's going to work and write your own
fallback (which shouldnt be needed/done anyway).

nice work and enthusiasm on making teamwork but it just isn't the right
thing - not in its current form and not by design (security reasons) :(

@deprecate
2016-12-16 16:16:53 +09:00
Carsten Haitzler 56b0b6490d ecore-x - add missing atom fetches!
ECORE_X_ATOM_E_ILLUME_SLIDING_WIN_STATE
ECORE_X_ATOM_E_ILLUME_SLIDING_WIN_GEOMETRY
ECORE_X_ATOM_E_KEYROUTER_SUPPORTED
ECORE_X_ATOM_E_KEYROUTER_WINDOW_KEYTABLE

all had no atom fetches! fix..

@fix
2016-12-16 16:16:53 +09:00
Carsten Haitzler 90be06df9e ecore-x - add e stack type atom and api's to set and get it 2016-12-16 16:16:53 +09:00
Carsten Haitzler 48ac4747b1 efl_ui_win - add window "view stack" api's and ability
this adds the a stack of windows (view stack, something like naviframe
but using multiple windows instead) to elementary allowing windows to
be put into a stack and treated as one "application" when ijn such a
stack with the newest window on top being the active/focused one (or
should be). this allows for special show/hide animations as well as
possibly special sizing policies and placement policies.

@feature
2016-12-16 16:16:53 +09:00
Jean-Philippe Andre 489815457b evas: Apply clip when rendering a masked mask
This fixes a rare crash in the SW engine when a masked mask is
to be rerendered. The clip adds more safety as the lower render
draw functions assume it is properly set.
2016-12-16 15:21:01 +09:00
Jean-Philippe Andre e3b8bcc771 evas: Change int into a single bit
clean_layer is a bool
2016-12-16 14:35:52 +09:00
Jean-Philippe Andre b0c67adb10 evas: Fix masks of masks
Don't ask. This is a world of magic.
2016-12-16 14:09:00 +09:00
Jean-Philippe Andre 2bed30b398 evas: "fix" masks of masks inside a proxy
Here's the situation:

1. A container (genlist) has a mask, M0.
2. An item I0 inside this container uses a proxy P0 as render object
   rather than the item directly (eg. for zooming in/out).
3. An element E0 inside this item has another mask, M1.

Theory:
1. The proxy surface for P0 is rendered, and M1 is applied to
   the element E0.
2. The proxy P0 is rendered on the canvas, with M0 applied.

Practice:
1. The element E0 is prepared for rendering, this triggers
   a mask subrender for M1.
2. M1 is rendered with M0 as a prev mask, then kept in cache and
   not redrawn (no geometry change, etc...)
3. When P0's surface is rendered, M1's surface is the result of M1+M0.
4. When P0 is drawn on screen, we can see the effect of M1+M0 as
   P0's geometry might be different from the item's I0.

Solution:
Discard prev masks and force a mask redraw when we're inside a
proxy. Ideally we should detect if the prev mask belongs to the
insides of the proxy or not.

Problems:
_mask_apply_inside_proxy() is definitely not correct, but it's
not easy to test it. Anyway I believe that in order to properly
implement all of this, we need to rethink evas_render and
the draw context. Non-primary render surfaces (maps, proxies,
masks, filters, ...) should be rendered with a clean context
and clipping, masking, etc should be computed appropriately.
2016-12-16 11:29:47 +09:00
Jean-Philippe Andre 1c21cdfdbb evas: Remove flag use_mapped_ctx and add do_async
Always assume use_mapped_ctx as true, the caller of evas_render_mapped
must ensure that the context is suitable (so either clean or contains
the appropriate clip info).

Also pass do_async to mask_subrender. For now it will always be reset
to false as the SW engine requires sync render to convert from RGBA
to Alpha (not great). The upcoming GL async engine should be able to
render masks asynchronously without any problem.
2016-12-16 11:05:45 +09:00
Jean-Philippe Andre 3e0f3822f1 evas: Call object render in mask_subrender
This can avoid some invalid render from evas_render_mapped in
a rare case. I'm not sure about the conditions but I know for
sure that at the moment mask_subrender should be only rendering
plain old images into a dedicated surface. So no need for
evas_render_mapped here.
2016-12-16 10:53:03 +09:00
Jean-Philippe Andre 70676a4179 evas: Remove context from the evas public data
It was never used, except in dubious situations (most likely a typo).
A clean context is now used in the top-most call to
evas_render_updates_internal_loop.
2016-12-16 10:51:05 +09:00
Jean-Philippe Andre 581505791a evas: Remove context from some engine function
This is for canvas_alpha_get. context is never used.
2016-12-16 10:40:55 +09:00
Jean-Philippe Andre 260d838d22 evas: Remove context from polygon internal functions
It's not used
2016-12-16 10:37:54 +09:00
Jean-Philippe Andre 4f78aba9bf evas: Use ENFN, ENDT in evas_render
This makes code shorter and easier to read (imo).
Also introduce ENCTX for the engine context. It's used in a couple
places and I believe it's just wrong - but works because the engine
context and the current context are the same.
2016-12-16 10:31:53 +09:00
Jean-Philippe Andre ae69b10455 evas: Avoid calling efl_isa in proxy_subrender
It's not necessary.
2016-12-16 10:24:52 +09:00
Jean-Philippe Andre 4e110a34bf evas: Add source_region property to proxy objects
This will allow partially rendering a proxy in a smaller image,
limited to the specified region. At the moment, this will allow
apps to create proxies of very large objects and let them deal
with the geometry & clipping.

This is not directly solving the issues with adding a filter
to textblock or the infinite page scrollers.

@feature
2016-12-16 10:24:52 +09:00
Cedric BAIL 0ca1d0eef2 emile: refactor color convertion/copy logic in jpeg data decoder. 2016-12-15 16:45:10 -08:00
Cedric BAIL 3b354d6757 eet: add test for eet_alias_get. 2016-12-15 15:18:54 -08:00
Cedric BAIL 20d77fda98 eet: add test for eet_memopen_read. 2016-12-15 15:18:41 -08:00
Cedric BAIL 0ff7bf3611 eina: add a test for eina_stringshare_refplace. 2016-12-15 15:00:58 -08:00