Commit Graph

328 Commits

Author SHA1 Message Date
Stefan Schmidt 842a75423f Revert "build: fix distcheck after model saver and loader rework"
This reverts commit a7a2781a00.

Fix for a commit that needs reverting so we need to revert this patch as well.
See next commit or bug number for details.

Ref T2905
2015-12-08 22:32:16 +01:00
Jean-Philippe Andre 8f4018b690 Evas filters: Implement mix3 func for rgba masking
This operation was faked by running a mul and a blend ops. Now
they are combined into one. A GL shader should also be able
to do this in a single pass.
2015-12-04 16:10:06 +09:00
Jean-Philippe Andre b5500a8644 Evas: Move alpha functions to static_libs/draw
This is a pretty simple code refactor, moving pixel handling
to the new draw lib.
2015-12-03 18:42:50 +09:00
Jean-Philippe Andre 4bcea3eada Ector: Move cairo surface back to ector
The original plan was to have two different surfaces for GL and SW,
but this is probably not going to happen anytime soon. So, move
the implementation back to lib/ector. This avoid a file duplication.
2015-12-03 18:42:50 +09:00
Jean-Philippe Andre 52ec3d2d7e Ector: Rename C files to match their EO counterparts 2015-12-03 18:42:50 +09:00
Jean-Philippe Andre 615b2442b7 Ector: Move drawhelper to static_libs
Rename a few things:
 - draw helper -> efl_draw
 - Ector_Rop -> Efl.Gfx.Render_Op
 - ECTOR_ bla bla -> DRAW_ bla bla (base pixel ops)
 - ector_memfill -> draw_memset32 (and invert arg order to match memset)

The main rasterizer file is now draw.h in static_libs/draw
This is a non functional change, simple code refactor.
2015-12-03 18:42:50 +09:00
se.osadchy ce4146ec63 evas: fix bug with logic with eina_matrix in evas_3d_utils
Summary: Also need to fix logically dead code in coverity.

Reviewers: raster, Hermet, cedric

Subscribers: jpeg

Maniphest Tasks: T2832

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-02 14:15:01 -08:00
Stefan Schmidt a7a2781a00 build: fix distcheck after model saver and loader rework
32c33ed64d broke distcheck here as the header
files would not be included in the generated tarballs. This is the second or
third time I fixed soemthing like this after a loader/saver rework. I would
appreciate if the people involved would run distcheck on their own.
2015-12-02 11:33:12 +01:00
perepelits.m 32c33ed64d evas: refactor model's savers and loaders.
Summary:
Move common part to a separated document.
Make code more readable using smaller functions. (from Task T2713)

Reviewers: cedric, raster, Hermet

Subscribers: artem.popov

Differential Revision: https://phab.enlightenment.org/D3373
2015-12-01 16:39:29 -08:00
Daniel Hirt 40dfc4a45d Evas textblock: add support for hyphenation wrap style
We now support hyphenation in style. Use "wrap=hyphenation" to use this
wrap option. It will hyphenate based on explicit SOFT HYPHEN (&shy;)
placement in the text, and with the (optional) assistance of dictionaries
compatible with Hunspell's "hyphen" library.

This wrap mode favors breaking at hyphen positions in a word, over moving
the whole word to the next line. It will put an additional "-" at the
break position if it was hyphened.

Enabling the hyphen dictionaries is done by adding these configure
options:
  --enable-hyphen (requires Hunspell's "hyphen" library installed)
  --with-dictionaries-hyphen-dir=DIR (specifies the install location of
          the actual .dic dictionary files e.g. /usr/share/hyphen)

Note that dictionary files are expected to be in the form of "en_US.dic"
or anything that ends with it e.g. "hyph_en_US.dic" (this how they are
        named in Arch Linux).

@feature
2015-11-24 14:31:05 +02:00
Youngbok Shin a9b4be11e1 Evas object: Add paragraph_direciton APIs
Summary:
It adds evas_object_paragraph_direction_set, get APIs.
The APIs set or get paragraph direction to/from the given object.
It changes BiDi calculations and affect the direction and aligning of text.
It doesn't have any effect to text without Fribidi library.

The default paragraph direction is EVAS_BIDI_DIRECTION_INHERIT.
If dir is EVAS_BIDI_DIRECTION_INHERIT, paragraph direction is changed
according to smart parent object. If there is no smart parent object,
paragraph direction works as EVAS_BIDI_DIRECTION_NEUTRAL.

@feature

Test Plan:
Test cases included to the following files.
- evas_test_textblock.c
- evas_test_text.c
- evas_test_object_smart.c

Run "make check".

Reviewers: woohyun, raster, herdsman, tasn

Subscribers: c, raster, cedric

Differential Revision: https://phab.enlightenment.org/D1690
2015-11-19 11:43:39 +00:00
Stefan Schmidt 50108c9f1b evas: add forgotten file to SOURCES to fix distcheck
Added in 8ab190daec but forgotten to be added
to the SOURCES.
2015-11-12 15:01:29 +01:00
Joogab Yun 8f52b2d877 Evas software_x11: add DRI2-x11 support at image_native_set()
Summary: add DRI2-x11 feature at image_native_set() on Software-x11

This is based on TBM, which means Tizen platform.

Reviewers: spacegrapher, wonsik, raster, jpeg

Subscribers: scholb.kim, dkdk, cedric

Differential Revision: https://phab.enlightenment.org/D3291
2015-11-11 14:37:28 +09:00
Jean-Philippe Andre 38ad8fda8d Evas GL: Implement runtime generation and load of shaders
Instead of generating the shaders at compile-time, do this at
runtime. Also load only the required shaders in memory.

This saves 25000 LOC, lots of strings inside the .so files
and save a non negligible amount of memory since those shader
binaries can weigh a few megabytes in total.

The current shader selection mechanism is a bit complex and
uses eina_hash_int32 but this can be optimized later if it's
deemed too slow.
2015-11-10 16:12:20 +09:00
Bogdan Devichev 8ab190daec evas: add common part of savers and loaders.
Summary:
Common part will make savers and loaders shorter and easier for understanding and refactoring.
https://phab.enlightenment.org/T2713 - due to this task.
Should be merged after https://phab.enlightenment.org/D3030

Should be merged to start adding refactored savers and loaders.

Reviewers: Hermet, raster, Oleksander, cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 15:27:26 -08:00
Bogdan Devichev f416f5adde evas: move model save/load from common to common3d.
Summary:
Move model save/load to common3d.
Here also will be common algorithms  and structures which will be used in all loaders and savers.
See task https://phab.enlightenment.org/T2713.

Reviewers: cedric, Hermet, raster, Oleksander

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-09 15:27:26 -08:00
Jean-Philippe Andre 4a830877f0 Evas GL shaders: Simplify a bit the shaders code
Following raster's change, the Program_Source struct is useless.
This is a big commit, again, but really all is auto-generated.
2015-10-19 20:27:22 +09:00
Carsten Haitzler 7b568a6152 evas gl fix color on bigendian with gl engine
this fixes rendering on ppc (bigendian) where we have thnigs swizzled
oddly. not bgra -> argb but rgba -> grab ...

so generate a bigendian shader file and use if on bigendian.

this should fix T2721

it fixes it in the visual screenshots i can get remotely.
2015-10-18 12:49:11 +09:00
Jean-Philippe Andre 93298d6dc2 Evas GL: Add a test case for Evas GL (make check)
For now this only covers SOME of Evas GL's functions.

It will try to run with opengl_x11 and buffer (OSMesa). It'll also
try to fail silently if the engine initialization failed, or if
OSMesa could not be found. If the engines work, then Evas GL must
work properly.
2015-10-14 20:14:51 +09:00
Stefan Schmidt c130b9e307 evas: include new header file in build to fix distcheck
Introduced in 72b13c3ebb the new header was
not deployed and thus not available in the tarball.
2015-10-01 12:21:52 +02:00
Carsten Haitzler 49adf8aa47 evas tiler update handler - move to region code to be accurate and fast
this move evas tiler that does update handling to use fully correct
regions using region.[xh]. this also removed old unused regionbuf code
and a bunch of commented out code no longer needed. much simpler now
and easier to maintain.
2015-09-24 14:09:09 +09:00
Stefan Schmidt f38fffa576 evas/gl_common: add new header files to build to make them available for dist 2015-08-27 16:42:18 +02:00
Nicolas Aguirre d990a7b12a Revert "Adds support of the eglfs module in the autotools config"
This reverts commit 3b2074aa71.
2015-08-03 14:34:57 +02:00
Florent Revest 3b2074aa71 Adds support of the eglfs module in the autotools config 2015-08-03 14:16:35 +02:00
Carsten Haitzler ec59636da4 evas - render2 - ensure region files are in dist 2015-07-25 22:34:17 +09:00
Jean-Philippe Andre 0446619355 Evas filters: Mark API as @beta
Until we're happy with it, keep the API as beta.

The EDC support should not change, and the Lua either, but the
API could potentially still change to accomodate for new needs
(vector graphics, anyone?). If we're happy with the current
interface, then we can remove the @beta flags.
2015-06-25 14:36:10 +09:00
Jean-Philippe Andre 64fd278c62 Evas filters: EO-ify the filters API
This creates the new interface
 Efl.Gfx.Filter

And the implementation is a mixin (evas_filter_mixin.c):
 Evas.Filter

All the filter rendering code has now been moved to this
new file. TODO: Merge image filtering.
2015-06-25 14:36:09 +09:00
Jean-Philippe Andre f3e16bc485 Evas filters: Implement Lua classes for colors & buffer
Reuse previous code for buffer. Keeps API stability.

The new class "color" is here for a more convenient color
representation. This way, colors can be represented in more
natural ways like: {r,g,b[,a]}, 0xaarrggbb, "red", "#rrggbb"

Class color is implemented in pure Lua, and adds a .lua file
to Evas' share folder.
2015-06-25 14:36:08 +09:00
Oleksandr Shcherbina d409df1caa evas: change interface evas_3d to evas_canvas3d
Summary:
Regard to https://phab.enlightenment.org/T2479 it is need for right generation
Eolian files

Reviewers: cedric

Subscribers: cedric, tasn

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-17 17:52:17 +02:00
Jean-Philippe Andre 4af5cba8e9 Evas: Remove shader_3d .x generated file from BUILT_SOURCES
This should fix the build after make clean.
Even though those .x files can be re-generated at compile time, they
are checked in in Git and shipped in tarballs. They must not be removed
during make clean.

Thanks Ross Vandegrift for the report.

@fix
2015-06-16 12:03:51 +09:00
Stefan Schmidt e644fd6a8c evas/render2: Put evas_render2_th_main.c in EXTRA_DIST to ship it in the tarball
We are not able to put it in SOURCES as it is not possible to compile this as
standalone object out of the context it is included in.
2015-06-10 10:08:39 +02:00
Chris Michael ee593050f1 evas-gl-drm: Rework gl_drm engine to function again
Summary: Previous gl_drm evas engine code did not work properly (or at
all really). This reworks/refactors the gl_drm engine code to work
again with the changes made to ecore_drm.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-05 10:00:44 -04:00
Cedric BAIL 8ad76a9d57 evas: forgotten header needed for make dist. 2015-05-31 14:57:48 +02:00
Tom Hacohen 79083ed3af Evas types: Fix inclusion of evas types from the right location.
My system was dirty and it was already installed in the right place.
Now it works as expected.

Reported on IRC by batden.
2015-05-29 16:42:34 +01:00
Tom Hacohen bfe92631c6 Evas: Add a general evas types header. 2015-05-29 14:46:16 +01:00
Bogdan Devichev 6dac83e643 evas: add API for creation Evas_3D node primitives.
Summary: Now mechanism of creation of primitives is similar to model loading.

Reviewers: Oleksander, Hermet, raster, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-27 00:31:07 +02:00
Stefan Schmidt d1a5770a77 libunibreak: Follow README rename in EXTRA_DIST for distcheck.
The latest libunibreak updated changed the README name to README.md. Follow
this for the EXTRA_DIST files.
2015-05-08 14:29:13 +02:00
Stefan Schmidt d48c5accea Revert "autotools: enable make check per individual modules."
This reverts commit 35119e7bfd.

Reverted to bring make check back in a working state. Also the way we
want to handle a more modular testing needs discussion.
2015-05-07 20:50:56 +02:00
Tom Hacohen 7a49d23f90 Static deps unibreak: update to what will soon be version 3.
Version 3 is not yet released, but this is on track to become it.
This is based on commit: a815e11f7ebf35b59278f783227a829ee4692760.

@feature.
2015-05-07 10:54:26 +01:00
Tom Hacohen ba77a837a3 Revert "Static deps: Move unibreak to be an external dep."
Apparently the Debian package, while up to date, for some reason does
not ship the .pc file (according to q66).
According to Stefan, Fedora doesn't even have libunibreak, but only the
previous naming and old version.

Will have to wait a few years more. :(

This reverts commit a2a9f33802.
2015-05-07 10:54:26 +01:00
Tom Hacohen a2a9f33802 Static deps: Move unibreak to be an external dep.
We need any version of libunibreak. The first one has been released in mid 2012.
Even slow distros like ubuntu already have an LTS out with a good enough
version, so I consider this enough to remove the maintenance cost.
This has been discussed on IRC.

@feature
2015-05-07 10:03:26 +01:00
kabeer khan 35119e7bfd autotools: enable make check per individual modules.
Currently make check runs tests of whole EFL.Enabled running
of tests of individual modules by make check-<modulename>

Signed-off-by: kabeer khan <kabeer.khan@samsung.com>
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-07 09:53:07 +02:00
Tom Hacohen 7c2d045375 Evas gl: Fix shader generation with out of source builds.
It's actually still stupid and broken, but at least less. It shouldn't
generate them in source, but out of source, I don't understand how this
even passes distcheck. Actually, my changes might break distcheck
because now it actually does what it says it does, and thus might break
things.

@fix
2015-05-06 18:22:22 +01:00
Cedric BAIL 74d27d6a27 evas: split ector surface from gl generic backend in an attempt to fix windows build. 2015-04-14 21:40:32 +02:00
Cedric BAIL 2260b9e328 evas: split software backend use of ector surface in an attempt to fix windows build. 2015-04-14 21:40:32 +02:00
Conrad Meyer d102d07674 autotools: use bash for gen_shaders*.sh
Summary:
Fixes src-on-NFS builds on FreeBSD, especially when the current shell is
not bash.

Test Plan:
Before:

      SHADERS  modules/evas/engines/gl_common/shader/evas_gl_shaders.x
    gmake[4]: modules/evas/engines/gl_common/shader/gen_shaders.sh: Command not found
    Makefile:34122: recipe for target 'modules/evas/engines/gl_common/shader/evas_gl_shaders.x' failed
    gmake[4]: *** [modules/evas/engines/gl_common/shader/evas_gl_shaders.x] Error 127

Even manually adjusting path doesn't fix it (and the file is clearly `+x`):

    $ ls -l src/modules/evas/engines/gl_common/shader/gen_shaders.sh
    -rwxrwxrwx  1 1000  1000  1848 Apr  8 17:01 src/modules/evas/engines/gl_common/shader/gen_shaders.sh
    $ export PATH="$PATH:$(pwd)/src"
    $ modules/evas/engines/gl_common/shader/gen_shaders.sh
    zsh: no such file or directory: modules/evas/engines/gl_common/shader/gen_shaders.sh

After patch:

     SHADERS  modules/evas/engines/gl_common/shader/evas_gl_shaders.x
     CC       modules/evas/engines/software_x11/modules_evas_engines_software_x11_module_la-evas_x_egl.lo
     CC       modules/evas/engines/software_x11/modules_evas_engines_software_x11_module_la-evas_xlib_swapbuf.lo
     ...

Projects: #efl

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-04-10 12:05:05 +02:00
Chris Michael e2e3e77010 evas-drm: Remove evas_drm file from build order
Summary: The Evas Drm engine makes use of Ecore_Drm functions now so
we no longer need private versions of the same code

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-10 11:09:51 +02:00
Chris Michael e72e1e1751 evas-drm: Remove evas_bufmgr.c from the Evas Drm engine
Summary: This file is not needed for the software drm engine. This was
added (initially) for combining the drm software & hardware engines
into one. As that is not the case, this file is unused.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-09 17:40:32 +02:00
Jean-Philippe Andre 05314902e0 Evas: Fix build for cserve2
This should fix a strange build error for gentoo, reported by Branko.
Dunno why it didn't fail with the default flags.
2015-04-07 14:10:33 +09:00
Cedric BAIL c1836b97ed evas: remove Efl.VG.Image for now as it was not implemented. 2015-04-03 16:38:00 +02:00
Cedric BAIL 013b18ea6a evas: removing the ability to load file in Evas_Object_VG for now.
Without events and animation it is not really useful and that can only be
done with a library on top of Ecore.
2015-04-03 16:34:26 +02:00
Cedric BAIL 9cce54d4df evas: fix make distcheck. 2015-04-03 16:33:53 +02:00
Cedric BAIL 9838b98f0b evas: add helper surface for cairo vector rendering. 2015-04-03 16:33:52 +02:00
Cedric BAIL eb2bd9a8d8 evas: move Evas.VG_* to Efl.VG.*
This also introduce legacy API for all of them.
2015-04-03 16:30:59 +02:00
Cedric BAIL dd1cae7329 evas: initial implementation of a dumb SVG parser.
This commit is experimental and may be rebased until usable.
2015-04-03 16:30:56 +02:00
Cedric BAIL 23c34b96d3 evas: add theoric GL backend support. 2015-04-03 16:30:44 +02:00
Cedric BAIL fcbc29f85e ector: move dependency around. Evas now depend on Ector. 2015-04-03 16:21:57 +02:00
Cedric BAIL b50931a5ca evas: actually compile Evas_VG_Shape. 2015-04-03 16:14:50 +02:00
Cedric BAIL 161b7b93e2 evas: add Evas_VG_Image. 2015-04-03 16:13:07 +02:00
Cedric BAIL 45ccb8f6d1 evas: add utility function to build path. 2015-04-03 16:13:00 +02:00
Cedric BAIL 9ba6e1a0ae evas: add initial Evas_Object_VG.
Evas_Object_VG is meant to become an object that can hold a SVG
scenegraph inside of it.
2015-04-03 16:12:59 +02:00
Jean-Philippe Andre a3de2ee3fd Evas GL common: Factorize shader generation code
Remove all individual shaders, factorize everything into
one vertex and one fragment shader. All previous functionality
has been kept as is[*]. Some new features have been added
(new shader types).

This is a first step in simplifying and improving the shaders system.
Next: simplify shader selection

[*] Yeah, that's quite a bold statement here. Maybe I broke everything.
2015-04-03 11:26:13 +09:00
Jean-Philippe ANDRE ad3f4fa5bc Evas 3D: Print SHADERS instead of SHADERS_3D at compile time
This is just a cosmetic change.
2015-03-24 11:47:29 -07:00
Carsten Haitzler 2347c6ff01 evas render2 - restructure it to be an explicit api call - cleaner to do 2015-03-20 18:03:54 +09:00
Chris Michael 3ebe41af18 evas-wayland-shm: Refactor Evas Wayland Shm Engine (Fix T2201)
Summary: This patch set fixes the issue of Evas wayland shm engine
causing crashes when resizing efl apps in the E wayland compositor. It
refactors the evas engine to wait for release events on buffers, and
hooks into frame callbacks so that release events will get triggered
at the appropriate time.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-03-17 15:49:09 -04:00
Cedric BAIL 8cac4ce5e7 evas: use Emile to decode TGV. 2015-03-17 09:58:18 +01:00
Chris Michael 3bb11b938c evas-software-x11: Provide TBM Native Surface support for xcb engine
Summary: This adds support for native surfaces in xcb. Previously when
the TBM Native Surface support was added, it broke the xcb build.
These commits fix that issue.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-02-27 10:36:58 -05:00
Stefan Schmidt 55ba0dfa4b build: Workaround an automake limitation during parallel install relinking
With this commit I'm finally able to use -j10 for make install on my machine.

During install libtool does some relinking which can result in to broken linking
if the dependencies are not handled correctly. Sadly automake has a problem with
the automatic dependency handling during install with LTLIBRARIES which we use
for all our modules. For the details please see this 4.5 years old bug report:
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328

We are now setting the dependency manually to force automake to the right decision
during install relinking.

Speed improvement itself is not that high (make -j 1 compared to -j10):
real 0m21.410s  vs. real 0m17.066s

The bigger benefit is the unified use of MAKEOPTS or normal -j X in all our
build targets. I have seen quite some bug reports where -j was used for install
target when it was used in the build target. Last but not least it helps me to
unify some parts of the jenkins jobs and finally allows me to run distcheck
with -j Which uses install internally and failed before. Which goes down from
real 12m50.349s to real 5m52.120s.
2015-02-26 13:51:20 +01:00
Guilherme Lepsch 52152ef757 autotools: fix build with correct VPATH support.
Summary:
The build was failing with "modules/evas/engines/gl_common/shader_3d/gen_shaders_3d.sh not found" on Mac OSX.

The recipe of a rule will execute as written. Changed it to use automatic variables. Ref.: http://www.gnu.org/software/make/manual/make.html#Recipes_002fSearch

Reviewers: q66, herdsman, vtorri

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2002
2015-02-23 18:31:42 +01:00
Dmytro Dadyka 1b142d09d9 evas: Evas_3D - add parallax occlusion shading.
Reviewers: Hermet, cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2018
2015-02-23 15:46:25 +01:00
Marcel Hollerbach 38cf426ae2 Evas 3D: Fix distcheck build
Summary:
The new files for the shaders and he header file where not part of
EXTRA_DIST, so they where not found when running make distcheck.

Test Plan: just run make distcheck

Reviewers: cedric, q66

Reviewed By: q66

Subscribers: cedric, herdsman

Differential Revision: https://phab.enlightenment.org/D1998
2015-02-19 15:29:50 +01:00
Oleksandr Shcherbina d28b82be45 evas: Evas_3D - callbacks for Evas 3D.
Summary:
Add class and type Evas_3D_Callback like wrapper under smart object
Incapsulate Evas_3D_Callback in Evas_3D_Object
Add virtual function register and unregister in Evas_3D_Object
Add function evas_3d_callback_call
Add callbacks clicked and collision for Evas_3D_Node

@feature

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: artem.popov, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-18 22:42:07 +01:00
Dmytro Dadyka b9b5ced501 evas: Evas_3D - refactor shader system.
Reviewers: Hermet, raster, jpeg, cedric

Subscribers: artem.popov, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-18 22:42:07 +01:00
Dongyeon Kim c0d990c724 evas/software_x11: implement tbm native surface type
Summary:
This native surface type is based on the tbm surface used for the tizen platform.
For the software_x11 backend, image data is retrieved from tbm surface
and color format converted appropriately.
This will only work when libtbm.so is present in the system.
@feature

Test Plan: Local tests

Reviewers: raster, cedric, jpeg, Hermet

Subscribers: wonsik, cedric

Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
2015-02-10 14:48:53 +09:00
Dongyeon Kim defcc1f2ac evas/software_x11: implement native surface set for x11 type
Summary:
implement native surface set for EVAS_NATIVE_SURFACE_X11 type
on software_x11 backend.
@feature

Test Plan: local tests on PC

Reviewers: jpeg, cedric, raster, Hermet

Subscribers: wonsik, cedric

Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
2015-02-10 14:48:22 +09:00
Dongyeon Kim 72f3e684d9 evas/gl_x11: introduce tbm native surface type
Summary:
This native surface type is based on the tbm surface used for the tizen platform.
EGL_TIZEN_image_native_surface EGL extension is used to map
tbm surface to an egl image
@feature

Reviewers: raster, cedric, jpeg

Subscribers: cedric, wonsik

Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
2015-02-10 14:48:22 +09:00
Jean-Philippe Andre 1874ea9890 Evas masking: Fix evas map masking in GL
While this may look like a feature, it's definitely a fix.
2015-01-14 16:35:20 +09:00
Jean-Philippe Andre 21984b1d58 Evas masking: Add some test cases
Here are only 3 very basic test cases.

One is a dumb set/get to check that image objects can
be passed as clippers.

The other one is a pixel verification test with extremely
basic data (NEAREST scaling and just rectangles). It also
compares text clipping and masking.

The last one performs a very basic verification that masks
of masks work.
2015-01-07 15:06:03 +09:00
Jean-Philippe Andre 44387b60a3 Evas masking: Add rectangle masking for GL 2015-01-07 15:06:03 +09:00
Jean-Philippe Andre 6552e8a6cc Evas masking: Add support for YUV, YUY2, NV12 masking in GL
RGB+A masking needs to be implemented, because there's a
clash (only one texture name "texa" is available).
2015-01-07 15:06:03 +09:00
Jean-Philippe Andre a2604956f9 Evas masking: Add support for BGRA/ARGB masking
Also, refactor font & image GL masking.
2015-01-07 15:06:03 +09:00
Jean-Philippe Andre 1fac1dcf57 Evas masking: Font masking for GL 2015-01-07 15:06:03 +09:00
Jean-Philippe Andre 124ab102b7 Evas masking: Implement image masking for GL engines 2015-01-07 15:06:02 +09:00
Cedric BAIL 21707789d7 evas: check for grayscale png and jpeg. 2014-12-28 22:14:05 +01:00
Bogdan Devichev 02c85b9fe8 evas: add lib/evas/common/evas_model_<action>.c. Functions are renamed similar to functions in image_save_load process. 2014-12-23 21:14:52 +01:00
Bogdan Devichev 9b7e22f5a5 evas: replace and rename savers/loaders. 2014-12-23 21:14:30 +01:00
Bogdan Devichev 043055fc8e evas: preparation of places for model_saver_loader separated from image_saver_loader. 2014-12-23 21:13:43 +01:00
Chris Michael feecbd409c Revert "Evas: Stop installing Evas_Engine_Stuff.h"
This reverts commit df3958bb89.

This is getting reverted because it broke building of Enlightenment. E
requires the Evas_Engine_Buffer header file for drawing mouse cursor
using the buffer engine.
2014-12-11 11:11:47 -05:00
Jean-Philippe Andre df3958bb89 Evas: Stop installing Evas_Engine_Stuff.h
Those really are internals shared between ecore and evas.
Considering ecore & evas are just part of EFL, and expedite
now doesn't even rely on these headers anymore, we can safely
remove them from the dist packages.

This will allow us to break this seemingly internal API/ABI.
2014-12-11 14:11:25 +09:00
Jean Guyomarc'h 682d7fab54 autotools: fix compiling/linking gl engines on OSX.
Summary:
Until now, it was necessary to set global LDFLAGS and CFLAGS to allow
compiling (and linking) engines using OpenGL.
gl_generic used to complained about missing headers or unkown libraries.
A problem on OSX is that there is CGL (Apple's Core OpenGL) on which the whole system
relies on and GLX, when X11 is installed; and they cohabit together.
When gl_cocoa is enabled, gl_generic is now linked against CGL.
When it is not, gl_generic is compiled with and linked against GLX as a fallback.

@fix

Test Plan:
With --enable-cocoa: software_x11, opengl_x11 and opengl_cocoa are working as expected.
With --disable-cocoa: software_x11 and opengl_x11 are also working as expected.
No compiling nor linking problems have been issued.

Reviewers: cedric, raster, raoulh

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2014-12-03 09:58:02 +01:00
ChunEon Park a3b3e1ecad evas/map: support aa in basic c computation. 2014-11-26 15:12:25 +09:00
Bogdan Devichev d896dfb342 evas: Evas_3D - add .ply export/import.
Summary:
.ply format is important for relation blender and EFl, because in blender exist only two mesh export API: bpy.ops.import_mesh.ply and bpy.ops.import_mesh.stl. One of them is necessary for .edc 3D generator. Which I writing now.
Sorry, it isn't like image loader. Refactoring of import/export will be soon.

Reviewers: Oleksander, artem.popov, Hermet, raster, cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2014-11-14 07:11:15 +01:00
Jean-Philippe Andre e18886a2a3 Evas GL: Fix list of shaders to distribute
Some shader files (shd) were not included in EXTRA_DIST. This didn't break
the build because the .x file was correctly generated.
I guess the missing files in previous releases also had no impact because
the .h files would be generated and shipped.

Also generate the enum automagically. New shaders need to be added
to Makefile_Evas.am.
2014-11-14 10:01:30 +09:00
Jean-Philippe Andre ae4f7f4e61 Evas shaders: Auto-generate the shaders from Makefile
Let's regenerate the shaders when a SHD file changes.
I've removed the Git commit id because only touching a file
would insert a code change.
2014-11-12 16:28:56 +09:00
Stefan Schmidt 9f753a7736 evas/gl_drm: Add eeze dependency to fix build race condition
Like the evas drm engine the evas gl_drm engine now depends on eeze for
backlight. Make sure it is setup to find eeze like the drm engine already
does.
2014-10-29 16:30:23 +01:00
Cedric BAIL eb11a157ec autotools: fix build with NEON support. 2014-10-29 00:12:06 +01:00
Stefan Schmidt e72c446c8f evas/cserve2_slave: Fix build race with linking to eo but not depending on it.
I have not been able to reproduce this myself but I have seen a build log where
the binary tries to link to libeo and fails due to the missing file.
A similar problem was "fixed" in 0e4b847deb, but
this really makes me wonder where the linking against eo comes from for cserve2
which is not using eo as far as I can see.
2014-10-23 14:45:07 +02:00
Cedric BAIL f7e07b4914 evas: tests more file format loader.
NOTE: It seems that the xpm one is broken. If somebody could give it
a better look and check if it work for him or not, before opening a bug
in phab.
2014-10-21 23:42:03 +02:00
Stefan Schmidt 2ac6c4accf tests/evas: Add missing files to EXTRA_DIST and remove duplicates
Various files form the tgv and 3d tests have been missing in EXTRA_DIST
and thus failing make distcheck. On the other hand we had duplicates in
the list. Clear this all up.
2014-10-21 10:31:56 +02:00
Jean-Philippe Andre 4315537820 Evas GL: Add support for OpenGL-ES 1.1 (part 2)
Add version param to context_create.
Add support for 1.1 contexts in the GL_X11 engine, and checks
for version in all other engines (return NULL).
Add API wrappers for all OpenGL-ES 1.1 APIs (normal and debug
modes).
2014-10-20 12:16:08 +09:00