path: root/src/ (follow)
AgeCommit message (Collapse)Author
2016-03-15Evas.Image: Move native surfaces to Efl.Canvas.SurfaceJean-Philippe Andre
X11, TBM and Wayland support are implemented for now.
2016-03-15Evas: Move 3d to Efl.Canvas.Scene3dJean-Philippe Andre
This still seems a bit redondant with the underlying Evas.Canvas3d.Scene class.
2016-03-15Evas.Image: Add new classes Snapshot and ProxyJean-Philippe Andre
Efl.Canvas.Snapshot and Efl.Canvas.Proxy are specialized classes previously implemented as features of Evas.Image. Note: this half of the work, as I suffered from a bad merge and rebase with my work branch on top of master.
2016-03-14evas: move Evas_Polygon to become Efl_Canvas_Polygon.Cedric BAIL
TODO: add support for 2 points (aka line).
2016-02-18build: fix duplicated use of the variable in multiple Makefile_*.am.Vincent Torri
GL_SHADERS_GEN is defined in the of Ector and Evas. As these Mafile_*.am are included in the same, there is a warning with multiple defined triggered by automake. So this patch rename these 2 variables Test Plan: autogen.sH Reviewers: jpeg, cedric Differential Revision: Signed-off-by: Cedric BAIL <>
2016-01-06Evas: Fix the build... I hopeJean-Philippe Andre
I forgot to modify some lines. Of course randomness made things work for me.
2016-01-06Evas: Do not install evas_ector_bufferJean-Philippe Andre
This is an internal API, should not be installed.
2016-01-05Evas: (try to) fix compilationJean-Philippe Andre
Not even sure if it's parallel compilation or not... classic case of works-for-me. Hopefully this should fix the build for others.
2016-01-05Evas_Engine: add TBM surface and clean up Native StructWonsik Jung
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,, JoogabYun Differential Revision:
2016-01-05Evas filters: Final fix after the ector refactorJean-Philippe Andre
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.
2016-01-05Evas filters: Add GL buffer backed by RGBA_ImageJean-Philippe Andre
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).
2016-01-05Evas: Fix make check after ector gl workJean-Philippe Andre
evas_ector is not meant to be public so remove it from the C++ bindings
2016-01-05Ector GL: Add skeletton for Evas.Ector.GL.Image.BufferJean-Philippe Andre
This is an ector buffer backed by an existing Evas_GL_Image
2016-01-05ector: add engine-specific evas image buffer wrapperJean-Philippe Andre
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).
2015-12-29[Evas] Refactor model's savers and loaders.perepelits.m
Summary: Move common part to a separated document. Make code more readable using smaller functions. (from Task T2713) Everything is OK with make check. Reviewers: cedric, raster, Hermet, stefan_schmidt Reviewed By: stefan_schmidt Subscribers: jpeg, artem.popov Differential Revision:
2015-12-23efl-js: JavaScript Eolian bindingFelipe Magno de Almeida
To configure efl sources with bindings to use in nodejs add ––with-js=nodejs in configure flags to generate node files $ configure --with-js=nodejs and compile normally with: $ make $ make install To use, you have to require efl: efl = require('efl') The bindings is divided in two parts: generated and manually written. The generation uses the Eolian library for parsing Eo files and generate C++ code that is compiled against V8 interpreter library to create a efl.node file that can be required in a node.js instance. @feature
2015-12-10Revert "Evas: Refactor model's savers and loaders."Jean-Philippe Andre
This reverts commit 01a32f64c0ffbe2ce048f8eb016d685913558cf5. This broke make check with the following error: evas_test_mesh.c:123:F:Meshes:evas_object_mesh_loader_saver:0: Failure 'res == 1' occurred Reopen
2015-12-10Evas: Refactor model's savers and loaders.perepelits.m
Summary: Move common part to a separated document. Make code more readable using smaller functions. (from Task T2713) I did it again because somehow test is passing now. It seems like this test suite is unstable. Please, let me know if there are any errors after running distcheck. Reviewers: cedric, raster, Hermet, stefan_schmidt Subscribers: jpeg, artem.popov Differential Revision:
2015-12-09Evas: Fix build for ubuntu... againJean-Philippe Andre
See 75fed54f0e4d72b20860 Apparently the proper CFLAGS are not set for SSE compilation. SSE flags are set only for a specific file (now 2 of them). As usual, it was worksforme but not for others. This should probably fix that. Thanks Sub for the report and testing this solution.
2015-12-09Evas filters: Move 'fill' to its own fileJean-Philippe Andre
2015-12-09Evas: Add all 'draw' files to evas static libJean-Philippe Andre
This should fix the build on old Ubuntu. I didn't get this error myself, but apparently the following issue happened:   CCLD   lib/ecore_evas/ lib/evas/.libs/ undefined reference to `efl_draw_neon_init' lib/evas/.libs/ undefined reference to `efl_draw_sse2_init' collect2: ld returned 1 exit status Thanks for the report
2015-12-08Revert "evas: refactor model's savers and loaders."Stefan Schmidt
This reverts commit 32c33ed64dda542c7cfc952fc656bb711260441b. This refactor broke the evas test cases for the model loaders and savers. I gave it a week to get fixed but a first try did not succeed and its blocks a lot of other automated testing. To be honest, it should have never gone it when it breaks existing test cases. Once fixed this refactor can happily go in. Fixes T2905
2015-12-08Revert "build: fix distcheck after model saver and loader rework"Stefan Schmidt
This reverts commit a7a2781a00ca6557aef6490bc0159cb426441b28. 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-04Evas filters: Implement mix3 func for rgba maskingJean-Philippe Andre
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-03Evas: Move alpha functions to static_libs/drawJean-Philippe Andre
This is a pretty simple code refactor, moving pixel handling to the new draw lib.
2015-12-03Ector: Move cairo surface back to ectorJean-Philippe Andre
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-03Ector: Rename C files to match their EO counterpartsJean-Philippe Andre
2015-12-03Ector: Move drawhelper to static_libsJean-Philippe Andre
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-02evas: fix bug with logic with eina_matrix in evas_3d_utilsse.osadchy
Summary: Also need to fix logically dead code in coverity. Reviewers: raster, Hermet, cedric Subscribers: jpeg Maniphest Tasks: T2832 Differential Revision: Signed-off-by: Cedric BAIL <>
2015-12-02build: fix distcheck after model saver and loader reworkStefan Schmidt
32c33ed64dda542c7cfc952fc656bb711260441b 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-01evas: refactor model's savers and loaders.perepelits.m
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:
2015-11-24Evas textblock: add support for hyphenation wrap styleDaniel Hirt
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-19Evas object: Add paragraph_direciton APIsYoungbok Shin
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:
2015-11-12evas: add forgotten file to SOURCES to fix distcheckStefan Schmidt
Added in 8ab190daec637892465f2c5ea08298b3fafc4e98 but forgotten to be added to the SOURCES.
2015-11-11Evas software_x11: add DRI2-x11 support at image_native_set()Joogab Yun
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:, dkdk, cedric Differential Revision:
2015-11-10Evas GL: Implement runtime generation and load of shadersJean-Philippe Andre
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-09evas: add common part of savers and loaders.Bogdan Devichev
Summary: Common part will make savers and loaders shorter and easier for understanding and refactoring. - due to this task. Should be merged after Should be merged to start adding refactored savers and loaders. Reviewers: Hermet, raster, Oleksander, cedric Subscribers: cedric Differential Revision: Signed-off-by: Cedric BAIL <>
2015-11-09evas: move model save/load from common to common3d.Bogdan Devichev
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 Reviewers: cedric, Hermet, raster, Oleksander Subscribers: cedric Differential Revision: Signed-off-by: Cedric BAIL <>
2015-10-19Evas GL shaders: Simplify a bit the shaders codev1.16.0-beta2Jean-Philippe Andre
Following raster's change, the Program_Source struct is useless. This is a big commit, again, but really all is auto-generated.
2015-10-18evas gl fix color on bigendian with gl engineCarsten Haitzler (Rasterman)
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-14Evas GL: Add a test case for Evas GL (make check)Jean-Philippe Andre
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-01evas: include new header file in build to fix distcheckStefan Schmidt
Introduced in 72b13c3ebb0b5f117f3602871ec2842d4baac786 the new header was not deployed and thus not available in the tarball.
2015-09-24evas tiler update handler - move to region code to be accurate and fastCarsten Haitzler (Rasterman)
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-08-27evas/gl_common: add new header files to build to make them available for distStefan Schmidt
2015-08-03Revert "Adds support of the eglfs module in the autotools config"Nicolas Aguirre
This reverts commit 3b2074aa710a095c2379702334bfa125bcc1990a.
2015-08-03Adds support of the eglfs module in the autotools configFlorent Revest
2015-07-25evas - render2 - ensure region files are in distCarsten Haitzler (Rasterman)
2015-06-25Evas filters: Mark API as @betaJean-Philippe Andre
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-25Evas filters: EO-ify the filters APIJean-Philippe Andre
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-25Evas filters: Implement Lua classes for colors & bufferJean-Philippe Andre
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.