platform/upstream/efl.git
6 years agowidget: Use rectangle for focus_hilight
Jean-Philippe Andre [Tue, 29 Aug 2017 06:59:40 +0000 (15:59 +0900)]
widget: Use rectangle for focus_hilight

Ref T5363

6 years agowidget: Mark focus_region_show as protected (EO)
Jean-Philippe Andre [Tue, 29 Aug 2017 05:48:48 +0000 (14:48 +0900)]
widget: Mark focus_region_show as protected (EO)

This function is meant to be used by the widgets themselves, or internal
features such as elm_access.

Also remove const tag: this function call is definitely modifying the
widget (panning around and all that).

Ref T5363

6 years agowidget: Simplify code with rectangle (EO)
Jean-Philippe Andre [Tue, 29 Aug 2017 05:29:45 +0000 (14:29 +0900)]
widget: Simplify code with rectangle (EO)

This replaces x,y,w,h with a rectangle in parts of the focus_region
code.

Ref T5363

6 years agowidget: Merge on_focus_region and focus_region_get
Jean-Philippe Andre [Tue, 29 Aug 2017 05:18:50 +0000 (14:18 +0900)]
widget: Merge on_focus_region and focus_region_get

This simplifies code and API.

Ref T5363

6 years agowidget: Improve access_info doc
Jean-Philippe Andre [Tue, 29 Aug 2017 04:50:56 +0000 (13:50 +0900)]
widget: Improve access_info doc

Ref T5363

6 years agoaccess: Fix crash in ecore
Jean-Philippe Andre [Tue, 29 Aug 2017 04:33:49 +0000 (13:33 +0900)]
access: Fix crash in ecore

We use a temporary file for espeak (the accessibility text-to-speech
engine we use), and then we remove and close the file. But the fd was
not reset to -1 which meant that later on the previous fd was closed
again (this is kinda weird), but that fd was now invalid. Or rather it
was reused by ecore animator, closing the read-end of the pipe
(timer_fd_read). This caused SIGPIPE in the animator code.

Thanks strace and gdb for helping me figure out this. :)

@fix

6 years agoevas: Fix automatic visible set (EO)
Jean-Philippe Andre [Tue, 29 Aug 2017 01:55:56 +0000 (10:55 +0900)]
evas: Fix automatic visible set (EO)

This fixes a case where an object is hidden before the first render.
When called from elementary. the visible intercept code would be called
before evas object's visible_set, bypassing the line setting visible_set
to true.

As a consequence the object would be visible even when explicitly
requested as hidden.

Thanks @JackDanielZ for the report!

6 years agoevas: Fix a few shadow warnings
Jean-Philippe Andre [Tue, 29 Aug 2017 01:43:33 +0000 (10:43 +0900)]
evas: Fix a few shadow warnings

6 years agowidget: Rename hook "access" (EO)
Jean-Philippe Andre [Thu, 24 Aug 2017 06:31:05 +0000 (15:31 +0900)]
widget: Rename hook "access" (EO)

This is also another protected and beta API. Meant to be overridden by
subclasses, but belongs to a still unstable API.

The difference between the internal legacy and the EO API is really bad.
Same as with activate (previous commit).

Ref T5363

6 years agowidget: Rename hook "activate" (EO)
Jean-Philippe Andre [Thu, 24 Aug 2017 06:21:59 +0000 (15:21 +0900)]
widget: Rename hook "activate" (EO)

This is for accessibility only. Protected function.

Also marked as beta as elm_access isn't going to be stable in EO (yet).

Ref T5363

6 years agowidget: Remove useless import in EO file
Jean-Philippe Andre [Thu, 24 Aug 2017 06:01:19 +0000 (15:01 +0900)]
widget: Remove useless import in EO file

Ref T5363

6 years agowidget: Make theme_apply a protected function (EO)
Jean-Philippe Andre [Thu, 24 Aug 2017 05:33:36 +0000 (14:33 +0900)]
widget: Make theme_apply a protected function (EO)

This is a strange function but absolutely necessary to implement a
widget. Even non-layout widgets may override this.

Ref T5363

6 years agowidget: Rename hook "disable" (EO)
Jean-Philippe Andre [Thu, 24 Aug 2017 05:06:32 +0000 (14:06 +0900)]
widget: Rename hook "disable" (EO)

Renamed to on_disabled_update.
Also passed in the new state of disabled. It's more convenient this way,
than having the subclasses call disabled_get.

Also simplify some code...

Ref T5363

6 years agowidget: Rename hook "orientation" (EO)
Jean-Philippe Andre [Thu, 24 Aug 2017 04:45:01 +0000 (13:45 +0900)]
widget: Rename hook "orientation" (EO)

Renamed to on_orientation_update

This internal / virtual function is in fact not overridden anywhere. Not
sure it is necessary to expose it in EO API?

Ref T5363

6 years agoeina_value: silent -Wextra for EINA_VALUE_EMPTY
Gustavo Sverzut Barbieri [Mon, 28 Aug 2017 21:26:29 +0000 (18:26 -0300)]
eina_value: silent -Wextra for EINA_VALUE_EMPTY

-Wextra complains about missing initializers, so provide the full 8
 bytes of the first member of the union.

6 years agoevas: handle new API use correctly for gl_drm backend.
Cedric Bail [Mon, 28 Aug 2017 18:32:13 +0000 (11:32 -0700)]
evas: handle new API use correctly for gl_drm backend.

6 years agoevas: fixup warning.
Cedric Bail [Mon, 28 Aug 2017 18:13:40 +0000 (11:13 -0700)]
evas: fixup warning.

6 years agotheme: add slight inset for dialog content
Mike Blumenkrantz [Mon, 28 Aug 2017 16:04:13 +0000 (12:04 -0400)]
theme: add slight inset for dialog content

6 years agoeolian: funcptr docs in correct place, remove more qualifiers
Daniel Kolesa [Mon, 28 Aug 2017 15:27:47 +0000 (17:27 +0200)]
eolian: funcptr docs in correct place, remove more qualifiers

6 years agoeolian: less clumsy return type handling
Daniel Kolesa [Mon, 28 Aug 2017 15:22:09 +0000 (17:22 +0200)]
eolian: less clumsy return type handling

6 years agoeolian: remove unused qualifiers from func pointers
Daniel Kolesa [Mon, 28 Aug 2017 15:20:18 +0000 (17:20 +0200)]
eolian: remove unused qualifiers from func pointers

6 years agobuild: evas: fix names of jpeg200 test images
Stefan Schmidt [Mon, 28 Aug 2017 14:45:21 +0000 (16:45 +0200)]
build: evas: fix names of jpeg200 test images

The suffix for both of them has been wrong.

6 years agoNetstatus gadget: a new decent design
Dave Andreoli [Sun, 27 Aug 2017 09:46:39 +0000 (11:46 +0200)]
Netstatus gadget: a new decent design

I'm still not really happy with this design, because 2 arrows are not
enough to understand it is "network"... but at least it looks good now :)

6 years agoTheme updates: Luncher icon indicator not relative. New pager plain style.
Stephen 'Okra' Houston [Sat, 26 Aug 2017 19:04:01 +0000 (14:04 -0500)]
Theme updates: Luncher icon indicator not relative. New pager plain style.

6 years agoevas: fix build with egl.
Cedric BAIL [Fri, 25 Aug 2017 22:44:19 +0000 (15:44 -0700)]
evas: fix build with egl.

6 years agotheme: let notifications wrap
Mike Blumenkrantz [Fri, 25 Aug 2017 18:47:30 +0000 (14:47 -0400)]
theme: let notifications wrap

infinitely wide notification popups are hard to read

6 years agoevas image cache: notify preload for image objects without explicit callbacks
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
evas image cache: notify preload for image objects without explicit callbacks

non-gl images do not have an explicit callback and so the preload inform callback
must be triggered manually for all cases

fix T5200

6 years agoevas image cache: break out preload complete notification code into function
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
evas image cache: break out preload complete notification code into function

no functional changes

6 years agoefl_ui_image: maintain geometry for prev image while preloading new image
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
efl_ui_image: maintain geometry for prev image while preloading new image

if prev_img exists then it is visible, so continue maintaining its geometry
until it is deleted

fix T5936

@fix

6 years agoelm_win: check for wayland engine during finalize by checking for wl win
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
elm_win: check for wayland engine during finalize by checking for wl win

fake wins don't provide engine info, but a wl win will still exist

@fix

6 years agoelm_win: update opaque region for fake windows
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
elm_win: update opaque region for fake windows

fake windows still gotta render

@fix

6 years agoefl-wl: match nested wl seats based on display ordering
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
efl-wl: match nested wl seats based on display ordering

a nested compositor will have a mismatch between canvas seat id and
compositor seat id, so this attempts to perform matching based on the
order that they are listed, which should be identical

@fix

6 years agoecore-wl2: normalize axis event values
Mike Blumenkrantz [Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)]
ecore-wl2: normalize axis event values

this is value * 10 from the compositor, so /= 10 to get real value

fix T5427

@fix

6 years agoevas: enable rendering of multiple output.
Cedric BAIL [Fri, 25 Aug 2017 17:55:15 +0000 (10:55 -0700)]
evas: enable rendering of multiple output.

6 years agoevas: no more ENDT.
Cedric BAIL [Fri, 25 Aug 2017 17:55:06 +0000 (10:55 -0700)]
evas: no more ENDT.

6 years agoevas: move updates to be per output.
Cedric BAIL [Fri, 25 Aug 2017 17:55:02 +0000 (10:55 -0700)]
evas: move updates to be per output.

6 years agoevas: decorrelate canvas size from output size.
Cedric BAIL [Fri, 25 Aug 2017 17:54:59 +0000 (10:54 -0700)]
evas: decorrelate canvas size from output size.

6 years agoevas gl: fix glview by avoiding make current
Cedric BAIL [Fri, 25 Aug 2017 17:54:55 +0000 (10:54 -0700)]
evas gl: fix glview by avoiding make current

gl_generic_context_find() returns the gl shared context struct but
this is not just a read-only operation. It in turn calls window_use
which may call make_current. This can invalidate the work of evas gl
when the API tried to switch to a specific context.

This fixes evas gl with multiple outputs.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
6 years agoevas: remove dead code to improve readability.
Cedric BAIL [Fri, 25 Aug 2017 17:54:52 +0000 (10:54 -0700)]
evas: remove dead code to improve readability.

6 years agoevas: make Evas_GL work with multi output.
Cedric BAIL [Fri, 25 Aug 2017 17:54:19 +0000 (10:54 -0700)]
evas: make Evas_GL work with multi output.

6 years agoevas: reorder rendering phase to group output related operation.
Cedric BAIL [Fri, 25 Aug 2017 17:52:52 +0000 (10:52 -0700)]
evas: reorder rendering phase to group output related operation.

6 years agoevas: Evas_Canvas3D rendering logic need a complete overhaul.
Cedric BAIL [Fri, 25 Aug 2017 17:52:48 +0000 (10:52 -0700)]
evas: Evas_Canvas3D rendering logic need a complete overhaul.

For now, do not use Evas_Canvas3D in multi output context, it won't work.
The update code for Evas_Canvas3D_Node might trigger rendering logic, which
is opposite to what the scene graph logic should do. It require to much
reshuffle around to handle that case at the moment. So I am just adding a
warning.

6 years agoevas: propagate output in evas_render_updates_internal_loop instead of using ENDT.
Cedric BAIL [Fri, 25 Aug 2017 17:52:42 +0000 (10:52 -0700)]
evas: propagate output in evas_render_updates_internal_loop instead of using ENDT.

6 years agoevas: enable handling multi output in evas_render_mapped.
Cedric BAIL [Fri, 25 Aug 2017 17:52:38 +0000 (10:52 -0700)]
evas: enable handling multi output in evas_render_mapped.

6 years agoevas: propagate output to evas_render_mask_subrender and don't use ENDT there.
Cedric BAIL [Fri, 25 Aug 2017 17:52:33 +0000 (10:52 -0700)]
evas: propagate output to evas_render_mask_subrender and don't use ENDT there.

6 years agoevas: use output instead of default one during rendering of proxy.
Cedric BAIL [Fri, 25 Aug 2017 17:52:29 +0000 (10:52 -0700)]
evas: use output instead of default one during rendering of proxy.

6 years agoevas: remove unused engine data from error set/get code.
Cedric BAIL [Fri, 25 Aug 2017 17:52:26 +0000 (10:52 -0700)]
evas: remove unused engine data from error set/get code.

6 years agoevas: destroy seats and inputs before the display disapear.
Cedric BAIL [Fri, 25 Aug 2017 17:52:22 +0000 (10:52 -0700)]
evas: destroy seats and inputs before the display disapear.

6 years agoevas: no more use of ENDT outside of evas_render.
Cedric BAIL [Fri, 25 Aug 2017 17:52:18 +0000 (10:52 -0700)]
evas: no more use of ENDT outside of evas_render.

6 years agoevas: make vector graphic support multi output.
Cedric BAIL [Fri, 25 Aug 2017 17:52:14 +0000 (10:52 -0700)]
evas: make vector graphic support multi output.

6 years agoevas: do not use default output or any other during render pre.
Cedric BAIL [Fri, 25 Aug 2017 17:52:10 +0000 (10:52 -0700)]
evas: do not use default output or any other during render pre.

6 years agoevas: remove unecessary use of output in filter code.
Cedric BAIL [Fri, 25 Aug 2017 17:52:07 +0000 (10:52 -0700)]
evas: remove unecessary use of output in filter code.

6 years agoevas: make image_native_set use engine context not output.
Cedric BAIL [Fri, 25 Aug 2017 17:52:03 +0000 (10:52 -0700)]
evas: make image_native_set use engine context not output.

6 years agoevas: make all window GLES3 or none.
Cedric BAIL [Fri, 25 Aug 2017 17:51:59 +0000 (10:51 -0700)]
evas: make all window GLES3 or none.

6 years agoevas: make function to find evas gl context from engine shared across backend.
Cedric BAIL [Fri, 25 Aug 2017 17:51:56 +0000 (10:51 -0700)]
evas: make function to find evas gl context from engine shared across backend.

6 years agoevas: make filter handle multi output.
Cedric BAIL [Fri, 25 Aug 2017 17:51:53 +0000 (10:51 -0700)]
evas: make filter handle multi output.

6 years agoevas: make Evas_GL start to use engine and output separately.
Cedric BAIL [Fri, 25 Aug 2017 17:51:47 +0000 (10:51 -0700)]
evas: make Evas_GL start to use engine and output separately.

6 years agoevas: convert Evas3D use of output to engine when meaningful.
Cedric BAIL [Fri, 25 Aug 2017 17:51:44 +0000 (10:51 -0700)]
evas: convert Evas3D use of output to engine when meaningful.

6 years agoevas: find a best possible output to manage an object to get pixels from.
Cedric BAIL [Fri, 25 Aug 2017 17:51:40 +0000 (10:51 -0700)]
evas: find a best possible output to manage an object to get pixels from.

The code shouldn't really need an output for getting the pixels, it just
happen that some of the backend function really need one to get a GL context.

6 years agoevas: remove dead code that won't be easy to bring back to life.
Cedric BAIL [Fri, 25 Aug 2017 17:51:36 +0000 (10:51 -0700)]
evas: remove dead code that won't be easy to bring back to life.

6 years agoevas: all context function use already ENC.
Cedric BAIL [Fri, 25 Aug 2017 17:51:31 +0000 (10:51 -0700)]
evas: all context function use already ENC.

6 years agoevas: remove image_content_hint_get from backend as it is unused.
Cedric BAIL [Fri, 25 Aug 2017 17:51:27 +0000 (10:51 -0700)]
evas: remove image_content_hint_get from backend as it is unused.

6 years agoevas: switch font backend function to rely on engine instead of output.
Cedric BAIL [Fri, 25 Aug 2017 17:51:24 +0000 (10:51 -0700)]
evas: switch font backend function to rely on engine instead of output.

6 years agoevas: handle multiple output for plane assignment.
Cedric BAIL [Fri, 25 Aug 2017 17:51:20 +0000 (10:51 -0700)]
evas: handle multiple output for plane assignment.

6 years agoevas: convert evas backend cache function call to use Engine context.
Cedric BAIL [Fri, 25 Aug 2017 17:51:17 +0000 (10:51 -0700)]
evas: convert evas backend cache function call to use Engine context.

6 years agoevas: remove image_surface_noscale_region_get from engine backend as it is unused.
Cedric BAIL [Fri, 25 Aug 2017 17:51:13 +0000 (10:51 -0700)]
evas: remove image_surface_noscale_region_get from engine backend as it is unused.

6 years agoevas: move all image object related function to use the engine instead of the output.
Cedric BAIL [Fri, 25 Aug 2017 17:51:10 +0000 (10:51 -0700)]
evas: move all image object related function to use the engine instead of the output.

6 years agoevas: forgotten convertion from output to engine.
Cedric BAIL [Fri, 25 Aug 2017 17:51:05 +0000 (10:51 -0700)]
evas: forgotten convertion from output to engine.

6 years agoevas: gl_common should not segv on freeing a NULL gl_image.
Cedric BAIL [Fri, 25 Aug 2017 17:50:59 +0000 (10:50 -0700)]
evas: gl_common should not segv on freeing a NULL gl_image.

6 years agoevas: add infrastructure to find a gl_context from a GL_Engine.
Cedric BAIL [Fri, 25 Aug 2017 17:50:45 +0000 (10:50 -0700)]
evas: add infrastructure to find a gl_context from a GL_Engine.

6 years agoevas: switch all image animation engine related function to use ENC instead of an...
Cedric BAIL [Fri, 25 Aug 2017 17:50:40 +0000 (10:50 -0700)]
evas: switch all image animation engine related function to use ENC instead of an output.

6 years agoevas: introduce a engine_new/free in gl_generic backend.
Cedric BAIL [Fri, 25 Aug 2017 17:50:35 +0000 (10:50 -0700)]
evas: introduce a engine_new/free in gl_generic backend.

6 years agoevas: refactor the call to window_use.
Cedric BAIL [Fri, 25 Aug 2017 17:50:31 +0000 (10:50 -0700)]
evas: refactor the call to window_use.

6 years agoevas: refactor gl_generic use of window_use with context_get.
Cedric BAIL [Fri, 25 Aug 2017 17:49:59 +0000 (10:49 -0700)]
evas: refactor gl_generic use of window_use with context_get.

6 years agoevas: differentiate engine from output.
Cedric BAIL [Fri, 25 Aug 2017 17:49:53 +0000 (10:49 -0700)]
evas: differentiate engine from output.

6 years agoevas: fix order in function of engine and output use for text operation.
Cedric BAIL [Fri, 25 Aug 2017 17:49:49 +0000 (10:49 -0700)]
evas: fix order in function of engine and output use for text operation.

6 years agoevas: simplify drm output cleanup code.
Cedric BAIL [Fri, 25 Aug 2017 17:49:46 +0000 (10:49 -0700)]
evas: simplify drm output cleanup code.

6 years agoevas: refactor ddraw engine to have less useless indirection function call.
Cedric BAIL [Fri, 25 Aug 2017 17:49:42 +0000 (10:49 -0700)]
evas: refactor ddraw engine to have less useless indirection function call.

6 years agoevas: refactor gdi to have less useless function redirection.
Cedric BAIL [Fri, 25 Aug 2017 17:49:37 +0000 (10:49 -0700)]
evas: refactor gdi to have less useless function redirection.

6 years agoevas: refactor drm engine to have useless function redirection.
Cedric BAIL [Fri, 25 Aug 2017 17:49:32 +0000 (10:49 -0700)]
evas: refactor drm engine to have useless function redirection.

6 years agoevas: refactor wayland_shm backend to have less useless function redirection.
Cedric BAIL [Fri, 25 Aug 2017 17:49:28 +0000 (10:49 -0700)]
evas: refactor wayland_shm backend to have less useless function redirection.

6 years agoevas: refactor fb engine to have less useless function redirection.
Cedric BAIL [Fri, 25 Aug 2017 17:49:23 +0000 (10:49 -0700)]
evas: refactor fb engine to have less useless function redirection.

6 years agoevas: refactor buffer engine to have less indirect useless call.
Cedric BAIL [Fri, 25 Aug 2017 17:49:19 +0000 (10:49 -0700)]
evas: refactor buffer engine to have less indirect useless call.

6 years agoevas: Render_Engine_Swap_Mode is actually about output swap.
Cedric BAIL [Fri, 25 Aug 2017 17:49:15 +0000 (10:49 -0700)]
evas: Render_Engine_Swap_Mode is actually about output swap.

6 years agoevas: Render_Engine_Merge_Mode is actually about output.
Cedric BAIL [Fri, 25 Aug 2017 17:49:11 +0000 (10:49 -0700)]
evas: Render_Engine_Merge_Mode is actually about output.

6 years agoevas: reduce duplication of merge_mode getenv logic.
Cedric BAIL [Fri, 25 Aug 2017 17:49:06 +0000 (10:49 -0700)]
evas: reduce duplication of merge_mode getenv logic.

6 years agoefl: remove PS3 backend.
Cedric BAIL [Fri, 25 Aug 2017 17:48:42 +0000 (10:48 -0700)]
efl: remove PS3 backend.

This backend has received no patch and maintenance from anyone who could
actually test it over the last few years. After talking with KaKaRoTo it
is best to remove it. If anyone want to take over its maintenance, you
are welcome to revert this patch.

6 years agoevas: follow all other engines convention and use ORD macro.
Cedric BAIL [Fri, 25 Aug 2017 17:48:37 +0000 (10:48 -0700)]
evas: follow all other engines convention and use ORD macro.

6 years agoevas: make the info size a parameter of the function to make it safer to roll in.
Cedric BAIL [Fri, 25 Aug 2017 17:48:20 +0000 (10:48 -0700)]
evas: make the info size a parameter of the function to make it safer to roll in.

6 years agoevas: refactor the creation of the output info logic in libevas.
Cedric BAIL [Fri, 25 Aug 2017 17:48:17 +0000 (10:48 -0700)]
evas: refactor the creation of the output info logic in libevas.

6 years agoevas: factorize call to info and info_free.
Cedric BAIL [Fri, 25 Aug 2017 17:48:13 +0000 (10:48 -0700)]
evas: factorize call to info and info_free.

6 years agoevas: all this function (info, setup and update) are really output related.
Cedric BAIL [Fri, 25 Aug 2017 17:48:09 +0000 (10:48 -0700)]
evas: all this function (info, setup and update) are really output related.

6 years agoevas: nobody actually call the tile size set API.
Cedric BAIL [Fri, 25 Aug 2017 17:48:05 +0000 (10:48 -0700)]
evas: nobody actually call the tile size set API.

6 years agoevas: Render_Engine_GL_Generic is actually an output.
Cedric BAIL [Fri, 25 Aug 2017 17:48:00 +0000 (10:48 -0700)]
evas: Render_Engine_GL_Generic is actually an output.

6 years agoevas: do not loose tile size when resizing output.
Cedric BAIL [Fri, 25 Aug 2017 17:47:56 +0000 (10:47 -0700)]
evas: do not loose tile size when resizing output.

6 years agoevas: prevent double tilebuf creation/destruction during window resize.
Cedric BAIL [Fri, 25 Aug 2017 17:47:52 +0000 (10:47 -0700)]
evas: prevent double tilebuf creation/destruction during window resize.

6 years agoevas: all GL backend require strict tilebuf, let's make that the default.
Cedric BAIL [Fri, 25 Aug 2017 17:47:48 +0000 (10:47 -0700)]
evas: all GL backend require strict tilebuf, let's make that the default.

6 years agoevas: no need to double init tilebuf as it is created by software generic.
Cedric BAIL [Fri, 25 Aug 2017 17:47:39 +0000 (10:47 -0700)]
evas: no need to double init tilebuf as it is created by software generic.

6 years agoevas: Render_Engine_Software_Generic is actually Render_Output_Software_Generic.
Cedric BAIL [Fri, 25 Aug 2017 17:47:11 +0000 (10:47 -0700)]
evas: Render_Engine_Software_Generic is actually Render_Output_Software_Generic.

6 years agoevas: engine should not access Evas canvas directly.
Cedric BAIL [Fri, 25 Aug 2017 17:47:03 +0000 (10:47 -0700)]
evas: engine should not access Evas canvas directly.