Commit Graph

26751 Commits

Author SHA1 Message Date
Daniel Kolesa c9119b0c88 eolian: refactoring step three
Move from all instances of Eolian_Event and Eolian_Implement to Eolian_Event* and Eolian_Implement*.
2014-07-09 16:45:58 +01:00
Chris Michael d5443ffbce evas-engine-drm: Fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-07-09 11:39:46 -04:00
Chris Michael a20a12bfbc 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>
2014-07-09 11:39:46 -04:00
Daniel Kolesa 96eaaaf074 eolian: refactoring step two
Move from all instances of Eolian_Class to Eolian_Class*.
2014-07-09 16:33:19 +01:00
Daniel Kolesa ca82befa8a eolian: refactoring step one
Rename the public Eolian types to use a consistent naing scheme.
2014-07-09 16:33:19 +01:00
Chris Michael 89d4384b14 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>
2014-07-09 11:17:21 -04:00
Chris Michael 4f8b8cd398 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>
2014-07-09 11:15:39 -04:00
Cedric BAIL 8d53f4ca3b evas: correct multi buffer support. 2014-07-09 16:14:57 +02:00
Cedric BAIL 68110c63b6 evas: actually put the specific code in the right place. 2014-07-09 15:17:03 +02:00
MinJeong Kim 61847abae1 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
2014-07-09 09:06:58 -04:00
Daniel Kolesa 8f14930d68 eolian: function dump now uses the actual syntax 2014-07-09 13:49:21 +01:00
Daniel Kolesa 60bf9fcaef eolian: reduce code duplication 2014-07-09 13:26:20 +01:00
Vincent Torri d1cbf6d080 Ecore_Win32: fix resize of windows when step and base sizes are set 2014-07-09 14:26:26 +02:00
Vincent Torri 925c258e6b Ecore_Win32: fix typo in doc 2014-07-09 14:26:26 +02:00
wonguk.jeong a299916d84 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>
2014-07-09 14:14:44 +02:00
Daniel Kolesa 7b4f4af873 eolian: support for structs in eolian_show 2014-07-09 13:06:46 +01:00
Daniel Kolesa 3bffb5fa1d eolian: support for structs in eo_parser_dump 2014-07-09 13:01:53 +01:00
Daniel Kolesa 881a8754ab eolian: new API: eolian_type_struct_description_get 2014-07-09 12:48:16 +01:00
Daniel Kolesa 295f1f4847 eolian: new API: eolian_type_struct_field_description_get 2014-07-09 12:05:56 +01:00
Daniel Kolesa dda93f467e 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.
2014-07-09 11:18:21 +01:00
Daniel Kolesa cc387bd621 eolian: add EOLIAN_TYPE_REGULAR_STRUCT rather than including the struct keyword in name field 2014-07-09 10:49:52 +01:00
Daniel Kolesa 892c5cba5f eolian: fix coverity defects 2014-07-09 10:19:42 +01:00
Jean-Philippe Andre c65918eaed Evas gl: Add errors when using ETC1+Alpha as a normal texture 2014-07-09 14:01:11 +09:00
Jean-Philippe Andre ec9ffd0ae8 Evas gl: Fix invalid number of atlasses
Left-over from a local experiment where ETC1+Alpha had its own
texture pool. Not required.
2014-07-09 12:39:18 +09:00
Thiep Ha d732e52f32 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
2014-07-09 11:42:18 +09:00
Jean-Philippe Andre c7d290b447 Evas gl: Remove non-existent filters from compile.sh 2014-07-09 10:40:25 +09:00
Jean-Philippe Andre 698f7f1770 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.
2014-07-09 10:18:34 +09:00
Jean-Philippe Andre cb0eef29c8 Evas gl: Fix potential memleak
Fixes CID 1224765.
This CID reports a potential memleak in an "assert" situation.
2014-07-09 09:41:40 +09:00
Jean-Philippe Andre 5933d9d4a3 Eolian: Add missing break in switch
Fixes CID 1224763.
2014-07-09 09:31:49 +09:00
Jean-Philippe Andre c0b7957d17 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.
2014-07-09 09:05:37 +09:00
Jean-Philippe Andre 6deda1a722 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.
2014-07-09 09:04:55 +09:00
Jean-Philippe Andre 48bcf182b4 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
2014-07-09 09:04:55 +09:00
Jean-Philippe Andre 0bba7422cb 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
2014-07-09 09:04:55 +09:00
Jean-Philippe Andre bf2b678ed5 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.
2014-07-09 09:04:55 +09:00
Jean-Philippe Andre 224506171f 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.
2014-07-09 09:04:55 +09:00
Jean-Philippe Andre 23e60bd6ff 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.
2014-07-09 09:04:55 +09:00
Chris Michael d929151458 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>
2014-07-08 14:43:29 -04:00
Chris Michael 3d1f009a58 evas-3d: Add missing EINA_UNUSED to unused function parameter
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-07-08 14:43:29 -04:00
Chris Michael 8534fe1179 evas-engine-drm: Fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-07-08 14:43:21 -04:00
Chris Michael 69bac9d701 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>
2014-07-08 12:20:42 -04:00
Chris Michael ea8ffdf433 Revert "evas/drm: Make use of ecore_drm for opening DRM device"
This reverts commit 31ad73efa9.

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
2014-07-08 12:09:31 -04:00
Chris Michael e2ad7a18f9 Revert "evas/drm: Remove obsolete tty open function"
This reverts commit 1db13194a2.

Revert this commit as this is needed to run the evas engine in
standalone situations like expedite.
2014-07-08 12:09:23 -04:00
Daniel Kolesa f6c7242609 eolian: fix base_type_get (only allow for pointers) 2014-07-08 16:56:13 +01:00
Daniel Kolesa 16da25bca2 eolian: support for structs in c_type_get 2014-07-08 16:54:22 +01:00
Daniel Kolesa 6bd0e0ab7f eolian: better struct support including an API for by-name lookup 2014-07-08 16:42:33 +01:00
Daniel Kolesa b2db8d3ffa 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
2014-07-08 16:17:44 +01:00
Daniel Kolesa 46827bf022 eolian: initial struct parsing 2014-07-08 15:44:42 +01:00
Daniel Kolesa d60a47e2dd eolian: check struct name properly 2014-07-08 15:11:46 +01:00
Daniel Kolesa ee97c4cf58 eolian: preparation for struct support 2014-07-08 15:02:36 +01:00
Daniel Kolesa 53fb9515e9 eolian/generator: add asterisk on inout too 2014-07-08 14:15:36 +01:00