Cedric BAIL [Fri, 11 Jul 2014 13:16:03 +0000 (15:16 +0200)]
evas: make gl_x11 rely on gl_generic.
Note that we can't access gl_common directly as it is not possible to link it
2 times. I also didn't want to force evas to be linked with GL/EGL. So I rely
now on dlsym on about 20 symbols to get that backend going.
Cedric BAIL [Fri, 11 Jul 2014 13:15:42 +0000 (15:15 +0200)]
autotools: turn on build for gl_generic backend.
Cedric BAIL [Fri, 11 Jul 2014 13:11:58 +0000 (15:11 +0200)]
evas: add gl_generic backend.
This is the first step to introduce a common gl infrastructure for all gl based backend.
For now it is strictly doing the exact same thing that the gl_x11 was doing, but I already
spoted that a lot of the optimization in gl_x11 where not incorporated in other gl backend.
So this is going to help everyone by sharing more code on a crucial part of our infrastructure.
Cedric BAIL [Fri, 11 Jul 2014 13:10:53 +0000 (15:10 +0200)]
evas: export symbol from gl_common so that loading gl_generic can expose them.
Cedric BAIL [Fri, 11 Jul 2014 10:13:37 +0000 (12:13 +0200)]
evas: load engine symbol into global namespace.
Cedric BAIL [Fri, 11 Jul 2014 10:13:02 +0000 (12:13 +0200)]
eina: make it possible to load module symbol into the global namespace.
Cedric BAIL [Fri, 11 Jul 2014 10:08:42 +0000 (12:08 +0200)]
evas: check if Render_Engine was created before using it in error case.
Daniel Kolesa [Fri, 11 Jul 2014 13:30:22 +0000 (14:30 +0100)]
eolian: s/dflt/default/g
Daniel Kolesa [Fri, 11 Jul 2014 12:10:04 +0000 (13:10 +0100)]
eolian: remove eolian_show and replace it with variants for class/struct/typedef/all.
Daniel Kolesa [Fri, 11 Jul 2014 11:26:33 +0000 (12:26 +0100)]
eolian: fix type print
Daniel Kolesa [Fri, 11 Jul 2014 11:22:36 +0000 (12:22 +0100)]
eolian: update print code (it made some obsolete assumptions before)
Daniel Kolesa [Fri, 11 Jul 2014 11:02:02 +0000 (12:02 +0100)]
eolian: fix a segfault
Daniel Kolesa [Fri, 11 Jul 2014 10:52:45 +0000 (11:52 +0100)]
eolian: fix testsuite
Daniel Kolesa [Fri, 11 Jul 2014 10:47:37 +0000 (11:47 +0100)]
eolian: events now use Eolian_Type* instead of stringshare
Daniel Kolesa [Fri, 11 Jul 2014 10:33:26 +0000 (11:33 +0100)]
eolian: remove parser dump for now (doesn't include all info, when it's needed again it can be re-added)
Daniel Kolesa [Fri, 11 Jul 2014 10:31:48 +0000 (11:31 +0100)]
eolian: separate database fill stuff from the parser
Daniel Kolesa [Fri, 11 Jul 2014 09:57:28 +0000 (10:57 +0100)]
eolian: split db fill func into multiple funcs
Jean-Philippe Andre [Fri, 11 Jul 2014 06:18:52 +0000 (15:18 +0900)]
Edje: Add support for ETC1+Alpha
If the image is not opaque and etc1 is selected, choose
ETC1_ALPHA as encoding format.
Jean-Philippe Andre [Fri, 11 Jul 2014 06:15:52 +0000 (15:15 +0900)]
Eet: Add support for ETC1+Alpha
The TGV file format and GL engine now support ETC1 encoding
with alpha using an extra texture.
This commit adds similar support to the Eet encoder/decoder.
@feature
ChunEon Park [Fri, 11 Jul 2014 05:50:20 +0000 (14:50 +0900)]
Revert "evas/gl: improve the rendering quality."
This reverts commit
5e18223f67a62ad752c3aac16ed23e390a9e0fe4.
Conflicts:
src/modules/evas/engines/gl_common/evas_gl_context.c
we've got a side effect(another quality issue) of the patch. so revert it.
Jean-Philippe Andre [Thu, 10 Jul 2014 03:01:23 +0000 (12:01 +0900)]
Evas gl: Fix upload of RGB+A textures [INCOMPLETE]
The textures have duplicated borders, take them into account.
Jean-Philippe Andre [Fri, 11 Jul 2014 03:17:46 +0000 (12:17 +0900)]
Evas gl: Replace all remaining references to mask stuff by alpha
Masking is not used (there even was a recent commit by Hermet to
remove most of the occurences of mask shaders in GL), and I've
introduced a new ETC1+Alpha feature. Replace the old texm and
associated variables by texa for alpha texures.
Jean Guyomarc'h [Thu, 10 Jul 2014 18:04:24 +0000 (20:04 +0200)]
ecore_cocoa: Introduce canvas resizing + warning fixes
Summary: Add support for canvas resizing: the window was resizable but its content was not resized.
Reviewers: raster, raoulh, naguirre, cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1163
ChunEon Park [Thu, 10 Jul 2014 15:20:48 +0000 (00:20 +0900)]
ecore - fix a typo in doc.
Daniel Kolesa [Thu, 10 Jul 2014 14:40:58 +0000 (15:40 +0100)]
eolian: remove redundant enum
Daniel Kolesa [Thu, 10 Jul 2014 14:36:18 +0000 (15:36 +0100)]
eolian: remove unused enum and field
Daniel Kolesa [Thu, 10 Jul 2014 14:31:01 +0000 (15:31 +0100)]
eolian: refactoring: get rid of Eo_Event_Def
Daniel Kolesa [Thu, 10 Jul 2014 14:23:06 +0000 (15:23 +0100)]
eolian: refactoring: get rid of Eo_Implement_Def
Daniel Kolesa [Thu, 10 Jul 2014 14:10:24 +0000 (15:10 +0100)]
eolian: refactoring: remove Eo_Type_Def
Daniel Kolesa [Thu, 10 Jul 2014 13:44:17 +0000 (14:44 +0100)]
eolian: get rid of Eo_Type_Def
Daniel Kolesa [Thu, 10 Jul 2014 13:30:34 +0000 (14:30 +0100)]
eolian: refactoring: refactor eolian_database.h
Daniel Kolesa [Thu, 10 Jul 2014 13:19:06 +0000 (14:19 +0100)]
eolian: refactoring: more consistent naming
Daniel Kolesa [Thu, 10 Jul 2014 13:04:13 +0000 (14:04 +0100)]
eolian: API refactoring
Daniel Kolesa [Thu, 10 Jul 2014 12:13:46 +0000 (13:13 +0100)]
eolian: separate database API and internals into different source files
Daniel Kolesa [Thu, 10 Jul 2014 11:15:29 +0000 (12:15 +0100)]
eolian: refactoring: split up eolian_database into individual files
Daniel Kolesa [Thu, 10 Jul 2014 10:06:20 +0000 (11:06 +0100)]
eolian: const fixes
Maksym Volodin [Thu, 10 Jul 2014 09:51:26 +0000 (11:51 +0200)]
edje: Edje_edit - edje_edit_state_text_source_set and edje_edit_state_text_text_source_set logic fix.
Summary: Patch make it possible to set NULL value for text_text_source and text_source.
Reviewers: cedric, raster, Hermet, seoz, reutskiy.v.v
Subscribers: cedric, reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D1167
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Cedric BAIL [Thu, 10 Jul 2014 09:34:34 +0000 (11:34 +0200)]
evas: gl_common already provide the infrastruture to manipulate ImageSEC.
ms [Thu, 10 Jul 2014 08:39:06 +0000 (10:39 +0200)]
test_test
Reviewers: kimcinoo
Reviewed By: kimcinoo
Subscribers: kimcinoo, cedric
Differential Revision: https://phab.enlightenment.org/D1153
Mykyta Biliavskyi [Thu, 10 Jul 2014 08:38:26 +0000 (10:38 +0200)]
edje: Edje_Edit - fix size memory calculating for realloc array of tweens.
Summary:
If in _Edje_Part_Description_Spec_Image->tweens wasn't added no one image,
when edje object was loaded from file, then realloc will work as free(), because size
of reallocating memory always will equal 0.
@fix
Reviewers: raster, seoz, cedric, Hermet, reutskiy.v.v
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1160
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Daniel Kolesa [Wed, 9 Jul 2014 20:31:03 +0000 (21:31 +0100)]
eolian: the entire API is now const correct
Daniel Kolesa [Wed, 9 Jul 2014 20:07:15 +0000 (21:07 +0100)]
eolian: const correctness
Daniel Kolesa [Wed, 9 Jul 2014 20:02:41 +0000 (21:02 +0100)]
eolian_cxx: pass everything by ref
Daniel Kolesa [Wed, 9 Jul 2014 19:59:31 +0000 (20:59 +0100)]
eolian: refactoring step six
Move Eolian_Function as well, plus fix const correctness of several API funcs.
Savio Sena [Wed, 9 Jul 2014 18:55:24 +0000 (15:55 -0300)]
eolian-cxx: Pass references instead of pointers.
Fix Eolian-Cxx API to pass references instead of pointers.
Chris Michael [Wed, 9 Jul 2014 16:56:05 +0000 (12:56 -0400)]
evas-engine-wayland-shm: Check for depth being INHERIT on reconfigure
Software Generic backend can send us OUTBUF_DEPTH_INHERIT during a
reconfigure. If we are inheriting the previous depth, let's check that
so we don't get needless destrouction/recreation of shm buffers.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Daniel Kolesa [Wed, 9 Jul 2014 16:18:02 +0000 (17:18 +0100)]
eolian: refactoring step five
Move from all instances of Eolian_Type to Eolian_Type*.
Daniel Kolesa [Wed, 9 Jul 2014 16:04:00 +0000 (17:04 +0100)]
eolian: fix tests (update according to API changes)
Daniel Kolesa [Wed, 9 Jul 2014 16:01:19 +0000 (17:01 +0100)]
eolian: refactoring step four
Move from all isntances of Eolian_Function_Parameter to Eolian_Function_Parameter* plus const fixes.
Daniel Kolesa [Wed, 9 Jul 2014 15:45:41 +0000 (16:45 +0100)]
eolian: refactoring step three
Move from all instances of Eolian_Event and Eolian_Implement to Eolian_Event* and Eolian_Implement*.
Chris Michael [Wed, 9 Jul 2014 15:39:26 +0000 (11:39 -0400)]
evas-engine-drm: Fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 9 Jul 2014 15:38:06 +0000 (11:38 -0400)]
evas-engine-drm: Fix evas drm engine bufer depth
Seems the new software_generic backend is passing in
OUTBUF_DEPTH_INHERIT during a reconfigure, so let's add a check for
that else if not, the entire drm engine stops rendering due to output
buffers not being created to match the framebuffer depth.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Daniel Kolesa [Wed, 9 Jul 2014 15:33:07 +0000 (16:33 +0100)]
eolian: refactoring step two
Move from all instances of Eolian_Class to Eolian_Class*.
Daniel Kolesa [Wed, 9 Jul 2014 14:56:04 +0000 (15:56 +0100)]
eolian: refactoring step one
Rename the public Eolian types to use a consistent naing scheme.
Chris Michael [Wed, 9 Jul 2014 15:17:21 +0000 (11:17 -0400)]
evas-engine-drm: Fix update of output buffer size
Adjust the ob->w/h dimensions After the framebuffer has been setup
because we cannot have output buffers smaller than the framebuffer
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 9 Jul 2014 15:15:39 +0000 (11:15 -0400)]
evas-engine-drm: Fix software_generic_update to use the correct size.
We cannot use epd->output.w/h in these calls as the setup of the
output buffer May cause a resize. Drm buffers cannot be allocated
Smaller than the framebuffer size, so evas_drm_outbuf_setup function
May resize the ob->w/h to match the framebuffer.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Cedric BAIL [Wed, 9 Jul 2014 14:14:57 +0000 (16:14 +0200)]
evas: correct multi buffer support.
Cedric BAIL [Wed, 9 Jul 2014 13:10:08 +0000 (15:10 +0200)]
evas: actually put the specific code in the right place.
MinJeong Kim [Wed, 9 Jul 2014 13:06:58 +0000 (09:06 -0400)]
ecore-wayland: Do not destroy data_source for selection on client side
Summary:
Wayland client doesn't need to destroy previous data_source when client requests for selection_set,
because there is "cancelled" event by wayland server to notify clients that the data_source is not used more and has to be destroyed.
Before receiving the "cancelled" event, client cannot recognize that it is useless or not.
Even if the client wants to create new data_source, wayland server can choose previous data_source rather than new one.
Test Plan:
1. Launch weston
2. Launch "elementary_test -to entry5" on weston
3. Try to copy & paste
Reviewers: devilhorns
CC: cedric, gwanglim
Differential Revision: https://phab.enlightenment.org/D1152
Daniel Kolesa [Wed, 9 Jul 2014 12:49:21 +0000 (13:49 +0100)]
eolian: function dump now uses the actual syntax
Daniel Kolesa [Wed, 9 Jul 2014 12:26:00 +0000 (13:26 +0100)]
eolian: reduce code duplication
Vincent Torri [Tue, 8 Jul 2014 21:21:35 +0000 (23:21 +0200)]
Ecore_Win32: fix resize of windows when step and base sizes are set
Vincent Torri [Mon, 30 Jun 2014 16:06:08 +0000 (18:06 +0200)]
Ecore_Win32: fix typo in doc
wonguk.jeong [Wed, 9 Jul 2014 12:00:40 +0000 (14:00 +0200)]
ethumb: dbus reply message handling minor bug fix ("queue_remove" method call)
Summary:
due to wrong return value checking, annoying error message is coming out.
@fix
Test Plan: terminology -> tyls in the directory contains pictures -> clear screen (clear) -> check whether error message is coming out or not
Reviewers: raster, cedric
CC: seoz, cedric
Differential Revision: https://phab.enlightenment.org/D1159
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Daniel Kolesa [Wed, 9 Jul 2014 12:06:46 +0000 (13:06 +0100)]
eolian: support for structs in eolian_show
Daniel Kolesa [Wed, 9 Jul 2014 12:01:53 +0000 (13:01 +0100)]
eolian: support for structs in eo_parser_dump
Daniel Kolesa [Wed, 9 Jul 2014 11:48:16 +0000 (12:48 +0100)]
eolian: new API: eolian_type_struct_description_get
Daniel Kolesa [Wed, 9 Jul 2014 11:05:56 +0000 (12:05 +0100)]
eolian: new API: eolian_type_struct_field_description_get
Daniel Kolesa [Wed, 9 Jul 2014 10:18:21 +0000 (11:18 +0100)]
eolian: proper resource management for types/structs
Because types can have other types in each other, we need a stack of a sort to keep track of
the types for error handling. Doing it otherwise would result in potential resource leaks.
Daniel Kolesa [Wed, 9 Jul 2014 09:49:52 +0000 (10:49 +0100)]
eolian: add EOLIAN_TYPE_REGULAR_STRUCT rather than including the struct keyword in name field
Daniel Kolesa [Wed, 9 Jul 2014 09:19:36 +0000 (10:19 +0100)]
eolian: fix coverity defects
Jean-Philippe Andre [Wed, 9 Jul 2014 04:58:43 +0000 (13:58 +0900)]
Evas gl: Add errors when using ETC1+Alpha as a normal texture
Jean-Philippe Andre [Wed, 9 Jul 2014 03:36:22 +0000 (12:36 +0900)]
Evas gl: Fix invalid number of atlasses
Left-over from a local experiment where ETC1+Alpha had its own
texture pool. Not required.
Thiep Ha [Wed, 9 Jul 2014 02:39:32 +0000 (11:39 +0900)]
ecore_evas_extn: remove redundant message sending
Summary:
When a client is added to socket server, socket server sends NBUF (2) times of OP_RESIZE, OP_UPDATE, OP_UPDATE_DONE messages to client. However, only one message of OP_RESIZE, OP_UPDATE, OP_UPDATE_DONE is enough.
This patch removes redundant OP_RESIZE, OP_UPDATE, OP_UPDATE_DONE sending.
Reviewers: raster, Hermet
Reviewed By: Hermet
CC: woohyun, huchi
Differential Revision: https://phab.enlightenment.org/D1141
Jean-Philippe Andre [Wed, 9 Jul 2014 01:40:25 +0000 (10:40 +0900)]
Evas gl: Remove non-existent filters from compile.sh
Jean-Philippe Andre [Wed, 9 Jul 2014 01:09:03 +0000 (10:09 +0900)]
Evas gl: Don't use glCompressedTexSubImage2D for ETC1
Eeeeh. Not only we don't support atlasses with this RGB+A thing
yet, but ETC1 does not even support SubImage2D (according to the
current spec).
Also, fix a few typos in that same function.
Jean-Philippe Andre [Wed, 9 Jul 2014 00:41:40 +0000 (09:41 +0900)]
Evas gl: Fix potential memleak
Fixes CID 1224765.
This CID reports a potential memleak in an "assert" situation.
Jean-Philippe Andre [Wed, 9 Jul 2014 00:31:49 +0000 (09:31 +0900)]
Eolian: Add missing break in switch
Fixes CID 1224763.
Jean-Philippe Andre [Tue, 8 Jul 2014 08:15:42 +0000 (17:15 +0900)]
Evas gl: Simplify cspace matching for textures
Some colorspaces (ETC, S3TC, GRY, ...) don't care about the value
of BGRA support or the alpha flag. So, let's introduce the
new boolean^Wenum value MATCH_ANY ;)
Note: the compressed texture formats with alpha support have been
marked as matching both TRUE and FALSE for alpha. The images
should always have the alpha flag set to TRUE, though.
The BGRA flag really doesn't matter.
Jean-Philippe Andre [Tue, 8 Jul 2014 02:42:26 +0000 (11:42 +0900)]
Evas TGV: Fix compilation with BUILD_NEON
The TGV loader is an Evas_Loader, not part of evas itself
(eg. in cserve), so we can't use evas functions from there.
eina_cpu provides appropriate CPU features detection.
Jean-Philippe Andre [Mon, 7 Jul 2014 11:14:02 +0000 (20:14 +0900)]
Evas gl: Add support for ETC1+Alpha textures
Compile-in the required shaders, add support for the
new EVAS_COLORSPACE_ETC1_ALPHA, and upload textures as RGB+A
pairs.
@feature
Jean-Philippe Andre [Mon, 7 Jul 2014 10:58:50 +0000 (19:58 +0900)]
Evas TGV: Add support for ETC1+Alpha
Save images with alpha in two planes:
- RGB data as ETC1
- Alpha as ETC1 (from a greyscale image)
The second plane alpha is located right after the RGB plane.
The RGBA data is not premultiplied, so that RGB can be encoded
at a better quality in ETC1. This should avoid some blockiness
artifacts that we can see in the current ETC2 mode (which supports
alpha natively). Eventually ETC2 should also support non
premultiplied data for a better encoding quality.
This patch implements the saver and the loader.
@feature
Jean-Philippe Andre [Mon, 7 Jul 2014 07:10:37 +0000 (16:10 +0900)]
Evas Loader: Introduce colorspace ETC1+Alpha
ETC1 does not support Alpha natively, but it can be emulated using
two planes: RGB ETC1 and a grey-scale image encoded in ETC1.
Jean-Philippe Andre [Fri, 4 Jul 2014 09:07:34 +0000 (18:07 +0900)]
Evas gl: Add shaders for RGB+Alpha mode
These shaders take two textures as input and sample RGB from
texture 1 and alpha from texture 2. This is the non-premultiplied
version, so RGB' = RGB*A.
This includes only the GLSL code.
Jean-Philippe Andre [Mon, 7 Jul 2014 06:42:34 +0000 (15:42 +0900)]
Evas gl: Fix path resolution in compile.sh
Let's make compile.sh work from anywhere (not just from its
containing directory). Also fix problem with calling make-c-str.sh
without setting PATH.
Chris Michael [Tue, 8 Jul 2014 16:32:58 +0000 (12:32 -0400)]
evas-engine-drm: Fix invalid variable check
We need to check if evas_outbuf_setup Failed and did not return a new
ob for us to work with...so this if check was invalid
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Tue, 8 Jul 2014 16:23:37 +0000 (12:23 -0400)]
evas-3d: Add missing EINA_UNUSED to unused function parameter
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Tue, 8 Jul 2014 16:17:37 +0000 (12:17 -0400)]
evas-engine-drm: Fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Tue, 8 Jul 2014 16:16:07 +0000 (12:16 -0400)]
evas-engine-drm: Fix drm engine breakage from Frenchie
We need to have the drm fd & tty setup Prior to creating the output
buffer so that the output buffer knows what drm card to use
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Tue, 8 Jul 2014 16:08:14 +0000 (12:08 -0400)]
Revert "evas/drm: Make use of ecore_drm for opening DRM device"
This reverts commit
31ad73efa96b6c4c2ab01366a0897e6fadad48e4.
Conflicts:
src/modules/evas/engines/drm/evas_engine.c
Revert this commit as these functions are needed to run evas engine
standalone (expedite) on drm
Chris Michael [Tue, 8 Jul 2014 16:05:13 +0000 (12:05 -0400)]
Revert "evas/drm: Remove obsolete tty open function"
This reverts commit
1db13194a23e8ed0afa01474031cc8e2d4fc4049.
Revert this commit as this is needed to run the evas engine in
standalone situations like expedite.
Daniel Kolesa [Tue, 8 Jul 2014 15:56:13 +0000 (16:56 +0100)]
eolian: fix base_type_get (only allow for pointers)
Daniel Kolesa [Tue, 8 Jul 2014 15:54:22 +0000 (16:54 +0100)]
eolian: support for structs in c_type_get
Daniel Kolesa [Tue, 8 Jul 2014 15:42:33 +0000 (16:42 +0100)]
eolian: better struct support including an API for by-name lookup
Daniel Kolesa [Tue, 8 Jul 2014 15:17:44 +0000 (16:17 +0100)]
eolian: new API for struct types
This commit adds new Eolian API and proper parsing support for struct types.
Structs can be named (allowed in global context, like typedefs, and in typedefs)
and unnamed (allowed as fields of other structs). This extends the existing type
API to support structs. This is incomplete for now - I still gotta add a way to
query global structs besides other things.
@feature
Daniel Kolesa [Tue, 8 Jul 2014 14:44:42 +0000 (15:44 +0100)]
eolian: initial struct parsing
Daniel Kolesa [Tue, 8 Jul 2014 14:10:56 +0000 (15:10 +0100)]
eolian: check struct name properly
Daniel Kolesa [Tue, 8 Jul 2014 14:02:36 +0000 (15:02 +0100)]
eolian: preparation for struct support
Daniel Kolesa [Tue, 8 Jul 2014 13:15:36 +0000 (14:15 +0100)]
eolian/generator: add asterisk on inout too
wonguk.jeong [Tue, 8 Jul 2014 12:31:02 +0000 (14:31 +0200)]
ethumb: support ETHUMB_THUMB_ORIENT_ORIGINAL without libexif
Summary:
Since there is infra to support EXIF orientation in the loaders, we don't need to use libexif explicitely.
(Currently jpeg loader support EXIF orientaion fully.)
@fix
Test Plan: generate thumbnail of "Light_exif_*.jpg" in efl/src/tests/evas/image/ -> check whether the image is rotated properly or not
Reviewers: raster, cedric
CC: seoz, cedric
Differential Revision: https://phab.enlightenment.org/D1142
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>