platform/upstream/efl.git
8 years agoedje: correct function that should have been Eo API already.
Cedric BAIL [Fri, 8 Jan 2016 00:25:17 +0000 (16:25 -0800)]
edje: correct function that should have been Eo API already.

8 years agoemile: move all eina_str_base64 to emile_base64.
Cedric BAIL [Thu, 7 Jan 2016 23:53:12 +0000 (15:53 -0800)]
emile: move all eina_str_base64 to emile_base64.

8 years agoefl: move Ector_Color to be defined in Efl.Gfx as it makes more sense.
Cedric BAIL [Thu, 7 Jan 2016 19:16:33 +0000 (11:16 -0800)]
efl: move Ector_Color to be defined in Efl.Gfx as it makes more sense.

This create some possible naming clash and is why I come up with
efl_gfx_color*_type_set functions. We will have to think about this more
carefully as it makes sense to now pass this colors directly to our color
API. Ideally the default 8 bits interface would become just a convenience
wrapper around the more complex possibility.

8 years agojs: fix binding after namespace change of connector
Lauro Moura [Thu, 7 Jan 2016 18:31:53 +0000 (10:31 -0800)]
js: fix binding after namespace change of connector

Summary:
Update register function after change introduced in
the commit dc560521509b93a58905c8280d7cf9622d4e87c4
changed the native API.

@fix

Reviewers: q66, cedric, felipealmeida

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoecore-evas: Rename ecore_evas_wayland_window_get2 function
Chris Michael [Thu, 7 Jan 2016 20:02:13 +0000 (15:02 -0500)]
ecore-evas: Rename ecore_evas_wayland_window_get2 function

This renames the ecore_evas_wayland_window_get2 function to be
ecore_evas_wayland2_window_get before the 1.17 roll out.

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoecore-wl2: API expose ecore_wl2_input_grab function
Chris Michael [Thu, 7 Jan 2016 16:55:52 +0000 (11:55 -0500)]
ecore-wl2: API expose ecore_wl2_input_grab function

This input_grab function should have been exposed via EAPI for use in
enlightenment, but was missed before the push

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoeina mp: also include malloc_np.h on FreeBSD
Daniel Kolesa [Thu, 7 Jan 2016 15:43:26 +0000 (15:43 +0000)]
eina mp: also include malloc_np.h on FreeBSD

8 years agoeina mp: only include malloc.h on linux
Daniel Kolesa [Thu, 7 Jan 2016 15:31:59 +0000 (15:31 +0000)]
eina mp: only include malloc.h on linux

Elsewhere, everything is in stdlib.h.

@fix

8 years agoecore-drm: Fix formatting
Chris Michael [Thu, 7 Jan 2016 13:55:49 +0000 (08:55 -0500)]
ecore-drm: Fix formatting

NB: No functional changes

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoecore_wayland: set touch_focus window when gets pointer_enter
Duna Oh [Thu, 7 Jan 2016 13:49:36 +0000 (08:49 -0500)]
ecore_wayland: set touch_focus window when gets pointer_enter

Summary:
When user touches the screen, ecore_wayland gets touch_motion event before touch_down event.
But touch_focus would be NULL in cb_touch_motion, so doesn't send ECORE_EVENT_MOUSE_MOVE event to client.
This fix set touch_focus when gets pointer_enter same as pointer_focus.

Test Plan:
when the application is launched for first time, user clicks on any area of the screen.
We can see the posion of touch event wrong.

@fix

Reviewers: devilhorns, raster, ManMower, zmike

Subscribers: input.hacker, cedric, jpeg, JHyun

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

8 years agoEo: Rearrange class creation code a bit.
Tom Hacohen [Thu, 7 Jan 2016 13:00:26 +0000 (13:00 +0000)]
Eo: Rearrange class creation code a bit.

This is not really needed, I just did it to make it easier for coverity
(and future static analysers) to understand that the class id doesn't
need to be accessed with a lock.

CID1341854

8 years agoecore_cocoa: don't redefine EAPI in private header
Jean Guyomarc'h [Tue, 5 Jan 2016 23:19:27 +0000 (00:19 +0100)]
ecore_cocoa: don't redefine EAPI in private header

8 years agoecore_cocoa: don't expose Ecore_Cocoa_Screen in the public API
Jean Guyomarc'h [Tue, 5 Jan 2016 23:06:59 +0000 (00:06 +0100)]
ecore_cocoa: don't expose Ecore_Cocoa_Screen in the public API

8 years agoecore_cocoa: remove unimplemented function
Jean Guyomarc'h [Tue, 5 Jan 2016 22:59:28 +0000 (23:59 +0100)]
ecore_cocoa: remove unimplemented function

8 years agoecore_cocoa: remove non-implemented functions
Jean Guyomarc'h [Tue, 5 Jan 2016 22:55:49 +0000 (23:55 +0100)]
ecore_cocoa: remove non-implemented functions

8 years agoecore_cocoa: possibly avoid useless copies
Jean Guyomarc'h [Tue, 5 Jan 2016 22:51:54 +0000 (23:51 +0100)]
ecore_cocoa: possibly avoid useless copies

8 years agoevas_gl_cocoa: update function parameters
Jean Guyomarc'h [Wed, 6 Jan 2016 22:48:01 +0000 (23:48 +0100)]
evas_gl_cocoa: update function parameters

Commit fd4e133cc1af3351b79946cfb1bc6d79feec9d30 changed the internal
API, but it was not reflected in evas_gl_cocoa.

This commit fix a compiling warning and possible undetermined behaviour.

@fix

8 years agoecore_cocoa: remove unimplemented function
Jean Guyomarc'h [Tue, 5 Jan 2016 22:38:13 +0000 (23:38 +0100)]
ecore_cocoa: remove unimplemented function

8 years agoecore_cocoa: don't use Ecore_Cocoa's EAPI in Eina
Jean Guyomarc'h [Tue, 5 Jan 2016 22:29:35 +0000 (23:29 +0100)]
ecore_cocoa: don't use Ecore_Cocoa's EAPI in Eina

8 years agoecore_con: fix compiling on OS X
Jean Guyomarc'h [Tue, 5 Jan 2016 22:23:04 +0000 (23:23 +0100)]
ecore_con: fix compiling on OS X

IPV6_ADD_MEMBERSHIP does not exist on OS X, and seems to be obsolete,
according to my glibc's bits/in.h.
IPV6_JOIN_GROUP, however, exists on both.

@fix

8 years agoefreet: fix undeclared function
Jean Guyomarc'h [Tue, 5 Jan 2016 22:19:18 +0000 (23:19 +0100)]
efreet: fix undeclared function

libgen is needed on OSX because it contains the prototype
of basename() which is required in the compiling unit.
The result of basename() was therefore implicitely converted into
an integer, which could leed to subtile issues.

@fix

8 years agoEvas filters: Fix minor compilation warning
Jean-Philippe Andre [Thu, 7 Jan 2016 10:19:09 +0000 (19:19 +0900)]
Evas filters: Fix minor compilation warning

8 years agoEina: Move vector2 to eina_inline_vector.x
Jean-Philippe Andre [Thu, 7 Jan 2016 09:58:54 +0000 (18:58 +0900)]
Eina: Move vector2 to eina_inline_vector.x

For consistency.

Also, include inside Eina.h
Thanks @vtorri for the remark.

8 years agoEina Vector2: Move EAPI to static inline
Jean-Philippe Andre [Thu, 7 Jan 2016 08:57:44 +0000 (17:57 +0900)]
Eina Vector2: Move EAPI to static inline

This removes lots of unnecessary symbols

8 years agoEvas filters: Fix async render and unify SW + GL
Jean-Philippe Andre [Thu, 7 Jan 2016 07:54:42 +0000 (16:54 +0900)]
Evas filters: Fix async render and unify SW + GL

SW async render mode was broken because it was party sync, partly
async (bad hack in a recent commit). This patch fixes that by
using a proper callback for render_post (main loop).

Since the engines and ector now abstract all pixel access functions,
the only difference between GL and SW is the async rendering.

8 years agoEvas filters: Run immediately in async mode (flush vs. enqueue)
Jean-Philippe Andre [Thu, 7 Jan 2016 06:55:02 +0000 (15:55 +0900)]
Evas filters: Run immediately in async mode (flush vs. enqueue)

8 years agobuild: add efl as internal dep for eldbus
Romain Naour [Tue, 8 Sep 2015 20:04:23 +0000 (22:04 +0200)]
build: add efl as internal dep for eldbus

The build stop wile building eldbus-codegen:

  CCLD     bin/eldbus/eldbus-codegen
  CXXLD    bin/eolian_cxx/eolian_cxx
  CCLD     lib/ecore_x/ecore_x_vsync
  CCLD     lib/evas/common/libevas_op_blend_sse3.la
  CCLD     lib/evas/common/libevas_convert_rgb_32.la
  CCLD     lib/ecore_ipc/libecore_ipc.la
[...]/i686-ctng-linux-gnu/bin/ld: warning: libefl.so.1, needed by lib/ecore/.libs/libecore.so, not found (try using -rpath or -rpath-link)
lib/ecore/.libs/libecore.so: undefined reference to `efl_control_suspend_set'
lib/ecore/.libs/libecore.so: undefined reference to `efl_control_interface_get'
collect2: error: ld returned 1 exit status
Makefile:19135: recipe for target 'bin/eldbus/eldbus-codegen' failed
make[6]: *** [bin/eldbus/eldbus-codegen] Error 1

A dependency on libefl seems to be missing for eldbus.

Fixes T2718 and T2952

Signed-off-by: Romain Naour <romain.naour@openwide.fr>
8 years agoevas_xcb: fix build with xcb after TBM patches
Stefan Schmidt [Thu, 7 Jan 2016 07:48:56 +0000 (08:48 +0100)]
evas_xcb: fix build with xcb after TBM patches

GLX was not the only thing which did no longer compile. Same for xcb here.
Thanks Jenkins for testing this for us.

8 years agobuild: if we have this option we at least need to make sure the docs are matching
Stefan Schmidt [Thu, 7 Jan 2016 07:41:09 +0000 (08:41 +0100)]
build: if we have this option we at least need to make sure the docs are matching

Putting aside the question if we need or want this option we should make sure
people at least have correctly updated documentation. We switched the option to
..abb but not the docs.

8 years agoeina: Updated documentation of strbuf_substr_get.
Srivardhan Hebbar [Thu, 7 Jan 2016 06:33:38 +0000 (15:33 +0900)]
eina: Updated documentation of strbuf_substr_get.

Summary:
Fixes T2949.
In the bug, its been mentioned about updating the documentation, so added this.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: cedric, jpeg

Reviewed By: jpeg

Maniphest Tasks: T2949

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

8 years agoeina: Updated testcases of strbuf_substr_get.
Srivardhan Hebbar [Thu, 7 Jan 2016 06:35:06 +0000 (15:35 +0900)]
eina: Updated testcases of strbuf_substr_get.

Summary:
Fixes T2949.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: cedric, jpeg

Reviewed By: jpeg

Maniphest Tasks: T2949

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

8 years agoEvas: Document Evas.Render_Op
Jean-Philippe Andre [Thu, 7 Jan 2016 06:08:33 +0000 (15:08 +0900)]
Evas: Document Evas.Render_Op

1. MASK is not used for masking
2. only BLEND and COPY actually work

Should we merge Efl.Gfx.Render_Op and Evas.Render_Op?
(this would mean Efl.Gfx.Render_Op.copy = 2 instead of 1)

8 years agoEvas filters: Remove ERR message
Jean-Philippe Andre [Thu, 7 Jan 2016 05:46:22 +0000 (14:46 +0900)]
Evas filters: Remove ERR message

GL filters now work. Slow, but they work.

8 years agoEvas render: Fix render artifacts with a mapped object
Jean-Philippe Andre [Wed, 6 Jan 2016 13:08:58 +0000 (22:08 +0900)]
Evas render: Fix render artifacts with a mapped object

Problem visible in Enventor "map" example, with the SW engine.

Fixes T2979

8 years agoEvas render: Distinguish has_map and can_map
Jean-Philippe Andre [Wed, 6 Jan 2016 12:52:46 +0000 (21:52 +0900)]
Evas render: Distinguish has_map and can_map

This patch is a minor code cleanup before fixing T2979
(render artifacts inside Enventor).

8 years agoevas: fix a NULL dereference issue
Minwoo, Lee [Wed, 6 Jan 2016 19:24:16 +0000 (11:24 -0800)]
evas: fix a NULL dereference issue

Summary:
If evas engine init failed, it can make crash.
For example
If opengl init failed, then ee->prop.window is 0
ecore_evas_gl_x11_options_new_internal
{
   if (!ee->prop.window)
     {
        ERR("evas_engine_info_set() init engine '%s' failed.", ee->driver);
        ecore_evas_free(ee);
        return NULL;
     }
}

ecore_evas_free calls evas_fonts_zero_pressure
and this time evas->engine.func is NULL so it makes crash.

Reviewers: cedric

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agobuild: add uuid as dependency for wayland build
Stefan Schmidt [Wed, 6 Jan 2016 18:53:56 +0000 (19:53 +0100)]
build: add uuid as dependency for wayland build

The wayland build requires uuid which we need to make sure we have as dependency.
Not a real problem as all wayland supported systems should have it.

Based on a patch by aerodynamik. Thanks!

Fixes T2951

8 years agoecore-wl2: Mark API as Beta before 1.17 gets released
Chris Michael [Wed, 6 Jan 2016 17:16:33 +0000 (12:16 -0500)]
ecore-wl2: Mark API as Beta before 1.17 gets released

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoevas-wayland-egl: Remove unused variables and unused function
Chris Michael [Wed, 6 Jan 2016 17:11:53 +0000 (12:11 -0500)]
evas-wayland-egl: Remove unused variables and unused function

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoeldbus: add missing since tags for all new symbols
Stefan Schmidt [Wed, 6 Jan 2016 15:31:55 +0000 (16:31 +0100)]
eldbus: add missing since tags for all new symbols

8 years agoeina_value: correct the since tag for new symbols
Stefan Schmidt [Wed, 6 Jan 2016 15:21:52 +0000 (16:21 +0100)]
eina_value: correct the since tag for new symbols

Thiese symbols are only available since after 1.16, thus the since 1.17 tag.

8 years agoeina_strbuf: add missing since tag to new symbols
Stefan Schmidt [Wed, 6 Jan 2016 14:55:32 +0000 (15:55 +0100)]
eina_strbuf: add missing since tag to new symbols

8 years agoeina_bezier: correct since version for two new APIs.
Stefan Schmidt [Wed, 6 Jan 2016 14:31:48 +0000 (15:31 +0100)]
eina_bezier: correct since version for two new APIs.

These are only available from 1.17 and not already from 1.16.

8 years agoefl model: add missing since tags for new APIs
Stefan Schmidt [Wed, 6 Jan 2016 14:26:30 +0000 (15:26 +0100)]
efl model: add missing since tags for new APIs

8 years agoedje: add missing since tags to new edje_size_class symbols
Stefan Schmidt [Wed, 6 Jan 2016 14:19:28 +0000 (15:19 +0100)]
edje: add missing since tags to new edje_size_class symbols

8 years agoecore_wl2: add since tag to all new symbols in 1.17 missing it
Stefan Schmidt [Wed, 6 Jan 2016 14:08:13 +0000 (15:08 +0100)]
ecore_wl2: add since tag to all new symbols in 1.17 missing it

8 years agoecore_evas: add missing since tags for new APIs coming with 1.17
Stefan Schmidt [Wed, 6 Jan 2016 13:52:56 +0000 (14:52 +0100)]
ecore_evas: add missing since tags for new APIs coming with 1.17

8 years agoEvas: Fix the build... I hope
Jean-Philippe Andre [Wed, 6 Jan 2016 08:18:57 +0000 (17:18 +0900)]
Evas: Fix the build... I hope

I forgot to modify some lines. Of course randomness made things
work for me.

8 years agoEctor: Do not install any header file
Jean-Philippe Andre [Wed, 6 Jan 2016 07:43:46 +0000 (16:43 +0900)]
Ector: Do not install any header file

Also fix spelling in .pc file

8 years agoEctor: Move ector_buffer.h along ector_surface.h
Jean-Philippe Andre [Wed, 6 Jan 2016 07:32:51 +0000 (16:32 +0900)]
Ector: Move ector_buffer.h along ector_surface.h

This makes it an installed header for now.
I still believe no Ector header should be installed.

8 years agoEvas: Do not install evas_ector_buffer
Jean-Philippe Andre [Wed, 6 Jan 2016 07:26:01 +0000 (16:26 +0900)]
Evas: Do not install evas_ector_buffer

This is an internal API, should not be installed.

8 years agoEctor GL: Fix warning with clang
Jean-Philippe Andre [Wed, 6 Jan 2016 05:31:57 +0000 (14:31 +0900)]
Ector GL: Fix warning with clang

Also mark API struct as initialized.

8 years agoEctor: Protect all headers by EFL_BETA_API_SUPPORT
Jean-Philippe Andre [Wed, 6 Jan 2016 05:26:25 +0000 (14:26 +0900)]
Ector: Protect all headers by EFL_BETA_API_SUPPORT

Those Ector APIs are not stable!

8 years agoevas: Update Ector_Color structure.
se.osadchy [Tue, 5 Jan 2016 11:41:12 +0000 (20:41 +0900)]
evas: Update Ector_Color structure.

Summary: Add a field at the end of the structure for defining the color encoding.

Reviewers: cedric, Hermet, raster, jpeg

Reviewed By: jpeg

Subscribers: jpeg

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

8 years agoEvas 3d: Get hash table of scenes using the given node as root.
perepelits.m [Tue, 5 Jan 2016 11:39:02 +0000 (20:39 +0900)]
Evas 3d: Get hash table of scenes using the given node as root.

Summary: We need this to have an access to scene while running programs in edje-3d.

Reviewers: cedric, raster, Hermet, jpeg

Reviewed By: jpeg

Subscribers: jpeg, artem.popov

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

8 years agoecore-wl2: Fix support for nested compositors
Chris Michael [Tue, 5 Jan 2016 18:10:40 +0000 (13:10 -0500)]
ecore-wl2: Fix support for nested compositors

When trying to create nested compositors, we were failing here due to
trying to read the WAYLAND_DISPLAY env variable and find an existing
server display to match. In order for nested compositors to function,
we cannot reuse that environment variable for server display hash.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoecore-wl2: Remove blank line
Chris Michael [Tue, 5 Jan 2016 14:26:17 +0000 (09:26 -0500)]
ecore-wl2: Remove blank line

NB: No functional changes

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoeina_js: Fix documentation generation
Stefan Schmidt [Tue, 5 Jan 2016 16:09:31 +0000 (17:09 +0100)]
eina_js: Fix documentation generation

Summary:
Fix doxygen's documentation generation.
A bug in doxygen makes it fail with the _libv8_property_callback_info_test
class.
We put a #ifndef EFL_DOXYGEN around it to avoid it being seen by doxygen.

Add a NOTE comment about this.

ref T3005

@fix

Test Plan: make doc must succeed

Reviewers: felipealmeida, stefan_schmidt

Projects: #efl

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

8 years agoEctor gl: Ship gl eo headers dependend by the public header.
Tom Hacohen [Tue, 5 Jan 2016 15:56:22 +0000 (15:56 +0000)]
Ector gl: Ship gl eo headers dependend by the public header.

8 years agoEdje entry: Do not update cursor for non editable entry.
Subodh Kumar [Tue, 5 Jan 2016 14:30:20 +0000 (14:30 +0000)]
Edje entry: Do not update cursor for non editable entry.

Summary:
Do not update cursor for non editable entry.

If entry is not editable there must not be any need to query tb cursor
geometry and run other codes related to it. This may improve some
performance of non-editable entry.

Test Plan: NA

Reviewers: tasn, herdsman, thiepha

Subscribers: shilpasingh, cedric, jpeg

Projects: #efl

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

8 years agorelease: Update NEWS and bump version for 1.17.0-alpha1 release
Stefan Schmidt [Tue, 5 Jan 2016 13:57:42 +0000 (14:57 +0100)]
release: Update NEWS and bump version for 1.17.0-alpha1 release

8 years agoedje: Fix compiler warning about set but not used variables
Chris Michael [Tue, 5 Jan 2016 13:47:54 +0000 (08:47 -0500)]
edje: Fix compiler warning about set but not used variables

When compiling src/bin/edje, we end up with compiler warnings about
'pc' variable being set but not used. This patch just comments out
(for now) those variables (as I am unsure if they are going to be used
later or not).

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agopc: git ignore newly generated efl-js.pc file
Stefan Schmidt [Tue, 5 Jan 2016 09:37:00 +0000 (10:37 +0100)]
pc: git ignore newly generated efl-js.pc file

8 years agoEvas: (try to) fix compilation
Jean-Philippe Andre [Tue, 5 Jan 2016 09:59:22 +0000 (18:59 +0900)]
Evas: (try to) fix compilation

Not even sure if it's parallel compilation or not... classic case
of works-for-me.

Hopefully this should fix the build for others.

8 years agoEvas: Fix compilation for GLX
Jean-Philippe Andre [Tue, 5 Jan 2016 09:46:21 +0000 (18:46 +0900)]
Evas: Fix compilation for GLX

Sorry, I forgot to check that :)

8 years agowaylang-egl: Remove trailing spaces
Jean-Philippe Andre [Tue, 5 Jan 2016 08:06:18 +0000 (17:06 +0900)]
waylang-egl: Remove trailing spaces

8 years agowayland: Add support for TBM buffers
Jean-Philippe Andre [Tue, 5 Jan 2016 07:55:59 +0000 (16:55 +0900)]
wayland: Add support for TBM buffers

This is a follow up on the previous commits.
The original patch on Phab was split in 3 parts (factorization,
fix & this one).

Adds support to both SHM and EGL.

See D3501.

8 years agoevas tbm: Fix compilation warnings
Jean-Philippe Andre [Tue, 5 Jan 2016 07:54:48 +0000 (16:54 +0900)]
evas tbm: Fix compilation warnings

Previous patch used a wrong type... harmless but warned.

8 years agoEvas_Engine: add TBM surface and clean up Native Struct
Wonsik Jung [Tue, 5 Jan 2016 07:41:14 +0000 (16:41 +0900)]
Evas_Engine: add TBM surface and clean up Native Struct

Summary:
Add TBM surface in wayland and clean up Native struct on Evas Engine.
Previous TBM surface for evas_object_image's native_surface_set is only in Evas X11 backend.
This patch has the code for wayland backend.
In addition, evas_native_tbm.c is moved to software_generic. Becuase this file is common.
And, Native in Evas_Engine is clean-up.

@feature

Test Plan:
TBM surface is tested with spacegrapher's test app(tbm.c) in Tizen Device.
Pixmap surface is tested in ubuntu with same test app.
EvasGL is tested with elementary_test.

Reviewers: jpeg, spacegrapher, raster, cedric

Subscribers: dkdk, scholb.kim, JoogabYun

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

8 years agoEvas filters: Final fix after the ector refactor
Jean-Philippe Andre [Mon, 4 Jan 2016 12:46:56 +0000 (21:46 +0900)]
Evas filters: Final fix after the ector refactor

This implements a generic way of scaling buffers, using fake
RGBA_Image wrapping ector buffer maps. The underlying algo is
still the good old linear sw scaler.

Now the filters *should* be back to their previous level of
usability. Performance will probably be even worse than it was
before, for GL, as more glReadPixels may be involved. Optimization
now consists in actually implementing the filters with GL shaders.

8 years agoEvas filters: Complete basic repairs for GL engine
Jean-Philippe Andre [Mon, 4 Jan 2016 11:33:37 +0000 (20:33 +0900)]
Evas filters: Complete basic repairs for GL engine

Now the filters should work with the GL engine, again, but with
a potentially crazy performance. Indeed, the input buffer is now
backed by an FBO, that needs to be glReadPixel'ed everytime it is
accessed by the filters (mapped).

8 years agoEvas filters: Move evas image creation to the engine
Jean-Philippe Andre [Mon, 4 Jan 2016 09:00:30 +0000 (18:00 +0900)]
Evas filters: Move evas image creation to the engine

Evas filters is now more and more unaware of evas images (RGBA_Image)
and the engine + ector take care of everything.

Still left to do:
- map / unmap an FBO buffer into RO or RW memory

8 years agoEvas filters: Add GL buffer backed by RGBA_Image
Jean-Philippe Andre [Mon, 4 Jan 2016 08:48:48 +0000 (17:48 +0900)]
Evas filters: Add GL buffer backed by RGBA_Image

Dumb implementation of a "smart" buffer capable of wrapping an
RGBA_Image but that can still be rendered on screen (ie, an
Evas_GL_Image is attached to it).

8 years agoEvas: Fix make check after ector gl work
Jean-Philippe Andre [Mon, 4 Jan 2016 03:21:03 +0000 (12:21 +0900)]
Evas: Fix make check after ector gl work

evas_ector is not meant to be public so remove it from
the C++ bindings

8 years agoEvas filters & Ector GL: Prepare ground work for GL buffers
Jean-Philippe Andre [Thu, 31 Dec 2015 05:33:03 +0000 (14:33 +0900)]
Evas filters & Ector GL: Prepare ground work for GL buffers

This fixes crashes, adds safety, and notes a couple of things that
are not yet implemented:
- Make an Evas_GL_Image from an RGBA_Image so we can draw it on the
  canvas. This means Evas.Ector.GL.RGBA_Image.Buffer
- Readable Evas_GL_Image objects with gl_read_pixels
  --> Implement proper map() & unmap() for GL buffers

8 years agoEctor GL: Add skeletton for Evas.Ector.GL.Image.Buffer
Jean-Philippe Andre [Thu, 17 Dec 2015 09:04:06 +0000 (18:04 +0900)]
Ector GL: Add skeletton for Evas.Ector.GL.Image.Buffer

This is an ector buffer backed by an existing Evas_GL_Image

8 years agoEvas filters: Relax limitations about colorspaces
Jean-Philippe Andre [Fri, 11 Dec 2015 06:44:48 +0000 (15:44 +0900)]
Evas filters: Relax limitations about colorspaces

Since Ector Buffer implicitly converts colorspaces, we
can allow more commands to work even if they are suboptimal.

Now all filters should support any combinaison of input, map/mask
and output colorspaces.

8 years agoEvas filters: Fix proxies following previous refactor
Jean-Philippe Andre [Thu, 10 Dec 2015 06:50:40 +0000 (15:50 +0900)]
Evas filters: Fix proxies following previous refactor

FIXME:
 - GL support is still shaky

8 years agoEvas filters: Use Ector.Buffer instead of RGBA_Image
Jean-Philippe Andre [Wed, 9 Dec 2015 01:45:53 +0000 (10:45 +0900)]
Evas filters: Use Ector.Buffer instead of RGBA_Image

This is a major refactoring of the evas filters submodule.

Use Ector.Buffer and the map/unmap methods instead of directly
accessing image buffers with RGBA_Image. RGBA_Image is still
used under the hood, for two reasons:
 - Required for the final output (blend onto Evas itself)
 - Required for the scaling routines

FIXME:
 - Breaks proxy support (ie. all kind of texturing).
 - This breaks filters support for the GL engine.

8 years agoEvas filters: Minor debug improvement
Jean-Philippe Andre [Thu, 10 Dec 2015 06:12:23 +0000 (15:12 +0900)]
Evas filters: Minor debug improvement

8 years agoevas: add a way to tests Ector_GL.
Cedric BAIL [Mon, 4 Jan 2016 00:10:53 +0000 (01:10 +0100)]
evas: add a way to tests Ector_GL.

This is completely not supported/working/useful yet. Please do not
complain about it ruinning your life.

8 years agoector: fix typo during computation of bounds_get.
Cedric BAIL [Sun, 3 Jan 2016 21:04:23 +0000 (22:04 +0100)]
ector: fix typo during computation of bounds_get.

8 years agoector: add Ector.GL.Buffer.* support.
Jean-Philippe Andre [Thu, 17 Dec 2015 00:44:57 +0000 (16:44 -0800)]
ector: add Ector.GL.Buffer.* support.

8 years agoector: initial implementation of our own Ector GL backend.
Cedric BAIL [Thu, 12 Nov 2015 23:52:21 +0000 (15:52 -0800)]
ector: initial implementation of our own Ector GL backend.

8 years agoector: add drawable flag to buffers
Jean-Philippe Andre [Tue, 15 Dec 2015 10:58:43 +0000 (19:58 +0900)]
ector: add drawable flag to buffers

This indicates that a buffer can be used as a source to draw pixels.
Can't they all do that? Well, not exactly. A CPU buffer can't be drawn
by the GPU... not directly at least. That's what this flag is for.

8 years agoector eo: fix indentation (tabs --> spaces)
Jean-Philippe Andre [Mon, 14 Dec 2015 06:52:02 +0000 (15:52 +0900)]
ector eo: fix indentation (tabs --> spaces)

Why? Why would an editor replace 8 spaces by a TAB?
WHYYYYYY?

8 years agoector buffer: add COW access mode
Jean-Philippe Andre [Fri, 11 Dec 2015 09:49:16 +0000 (18:49 +0900)]
ector buffer: add COW access mode

In case you map a buffer once for read-only and once for write,
we can generate a temporary copy and return that instead. This
buffer will be copied back to the original surface once the COW
surface is unmapped.

8 years agoector: on-the-fly convert sw buffers during map()
Jean-Philippe Andre [Fri, 11 Dec 2015 06:23:55 +0000 (15:23 +0900)]
ector: on-the-fly convert sw buffers during map()

Also use map to generate spans.
This should simplify some filters code, making things work,
albeit inefficiently. At least they should work.

Fix doc too.

8 years agoector: track maps in software buffer
Jean-Philippe Andre [Thu, 10 Dec 2015 08:15:25 +0000 (17:15 +0900)]
ector: track maps in software buffer

8 years agoector: add engine-specific evas image buffer wrapper
Jean-Philippe Andre [Tue, 8 Dec 2015 08:29:54 +0000 (17:29 +0900)]
ector: add engine-specific evas image buffer wrapper

Since Evas still relies entirely on Image_Entry and Evas_GL_Image,
we will need an engine-specific wrapper object creating a Buffer
around an existing cached image.

Currently only SW support is implemented. GL will be more fun to
do (with glReadPixels and whatnot).

8 years agoector: add typedef Ector_Buffer
Jean-Philippe Andre [Tue, 8 Dec 2015 06:11:57 +0000 (15:11 +0900)]
ector: add typedef Ector_Buffer

8 years agoector: remove offset from Ector.Buffer.{map,unmap}
Jean-Philippe Andre [Wed, 9 Dec 2015 10:00:54 +0000 (19:00 +0900)]
ector: remove offset from Ector.Buffer.{map,unmap}

It just makes things a bit more complicated and doesn't correspond
to a classic "map" operation anyways.

Also return void* instead of uint8_t*. This is more correct and
avoid extra casts.

8 years agoevas: provide ector with a way to get GL symbol.
Cedric BAIL [Wed, 16 Dec 2015 23:19:57 +0000 (15:19 -0800)]
evas: provide ector with a way to get GL symbol.

8 years agoector: add an abstraction to get GL function.
Cedric BAIL [Wed, 16 Dec 2015 23:18:23 +0000 (15:18 -0800)]
ector: add an abstraction to get GL function.

8 years agoEvas filters: Fix crazy code (only when DEBUG=1)
Jean-Philippe Andre [Mon, 4 Jan 2016 05:20:17 +0000 (14:20 +0900)]
Evas filters: Fix crazy code (only when DEBUG=1)

8 years agoEo: Print object class name during Eo.Base ctor/dtor
Jean-Philippe Andre [Mon, 4 Jan 2016 08:44:02 +0000 (17:44 +0900)]
Eo: Print object class name during Eo.Base ctor/dtor

Printing class_name(MY_CLASS) is useless information.
Printing the object's real class name is much more useful.

8 years agoEvas: Replace abort() by ERR
Jean-Philippe Andre [Mon, 4 Jan 2016 12:29:57 +0000 (21:29 +0900)]
Evas: Replace abort() by ERR

8 years agoedje: custom state - if RTL flag is not set, return original description
Amitesh Singh [Tue, 5 Jan 2016 01:26:57 +0000 (06:56 +0530)]
edje: custom state - if RTL flag is not set, return original description

@fix

8 years agoeina: update example for with eina_base64url_decode function.
Srivardhan Hebbar [Mon, 4 Jan 2016 23:20:48 +0000 (15:20 -0800)]
eina: update example for with eina_base64url_decode function.

Summary:
Depends on D3521

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoeina: add test case for eina_base64url_decode API.
Srivardhan Hebbar [Mon, 4 Jan 2016 23:20:04 +0000 (15:20 -0800)]
eina: add test case for eina_base64url_decode API.

Summary:
Depends on D3521

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>