platform/upstream/efl.git
7 years agoevas: Strengthen post-event callbacks
Jean-Philippe Andre [Thu, 16 Feb 2017 07:47:57 +0000 (16:47 +0900)]
evas: Strengthen post-event callbacks

See T3144 that I marked as Wontfix.

Bryce in E manually feeds events from a post-event callback
resulting in Evas going insane and leading to frequent crashes.
The ideal solution (for E) would be to ensure that everything works
smoothly, the input event data is valid up until the post-event cb
is called, etc... Unfortunately, with recursive events the exact
order of operations may be messed up: the post-event

I don't want to add yet more complexity to Evas events here (it's
already spaghetti all over the place) so I'm simply blocking any
new event feed when running the post-event callback list.

It's not possible to just freeze the events (I tried, it failed).

**********************
Some more explanation:

post-event callbacks are used to implement reverse-order logic
where the on-hold flag of an input event may be set by an event
listener that does not come first.

Here's a situation to illustrate: scroller A inside scroller B.

As events are propagated from children to parents (assuming the
propagate flag is set), we'd assume the events to go first to A
and then to B, which means a mouse wheel event would make the
inner-most scroller (A) scroll, and the outer-most scroller (B)
wouldn't budge.

But as things are designed, A and B are not simple evas objects,
and the actual event-catching object is a top-most transparent
rectangle (top-most in Z stack order). Since A is inside B, B's
rectangle BR is over A's rectangle AR, thus catches the wheel
event first. But in terms of UX we still want A to scroll, not B.

The solution then is to reverse the event processing order and
post-event callbacks are the way to do that. This comes with the
consequence that the event_info needs to remain valid until the
post-event is called, and stay the same (so that the on-hold flag
set by A can be read by B).

Recursive events (by explicit feed or modifying the canvas so
that mouse,in or mouse,out are triggered) mess with this logic,
and trigger the post-events too early (event is not fully
processed) or too late (event_info is not valid anymore... and
crash!).

Thanks @raster for explaining the goal of post-event callbacks!

7 years agoevas: Ensure post-event cb push is called from an event cb
Jean-Philippe Andre [Thu, 16 Feb 2017 07:26:42 +0000 (16:26 +0900)]
evas: Ensure post-event cb push is called from an event cb

This rejects calls to evas_post_event_callback_push() that don't
originate from inside an input event callback.

7 years agoevas/doc: Add warning about post_event_callback_push
Jean-Philippe Andre [Thu, 16 Feb 2017 07:25:50 +0000 (16:25 +0900)]
evas/doc: Add warning about post_event_callback_push

7 years agoRevert "Revert "evas textblock: keep previous size when the calculation is skipped""
Carsten Haitzler (Rasterman) [Thu, 16 Feb 2017 01:18:54 +0000 (10:18 +0900)]
Revert "Revert "evas textblock: keep previous size when the calculation is skipped""

This reverts commit b8beb6834b01f9688cb5e7aa177bacbc713318b9.

this now actually works... for some mysterious reason... ? :/ i am
baffled. go back in until we can find the issue then...

7 years agodoxygen: fix typos and some wrong expressions in API reference.
Myoungwoon Roy, Kim [Thu, 16 Feb 2017 00:30:18 +0000 (16:30 -0800)]
doxygen: fix typos and some wrong expressions in API reference.

Summary: I had fixed some typos and some wrong expressions, such as capital letters, singular, and orders of groups in API reference doxygen.

Test Plan: Doxygen revision

Reviewers: stefan, cedric, raster, Jaehyun_Cho, jpeg

Subscribers: conr2d

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
7 years agoefl: fix memory leak in edje and evas.
Godly T.Alias [Thu, 16 Feb 2017 00:29:05 +0000 (16:29 -0800)]
efl: fix memory leak in edje and evas.

Summary:
Signed-off-by: Godly T.Alias <godlytalias@yahoo.co.in>
Signed-off-by: Ayush Srivastava <ayush.sriv@samsung.com>
Test Plan: EFL apps

Reviewers: cedric, raster

Subscribers: rajeshps, ayush.sriv, jpeg, prince.dubey

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
7 years agoecore_drm2: ERR once when page flip fails with EBUSY
Derek Foreman [Wed, 15 Feb 2017 15:51:32 +0000 (09:51 -0600)]
ecore_drm2: ERR once when page flip fails with EBUSY

On systems where this happens it'll probably happen a lot, so
we don't want to continuously log this, but since it's definitely
showing a bug somewhere (efl or kernel) it probably should be an ERR.

7 years agoedje: Fix object leak with Efl.Part
Jean-Philippe Andre [Wed, 15 Feb 2017 11:55:58 +0000 (20:55 +0900)]
edje: Fix object leak with Efl.Part

A call to efl_reuse was missing.

7 years agoevas_loader: add since tag to newly added task_cancelled API
Stefan Schmidt [Wed, 15 Feb 2017 11:07:02 +0000 (12:07 +0100)]
evas_loader: add since tag to newly added task_cancelled API

7 years agoeina_strbuf / eina_ustrbuf: add since tags for newly added APIs
Stefan Schmidt [Wed, 15 Feb 2017 10:13:36 +0000 (11:13 +0100)]
eina_strbuf / eina_ustrbuf: add since tags for newly added APIs

These six have been added in this cycle but missed the since tags.

7 years agoeina_lock: add since tag to now exposed eina_lock_debug API
Stefan Schmidt [Wed, 15 Feb 2017 10:07:42 +0000 (11:07 +0100)]
eina_lock: add since tag to now exposed eina_lock_debug API

This function was static inline before but form 1.19 onwards its EAPI so give
it a since tag.

7 years agoeina: binbuf: add since tags new append_slice and insert_slice APIs
Stefan Schmidt [Wed, 15 Feb 2017 09:57:11 +0000 (10:57 +0100)]
eina: binbuf: add since tags new append_slice and insert_slice APIs

7 years agofileselector: Add missing call to group_del
Jean-Philippe Andre [Wed, 15 Feb 2017 11:07:38 +0000 (20:07 +0900)]
fileselector: Add missing call to group_del

Remove unused refcount thingy and enforce call to smart del.

Fixes T4598

7 years agogroup: Track calls to group_del
Jean-Philippe Andre [Wed, 15 Feb 2017 11:07:11 +0000 (20:07 +0900)]
group: Track calls to group_del

After a long search I found that fileselector was not calling
super.group_del on deletion, leading to the use of dangling pointers.
So let's verify that group_del is properly called.

See T4598

7 years agoeo: Fix shadow variable warning
Jean-Philippe Andre [Wed, 15 Feb 2017 07:23:44 +0000 (16:23 +0900)]
eo: Fix shadow variable warning

7 years agogenlist: remove uncessary _item_cache_zero call
Amitesh Singh [Wed, 15 Feb 2017 10:18:38 +0000 (15:48 +0530)]
genlist: remove uncessary _item_cache_zero call

_item_cache_zero() is already getting called in _mirrored_set

Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
7 years agoelm_genlist_item: update docs for 'next_get'
Vyacheslav Reutskiy [Fri, 10 Feb 2017 08:50:35 +0000 (10:50 +0200)]
elm_genlist_item: update docs for 'next_get'

7 years agotextblock: Fix dangling data ref
Jean-Philippe Andre [Wed, 15 Feb 2017 06:43:20 +0000 (15:43 +0900)]
textblock: Fix dangling data ref

In this case data_scope_get is more appropriate as the data is
indeed stored on the stack (function scope) and not somewhere else.

After this last fix I see no eo_debug error logs in elementary test.
Yay! eo_debug is now usable :)

7 years agoevas & elm: Fix invalid uses of efl_data_ref(obj, NULL)
Jean-Philippe Andre [Wed, 15 Feb 2017 06:04:20 +0000 (15:04 +0900)]
evas & elm: Fix invalid uses of efl_data_ref(obj, NULL)

The data class should be specified for debug purposes.
Also, this fixes invalid uses inside the smart object
implementation where it assumed that the smart data was part
of the eo data. It may not (legacy objects).

7 years agoevas_render: Remove data_unref that has no data_ref
Jean-Philippe Andre [Wed, 15 Feb 2017 06:32:04 +0000 (15:32 +0900)]
evas_render: Remove data_unref that has no data_ref

7 years agoeo_debug: Remove some abusive goto where not needed
Jean-Philippe Andre [Wed, 15 Feb 2017 06:25:15 +0000 (15:25 +0900)]
eo_debug: Remove some abusive goto where not needed

goto was used for micro-optimization. There is absolutely no
need for those if we're using the slow path with eo_debug.

Simplify the code.

7 years agoeo_debug: Some more log improvements
Jean-Philippe Andre [Wed, 15 Feb 2017 06:19:08 +0000 (15:19 +0900)]
eo_debug: Some more log improvements

Nothing fancy here...

7 years agoeo_debug: Improve dangling xref debug logs even more
Jean-Philippe Andre [Wed, 15 Feb 2017 05:43:35 +0000 (14:43 +0900)]
eo_debug: Improve dangling xref debug logs even more

In case of manual free, as is heavily used by Evas, we can't really
print an ERR if there are still references before free has been
called.

This may not be ideal from a pure EO point of view but considering
how Evas uses manual free this is the best solution to avoid
polluting debug logs.

7 years agoeo_debug: Improve one log
Jean-Philippe Andre [Wed, 15 Feb 2017 04:42:29 +0000 (13:42 +0900)]
eo_debug: Improve one log

This changes the following message when the object is referencing
its own data. Also lowers from ERR to WRN and adds the class
name for the referenced data.

ERR<17450>:eo /home/jpeg/e/core/efl/src/lib/eo/eo_private.h:337
  _efl_unref_internal() in /home/jpeg/e/core/efl/src/lib/eo/eo.c:620:
  func '_efl_object_call_end' Data of object 0x400000021008db58 is
  still referenced by object 0x400000021008db58

Note that evas and elm have a few calls to efl_data_ref(obj, NULL)
which are imho quite ugly: not using the return value and not
specifying the data class. I'm keeping them as-is for now.

7 years agoelm_widget: Fix order of operations (isa before data_get)
Jean-Philippe Andre [Wed, 15 Feb 2017 04:32:15 +0000 (13:32 +0900)]
elm_widget: Fix order of operations (isa before data_get)

This fixes some of the occurences of the following error message
when using eo_debug:

ERR<23101>:eo /home/jpeg/e/core/efl/src/lib/eo/eo.c:1955
  efl_data_scope_get() Tried getting data of class 'Elm.Widget'
  from object of class 'Edje.Object', but the former is not a
  direct inheritance of the latter.

If we're going to call efl_isa, then let's at least do it before
efl_data_scope_get.

7 years agoelc_multibuttonentry: input panel should be shown whenever mbe is clicked.
Woochan Lee [Wed, 15 Feb 2017 04:06:49 +0000 (13:06 +0900)]
elc_multibuttonentry: input panel should be shown whenever mbe is clicked.

Summary:
When mbe got focus the input panel will be shown.
Otherwise, input panel will be hidden.

If the mbe still got focus then input panel hide by user action.
there is no way to reactivate the input panel in case.

Reviewers: woohyun, jpeg, cedric, Hermet

Reviewed By: jpeg

Subscribers: cedric, jpeg

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

7 years agoecore_input: add API to set/get deadzone of joystick event for an axis.
Shinwoo Kim [Wed, 15 Feb 2017 04:00:13 +0000 (13:00 +0900)]
ecore_input: add API to set/get deadzone of joystick event for an axis.

Summary:
The axis type joystick event could occur without user's control if joystick is too sensitive.
The deadzone prevents this unnecessary event. The default value is 200.
The event value for an axis is a signed integer between -32767 and +32767.

Test Plan: Using example

Reviewers: raster, cedric, jpeg

Reviewed By: jpeg

Subscribers: stefan_schmidt

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

7 years agobuild: Add our wayland protocols to the dist
Derek Foreman [Tue, 14 Feb 2017 23:00:34 +0000 (17:00 -0600)]
build: Add our wayland protocols to the dist

Oops, without these in the distribution tarball you can't
build wayland support.

7 years agoemotion: add since tag to new emotion_file_meta_artwork_get API
Stefan Schmidt [Tue, 14 Feb 2017 20:42:20 +0000 (21:42 +0100)]
emotion: add since tag to new emotion_file_meta_artwork_get API

7 years agoefl: add since tag to new invalid object error type
Stefan Schmidt [Tue, 14 Feb 2017 20:33:33 +0000 (21:33 +0100)]
efl: add since tag to new invalid object error type

7 years agoeo: add missing since tags for functions added during 1.19 cycle
Stefan Schmidt [Tue, 14 Feb 2017 20:31:59 +0000 (21:31 +0100)]
eo: add missing since tags for functions added during 1.19 cycle

7 years agoecore_x: add singce tags for ecore_x_stack_* functions added during 1.19 cycle
Stefan Schmidt [Tue, 14 Feb 2017 20:16:00 +0000 (21:16 +0100)]
ecore_x: add singce tags for ecore_x_stack_* functions added during 1.19 cycle

7 years agoecore_evas: add brief docs and since tags for new ecore_evas_shadow_geometry_*
Stefan Schmidt [Tue, 14 Feb 2017 20:06:38 +0000 (21:06 +0100)]
ecore_evas: add brief docs and since tags for new ecore_evas_shadow_geometry_*

These have been missing when introduced during the 1.19 cycle.

7 years agoecore-wl2: Fix setting input region on a window
Chris Michael [Tue, 14 Feb 2017 16:31:57 +0000 (11:31 -0500)]
ecore-wl2: Fix setting input region on a window

Previous code here would store incorrect values into the
window->input rectangle. These values should be what is actually
getting set in the wl_region. This code also fixes an issue when
setting input region for transparent/alpha windows by clearing out
any pending input region (wl_surface_set_input_region(surface, null)).

Reviewed-By: Derek Foreman <derekf@osg.samsung.com>
@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
7 years agoecore-wl2: Fix setting opaque region on a window
Chris Michael [Tue, 14 Feb 2017 14:58:49 +0000 (09:58 -0500)]
ecore-wl2: Fix setting opaque region on a window

Previous code here would store incorrect values into the
window->opaque rectangle. These values should be what is actually
getting set in the wl_region. This code also fixes an issue when
setting opaque region for transparent/alpha windows by clearing out
any pending opaque region (wl_surface_set_opaque_region(surface, null)).

Reviewed-By: Derek Foreman <derekf@osg.samsung.com>
@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
7 years agoRevert "evas textblock: keep previous size when the calculation is skipped"
Carsten Haitzler (Rasterman) [Tue, 14 Feb 2017 08:32:26 +0000 (17:32 +0900)]
Revert "evas textblock: keep previous size when the calculation is skipped"

This reverts commit c39855a8ac6f86c2dd8b1856ed70f85e0e521f3e.

This actually breaks 1 dialog in e (app exited with error exit code).
it worked everywhere else so i thought it was good. seemingly not
after i saw one of these. revert D3595

7 years agoEdje calc: Fix textblock size calculation logic
Youngbok Shin [Tue, 14 Feb 2017 07:16:45 +0000 (16:16 +0900)]
Edje calc: Fix textblock size calculation logic

Summary:
In singleline textblock, using "text.min: 1 0" and min, max width,
Edje allows to use expandable text with ellipsis. It shows ellipsis
when only text's width reach the max width.
But, Edje couldn't support same feature on multiline textblock.
Edje dose not use max height or text.max properly if ellipsis is enabled.
This feature is very useful to make a layout with dynamically aligned text.
@fix

Reviewers: cedric, tasn, woohyun, raster, herdsman

Subscribers: z-wony, eagleeye, jpeg

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

7 years agoevas textblock: keep previous size when the calculation is skipped
Youngbok Shin [Tue, 14 Feb 2017 07:16:26 +0000 (16:16 +0900)]
evas textblock: keep previous size when the calculation is skipped

Summary:
When a size calculation is skipped because of some reasons,
Evas Textblock should keep same size with the previous size.
@fix

Test Plan: N/A

Reviewers: raster, herdsman, cedric, jpeg

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

7 years agoecore_evas: Avoid safety check error log
Jean-Philippe Andre [Tue, 14 Feb 2017 06:09:36 +0000 (15:09 +0900)]
ecore_evas: Avoid safety check error log

If an engine can not be used (eg. GL inside a standard Xephyr),
some ERR logs will be printed out by ecore_evas_x. This patch
avoids extra eina_safety error logs from using a NULL pointer.

7 years agoevas key: Add null safety to EAPIs
Jean-Philippe Andre [Tue, 14 Feb 2017 06:02:30 +0000 (15:02 +0900)]
evas key: Add null safety to EAPIs

This avoids a crash with Bryces. This does not fix the problem
with the Bryce itself. Ping @zmike

See T5157

7 years agoevas: Fix double free in post events
Jean-Philippe Andre [Tue, 14 Feb 2017 05:42:33 +0000 (14:42 +0900)]
evas: Fix double free in post events

A use of the post event callback in Bryce triggered a double free
as an event was being processed but not yet removed from its list,
leading to an invalid state of the Eina_List.

Also remove obj from struct as it is unused.

Fixes T5157

7 years agoevas gl: Fix memory tracking
Jean-Philippe Andre [Tue, 14 Feb 2017 01:54:32 +0000 (10:54 +0900)]
evas gl: Fix memory tracking

See b16c961680579ad13 which by "fixing" indentation changed the
logic of the code. Yes the indentation was misleading (because of
the #if / #else) but the logic was correct. Anyway this is was not
a harmful issue as those memory trackers aren't really used.

7 years agoecore-evas-drm: Fix setting rotation during async render
Chris Michael [Mon, 13 Feb 2017 18:43:21 +0000 (13:43 -0500)]
ecore-evas-drm: Fix setting rotation during async render

If we are in async render and a call to rotation_set has been made,
then we should delay setting that rotation until rendering is
completed. This patch fixes that issue by setting ee->delayed.rotation
and handling it during _drm_render_updates

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
7 years agoecore-evas-wayland: Fix setting rotation during async render
Chris Michael [Mon, 13 Feb 2017 18:37:06 +0000 (13:37 -0500)]
ecore-evas-wayland: Fix setting rotation during async render

If we are in async render when a call to set rotation happens, we
should not be setting the engine info->rotation until we have actually
handled the rotation. Old code here would set delayed.rotation on the
ecore_evas itself, but then it would tell the engine to rotate. What
we actually want here is If in async render, set the delayed rotation
property and let render_updates deal with any delayed setting.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
7 years agoevas-gl-common: Fix misleading indentation
Chris Michael [Mon, 13 Feb 2017 15:31:59 +0000 (10:31 -0500)]
evas-gl-common: Fix misleading indentation

gcc reports that the 'else' here does not guard the latter
statement...seems like a cause of some missing parens so fix.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
7 years agorelease: Update NEWS and bump version for 1.19.0-beta1 release
Stefan Schmidt [Mon, 13 Feb 2017 13:56:06 +0000 (14:56 +0100)]
release: Update NEWS and bump version for 1.19.0-beta1 release

7 years agoecore-drm2: Fix debug messages to use proper type
Chris Michael [Mon, 13 Feb 2017 14:44:30 +0000 (09:44 -0500)]
ecore-drm2: Fix debug messages to use proper type

Small patch which fixes some FB flipping messages to use the proper
type (ie: some messages were ERR when should be DBG or WRN, etc).

NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
7 years agoeina: make the ein_file_unlink symbol availbale form the ein_file header
Stefan Schmidt [Mon, 13 Feb 2017 13:30:27 +0000 (14:30 +0100)]
eina: make the ein_file_unlink symbol availbale form the ein_file header

It was only defined in the c file. Without any documentation, since tag, etc.

tests/eina/eina_test_file.c:855:4: warning: implicit declaration of function â€˜eina_file_unlink’
[-Wimplicit-function-declaration]

7 years agotests: eina_file: check if the fd is really 0 when we set close file to true
Stefan Schmidt [Mon, 13 Feb 2017 13:20:17 +0000 (14:20 +0100)]
tests: eina_file: check if the fd is really 0 when we set close file to true

The return value from create_file_not_empty was saved but never checked if it
really is 0. Whcih should be the case if we call the function with file_close
true.

7 years agotests: eina_file: fix coding style in file_unlink test case
Stefan Schmidt [Mon, 13 Feb 2017 13:12:38 +0000 (14:12 +0100)]
tests: eina_file: fix coding style in file_unlink test case

7 years agotests: eina_file: remove unused variable
Stefan Schmidt [Mon, 13 Feb 2017 13:10:03 +0000 (14:10 +0100)]
tests: eina_file: remove unused variable

7 years agoelm_index: Skip box auto fill when index size is invalid.
Woochan Lee [Mon, 13 Feb 2017 11:21:52 +0000 (20:21 +0900)]
elm_index: Skip box auto fill when index size is invalid.

Summary:
_index_box_auto_fill will be called when user calling elm_index_level_go(), elm_index_omit_enabled_set().

item size re-calculated and each item style reset even index size is invalid.
It can make performance issue during index creation time.

Test Plan:
elementary_test
index sample

Reviewers: taxi2se, jpeg, cedric

Subscribers: cedric, jpeg

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

7 years agoevas gl: Partially fix MSAA for GLES 3 drivers
Jean-Philippe Andre [Mon, 13 Feb 2017 08:42:10 +0000 (17:42 +0900)]
evas gl: Partially fix MSAA for GLES 3 drivers

MSAA (multisampled_render_to_texture) support was implemented with
GLES 2 in mind, but for GLES 3 it comes as a core feature, not as
an extension. Also it relies on renderbuffers, not textures. GL
is awesome.

Note: MSAA still doesn't work!

7 years agowin: Make ELM_ACCEL work with msaa, depth & stencil
Jean-Philippe Andre [Mon, 13 Feb 2017 08:11:56 +0000 (17:11 +0900)]
win: Make ELM_ACCEL work with msaa, depth & stencil

This makes the env var override and the elementary config
global override on accel preference work for not only "gl"
but also advanced configs such as "gl:msaa_high:depth:stencil"

7 years agodoxygen: Fix typos & invalid statements in ecore
Myoungwoon Roy, Kim [Mon, 13 Feb 2017 06:29:11 +0000 (15:29 +0900)]
doxygen: Fix typos & invalid statements in ecore

This covers ecore audio, avahi, buffer and con.

Summary: There are some typos and cacologigue statements in
doxygen of ecore_audio, ecore_avahi, ecore_buffer, and ecore_con.

Test Plan: API Doxygen Revision

Reviewers: stefan, cedric, raster, Jaehyun_Cho

Subscribers: jpeg, conr2d

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

7 years agodoxygen: Fix typos & invalid statements in Ecore_Getopt and Ecore_Legacy
Myoungwoon Roy, Kim [Mon, 13 Feb 2017 06:29:01 +0000 (15:29 +0900)]
doxygen: Fix typos & invalid statements in Ecore_Getopt and Ecore_Legacy

Summary: There are some typos and calogique statements in doxygen
of Ecore_Getopt and Ecore_Legacy so I had fixed typos and cacologique statements.

Test Plan: Doxygen revision

Reviewers: stefan, cedric, raster, Jaehyun_Cho

Subscribers: jpeg, conr2d

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

7 years agoEvasGL: For depth&stencil&msaa, use renderbuffer instead of texture
Minkyoung Kim [Mon, 13 Feb 2017 06:11:56 +0000 (15:11 +0900)]
EvasGL: For depth&stencil&msaa, use renderbuffer instead of texture

Summary:
glFramebufferTexture2DMultisampleEXT() supports color attachment only.
so depth&stencil attachment should be bound via renderbuffer not texture.

According to http://www.khronos.org/registry/OpenGL/extensions/EXT/EXT_multisampled_render_to_texture.txt
In order to allow the use of multisampled depth and stencil buffers
when performing multisampled rendering to a texture, the extension
also adds the command RenderbufferStorageMultisampleEXT.
target, textarget, texture, and level correspond to the same
parameters for FramebufferTexture2D and have the same restrictions.
attachment must be COLOR_ATTACHMENT0.

Test Plan: Evas GL on GLES 3

Reviewers: jpeg, raster, dkdk, wonsik

Tags: #efl

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

7 years agoefl net proxy helper - use infinite for and sleeps instead of pause
Carsten Haitzler (Rasterman) [Mon, 13 Feb 2017 10:00:47 +0000 (19:00 +0900)]
efl net proxy helper - use infinite for and sleeps instead of pause

so the process was waiting to be killed (waiting forever) and i used
pause() but this isnt windows-friendly, so since this process expects
to be killed by the parent process, then use a for (;;) with lon long
long sleeps... instead.

this shoud fix T5174

7 years agoconfigure - eolian seemingly still needs evil due to eina
Carsten Haitzler (Rasterman) [Mon, 13 Feb 2017 09:54:43 +0000 (18:54 +0900)]
configure - eolian seemingly still needs evil due to eina

this should fix T5172

7 years agovpath file - add a keey property to know if obj should be kept around
Carsten Haitzler (Rasterman) [Mon, 13 Feb 2017 06:29:09 +0000 (15:29 +0900)]
vpath file - add a keey property to know if obj should be kept around

if its a file downloading (to a tmp location) or a zip/tar/whatever
file being extracted also to a tmp location and that tmp file needs to
be removed after ...you need to keep the obj around to know when to
delete the file. this makes the keeping optional and you query if the
vpath obj is meant to be kept or not. if it's not it's safe to del
immediately.

this cuts down 1 obj per image obj/edje obj when generally unused.
save some mem.

7 years agoevas: fix bugs in gif image loader
Jaeun Choi [Fri, 10 Feb 2017 07:56:50 +0000 (16:56 +0900)]
evas: fix bugs in gif image loader

gif's logical screen size (which is considered the image size)
might be different from the size of each frame.
when decoding a frame, the width and height of the decoded data should be
based on the size of the frame, not on the size of the logical screen size.
if a frame is decoded into a buffer of screen size, this might happen

(frame = 6 X 3, logical screen = 5 X 3)
OOOXXX      OOOXX
OOOXXX  =>  XOOOX
OOOXXX      XXOOO

@fix

7 years agoevas gl common - make render op explicitly signed as we set it to -1
Carsten Haitzler (Rasterman) [Sun, 12 Feb 2017 06:48:51 +0000 (15:48 +0900)]
evas gl common - make render op explicitly signed as we set it to -1

this just is cleaner and now also matches types for render_op in gl
common context.

7 years agoeina inlist - cast container via void ptr to avoid warnings
Carsten Haitzler (Rasterman) [Sun, 12 Feb 2017 05:45:04 +0000 (14:45 +0900)]
eina inlist - cast container via void ptr to avoid warnings

we really can't do much here but our direct casting causes warnings in
apps or anyone using this macro so keep things silent as our pointer
tricks are actually ok but the compiler can't figure it out.

7 years agoevas_table: abort when there is already the option struct
Marcel Hollerbach [Sat, 11 Feb 2017 22:20:22 +0000 (23:20 +0100)]
evas_table: abort when there is already the option struct

otherwise we would just reuse that struct. This results in
freeing/writing/reading the memory twice.

This error message should give the dev a tip on what went wrong, instead
of leaving cryptic valgrind messages and crashes.

This fixes the sysinfo desktop gadget in enlightenment.

ref T5173

7 years agoevas: fix child position when the container is moved
Marcel Hollerbach [Sat, 11 Feb 2017 22:16:25 +0000 (23:16 +0100)]
evas: fix child position when the container is moved

when the position of the container is changed the children should also be
repositioned, so setting the changed flag.

The visual effect where you saw that was in luncher where items of the
bar did not get fully up.

7 years agoevlog/log bt - fix size casting tot stop warning when printing errs
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 15:29:01 +0000 (00:29 +0900)]
evlog/log bt - fix size casting tot stop warning when printing errs

7 years agoevas color copy neon asm - declare tmp as output not input for warning--
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 14:08:28 +0000 (23:08 +0900)]
evas color copy neon asm - declare tmp as output not input for warning--

less warnings - use output not input for tmp var. much better.

7 years agoeo base - fix warnings for debug logs to get format string types happy
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 13:53:04 +0000 (22:53 +0900)]
eo base - fix warnings for debug logs to get format string types happy

gcc is very unhappy with these log prints - specifically on arm 32bit.
this fixes it so we can focus on real warnings/issues.

7 years agoevas generic loader ps - fix warning about printf format mismatch type
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 13:41:22 +0000 (22:41 +0900)]
evas generic loader ps - fix warning about printf format mismatch type

it's right. types are uint but format exects unsigned long. fix.

7 years agoevas wayland egl engine - fix warning about struct wl_resource not used
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 13:29:26 +0000 (22:29 +0900)]
evas wayland egl engine - fix warning about struct wl_resource not used

this struct is not actually used other than in this func ptr decl and
it's warning-land for gcc, so .. make it void * and do things like
pretty much all other gl extn func ptrs... be very generic

7 years agoevas gl drm engine - fix warning about struct wl_resource not used
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 13:27:21 +0000 (22:27 +0900)]
evas gl drm engine - fix warning about struct wl_resource not used

this struct is not actually used other than in this func ptr decl and
it's warning-land for gcc, so .. make it void * and do things like
pretty much all other gl extn func ptrs... be very generic

7 years agoevas smooth scaler - fix warning where indenting is misleading
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 13:21:48 +0000 (22:21 +0900)]
evas smooth scaler - fix warning where indenting is misleading

indeed the indenting is misleading. fix.

7 years agoevas blit main - put mmx funcs in ifdefs as they are not used on arm
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 04:25:25 +0000 (13:25 +0900)]
evas blit main - put mmx funcs in ifdefs as they are not used on arm

fixes warning

7 years agoevas draw func get - make pixels as unused as it is in neon asm cases
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 04:22:40 +0000 (13:22 +0900)]
evas draw func get - make pixels as unused as it is in neon asm cases

also a little shitespace cleanup and correct ()ing of ops to clean
this function up a bit.

7 years agoevas convert color - neon asm - fix warning by casting - no side effects
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 04:21:30 +0000 (13:21 +0900)]
evas convert color - neon asm - fix warning by casting - no side effects

it's a warning one way or another so reduce noise with a harmless case
as passing in a pit ro a 32bit type is more restrictive than the ptr
it accepts (an 8bit type)

7 years agoefl base class - fix warning about comparing differing sizes
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 04:13:19 +0000 (13:13 +0900)]
efl base class - fix warning about comparing differing sizes

yes - we compare a difference between 2 ptrs and an index which is a
uint. the safe thing here is to promote the unit to the ptrdiff_t
type. reality is we cant have more than 2^32 cb's on an object
anyway... so this should be ok.

7 years agoefl io - fix using wrong type for return values pointed to
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 04:06:16 +0000 (13:06 +0900)]
efl io - fix using wrong type for return values pointed to

this potentially could be a bug on 32bit systems. this fixes that and
addresses the warning that pointed it out

7 years agoecore pipe - fix warning of comparing integers of differing sizes
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 04:05:44 +0000 (13:05 +0900)]
ecore pipe - fix warning of comparing integers of differing sizes

7 years agoelm code - silence possibly uninitialied compiler warnings
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 01:39:42 +0000 (10:39 +0900)]
elm code - silence possibly uninitialied compiler warnings

every time i build efl i see all these warnigns spew by about elm_code
and possibly uninited vars being used. yes - they're filled in via ptr
ref bya  func but gcc definitely seems to think they MIGHT not be
filled in in some cases... and either way tyhe cost of setting to 0 is
minimal and less noise is better so we see real warnings more
easily... :)

7 years agoevas wl shm - fix warning with unused variable
Carsten Haitzler (Rasterman) [Sat, 11 Feb 2017 01:24:42 +0000 (10:24 +0900)]
evas wl shm - fix warning with unused variable

7 years agoevas: use the right structure to not over allocate memory.
Cedric BAIL [Fri, 10 Feb 2017 21:40:44 +0000 (13:40 -0800)]
evas: use the right structure to not over allocate memory.

Eina_Trash is designed for storing cached pointer without any memory
consumption. Please be careful with EFL memory consumption.

7 years agoecore-wl2: roundtrip during client disconnect
Mike Blumenkrantz [Fri, 10 Feb 2017 22:23:36 +0000 (17:23 -0500)]
ecore-wl2: roundtrip during client disconnect

ensure all pending requests are processed by the compositor and fixes
session recovery destroy

@fix

7 years agoelm_code: Fix syntax crash on trailing newline in multiline macro
Andy Williams [Fri, 10 Feb 2017 20:16:31 +0000 (20:16 +0000)]
elm_code: Fix syntax crash on trailing newline in multiline macro

@fix

7 years agoecore: Don't call _ecore_fd_valid() in release builds
Derek Foreman [Fri, 10 Feb 2017 17:58:24 +0000 (11:58 -0600)]
ecore: Don't call _ecore_fd_valid() in release builds

Not sure _ecore_fd_valid() is all that useful anymore, as the
commit that introduced it said it would be removed "before release"
a long time ago - it's a debug assist that probably doesn't need
to be in release builds.

(I'm counting syscalls on rpi3 - still, calling this an optimization
seems like a bit of a stretch.)

7 years agoSysinfo gadget themes: Account for vertical theme.
Stephen 'Okra' Houston [Fri, 10 Feb 2017 17:58:46 +0000 (11:58 -0600)]
Sysinfo gadget themes: Account for vertical theme.

7 years agoefl_object: document when callbacks are called
Marcel Hollerbach [Fri, 10 Feb 2017 17:49:36 +0000 (18:49 +0100)]
efl_object: document when callbacks are called

7 years agoecore_wl2: Update compositor bind now that damage_buffer is released
Derek Foreman [Fri, 10 Feb 2017 16:25:53 +0000 (10:25 -0600)]
ecore_wl2: Update compositor bind now that damage_buffer is released

We had to do some weird special case stuff when binding wl_compositor
because we implemented damage buffer before depending on a wayland
release that provided it.

Now our wayland dep is newer than damage buffer, so the test can be
more conventional.

Should have no functional change.

7 years agoeolian: silence static analyzer null check (CID 1369018)
Daniel Kolesa [Fri, 10 Feb 2017 15:56:35 +0000 (16:56 +0100)]
eolian: silence static analyzer null check (CID 1369018)

7 years agoeolian: fix memory leak in doc tokens (CID 1367505)
Daniel Kolesa [Fri, 10 Feb 2017 15:54:19 +0000 (16:54 +0100)]
eolian: fix memory leak in doc tokens (CID 1367505)

7 years agovpath usage - simplify to bare minimum to make gustavo happy
Carsten Haitzler (Rasterman) [Thu, 9 Feb 2017 23:58:29 +0000 (08:58 +0900)]
vpath usage - simplify to bare minimum to make gustavo happy

since these are only local path resolves, the do and wait are
technically not needed. also remove any other tmp strings
and use the vpath string resolving feature to avoid
printfs/strjoins/cats etc. etc. as well.

also remember to remove old name string from evas shm code - it worked
for me. i guess i was lucky and it happened to be NULL thus free was
fine.

7 years agobuild: add mapping between ecore_file and ecore-file for pkgconfig files
Stefan Schmidt [Fri, 10 Feb 2017 09:55:19 +0000 (10:55 +0100)]
build: add mapping between ecore_file and ecore-file for pkgconfig files

elua.pc was depending on a ecore_file pc file it is named ecore-file. We have
mapping for similar cases. This one was just forgotten it seems.

Fixes T5075

7 years agosrc/utils: remove no longer used gitigonre and directories
Stefan Schmidt [Fri, 10 Feb 2017 09:02:23 +0000 (10:02 +0100)]
src/utils: remove no longer used gitigonre and directories

When the XCB support was removed end of last year the .gitignore file left
behind. It was the only file still sitting in the src/utils tree so git removes
the whoile subtree now.

7 years agonet_proxy_helper: fix typo in dependencies
Romain Naour [Thu, 9 Feb 2017 22:42:14 +0000 (23:42 +0100)]
net_proxy_helper: fix typo in dependencies

Fixes:
error: cannot find the library 'lib/eina/libeina.la' or unhandled argument 'lib/eina/libeina.la'

Signed-off-by: Romain Naour <romain.naour@gmail.com>
7 years agoeina_modinfo: add missing dependency on libeina.la
Romain Naour [Thu, 9 Feb 2017 22:14:39 +0000 (23:14 +0100)]
eina_modinfo: add missing dependency on libeina.la

Fixes:
libtool:   error: cannot find the library 'lib/eina/libeina.la' or unhandled
argument 'lib/eina/libeina.la'

Signed-off-by: Romain Naour <romain.naour@gmail.com>
7 years agoelementary-cxx: Make C++ test compile a not used archive so linking can be avoided
Felipe Magno de Almeida [Thu, 9 Feb 2017 23:24:33 +0000 (21:24 -0200)]
elementary-cxx: Make C++ test compile a not used archive so linking can be avoided

Fixes linking errors for some older combos of C++ compiler and linker.

T2838

7 years agorelease: Update NEWS and bump version for 1.19.0-alpha1 release
Stefan Schmidt [Thu, 9 Feb 2017 15:44:06 +0000 (16:44 +0100)]
release: Update NEWS and bump version for 1.19.0-alpha1 release

7 years agoRevert "vpath usage - simplify to bare minimum to make gustavo happy"
Derek Foreman [Thu, 9 Feb 2017 14:58:03 +0000 (08:58 -0600)]
Revert "vpath usage - simplify to bare minimum to make gustavo happy"

This reverts commit 2037474dc0fd2b360452f2a15abcbe533b57ca37.

This causes the wayland_shm engine to seg fault immediately at
startup when attempting to create shm buffers.

Please make sure when committing changes to the wayland_shm engine to
test on intel, exynos, and at least one platform without dmabuf
capabilities - or using the EVAS_WAYLAND_SHM_DISABLE_DMABUF env var
to disable dmabuf on intel or exynos.

Anyone without the time or hardware to fully test changes to wayland_shm
can submit a patch to phabricator and assign it to me so I can fully
test it before landing.

7 years agodocs: avoid possible duplicates when figuring out all impls of a func
Daniel Kolesa [Thu, 9 Feb 2017 15:04:59 +0000 (16:04 +0100)]
docs: avoid possible duplicates when figuring out all impls of a func

7 years agodocs: list all existing implements of a method/property
Daniel Kolesa [Thu, 9 Feb 2017 14:58:22 +0000 (15:58 +0100)]
docs: list all existing implements of a method/property

7 years agodocs: reverse inheritance hierarchy api in doctree
Daniel Kolesa [Thu, 9 Feb 2017 14:25:10 +0000 (15:25 +0100)]
docs: reverse inheritance hierarchy api in doctree