AgeCommit message (Collapse)Author
2015-06-05ecore-drm: Don't crash when trying to disable an outputChris Michael
Summary: If we call these functions with an already disabled output, we crash. Check for an output being 'enabled' before we make these calls. @fix Signed-off-by: Chris Michael <>
2015-06-05ecore-evas: Change gl_drm to be the proper engine nameChris Michael
@fix Signed-off-by: Chris Michael <>
2015-06-05ecore-drm: Remove erroneous error messages from EINA_SAFETY checksChris Michael
Summary: As the gl_drm engine code will almost always pass NULL rectangles, remove the EINA_SAFETY checks so that logs don't fill with meaningles error messages. @fix Signed-off-by: Chris Michael <>
2015-06-05ecore-evas-drm: Update ecore_evas_drm for recent evas gl_drm changesChris Michael
Summary: Previous Ecore_Evas drm code would create the gbm device and surface inside the gl_drm function. As these are now handled inside the evas-gl-drm engine itself, this code is not needed here. @fix Signed-off-by: Chris Michael <>
2015-06-05evas-gl-drm: Rework gl_drm engine to function againChris Michael
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 <>
2015-06-05evas-gl-drm: Remove old engine codeChris Michael
Signed-off-by: Chris Michael <>
2015-06-05eolian: don't emit an extra empty line in certain casesDaniel Kolesa
2015-06-05eolian/generator: generation for new documentation systemDaniel Kolesa
This commit adds the necessary generator logic to emit doc comments from the new doc syntax. Old doc comments are kept in for the time being as they're used within the EFL but they will be removed eventually. This new generator focuses all the important code in one place, making usage easy. @feature
2015-06-05eolian-cxx: Removed unused functionFelipe Magno de Almeida
Removed unused function and consequent warning
2015-06-04ecore-x: add new grab touch devices functionality.Lukasz Stanislawski
Summary: EFL currently supports pointer grabbing. This patch introduces new API allowing to grab all slave touch devices registered in X server Grabbing is performed by XIGrabDevice function from XInput 2.0. By default ecore_x_input_touch_devices_grab grabs all XISlavePointer devices, having XITouchInfoClass. Function returns EINA_TRUE if at least one touch device was successfully grabbed. ecore_x_input_touch_devices_ungrab ungrabs all previously grabbed devices. To process events correctly change has been done in x_input_handler to emulate mouse pointer events. If XITouchEmulatingPointer flag is set on touch events and device is grabbed framework will generate mouse events. This is required due to X Server design in which mouse events are no longer send to client when device is detached (grabbed) from virtual core pointer. @feature Reviewers: cedric, raster, devilhorns Subscribers: seoz, cedric Differential Revision:
2015-06-04eolian: double newline ends summary, not singleDaniel Kolesa
This allows you to split the summary on multiple lines if necessary (for example to satisfy line limit) @fix
2015-06-04Evas 3d texture: Fix some Eolian warnings.Tom Hacohen
2015-06-04Evas image: Fix some Eolian warnings.Tom Hacohen
2015-06-04Evas canvas: Fix some Eolian warnings.Tom Hacohen
2015-06-04eina: add test cases for eina_matrix3 APIsVivek Ellur
Summary: Added test cases for eina_matrix3_values_get, eina_matrix3_values_set, eina_matrix3_equal, eina_matrix3_type_get APIs Signed-off-by: Vivek Ellur <> Reviewers: cedric Reviewed By: cedric Subscribers: cedric Differential Revision: Signed-off-by: Cedric BAIL <>
2015-06-03evas: silence warning.Cedric BAIL
So I don't like this data being void and stride being in bytes, but changing it for silencing a warning will be a massive change. I will put that on the major cleanup that Evas_3D need to receive.
2015-06-03eolian: remove prototype of non-existent APIDaniel Kolesa
2015-06-03eolian: add documentation handling APIDaniel Kolesa
This adds new APIs that deal with the new documentation syntax provided by Eolian. The old doc comment APIs are considered deprecated from now on and will be removed. @feature
2015-06-03Edje: Add have_selection check to avoid unnecessary function callsshilpa.singh
Summary: Check for have_selection flag when left/arrow keys are pressed to jump across the selected text, to avoid unnecessary function calls of comparision, copy of sel_start and sel_end pointers. Test Plan: Press left and right arrow keys on selected and normal text. Reviewers: herdsman, tasn Subscribers: SubodhKumar, navnbeet, cedric Differential Revision:
2015-06-03evas: for aabb add interpolation frame when base frame is not foundIvan Furs
Summary: Old algorithm searched specified frame of the base frame and when it could not find the specified frame it ignored. So the bounding box was not synchronized with the object. New algorithm always returns specified base frame or frame interpolation between the nearest base frames. That does synchronizes mesh object and his bounding box. Reviewers: Hermet, cedric Subscribers: cedric Differential Revision: Signed-off-by: Cedric BAIL <>
2015-06-03ecore_con: fix error handling case.Cedric BAIL
Since the move to Eo, in case of error we do not need to cleanup anything when finalize finish. The kill function was arranged to do so, but it was still emiting an event exposing the invalid Eo object. Looking closely at the code, that should have not happened, as there was no symetrical ADD event and the function would do nothing else. So removing it. This prevent any potential SEGV from a function that would catch the DEL event. @fix
2015-06-03eolian: properly fill and free all doc fieldsDaniel Kolesa
2015-06-03eolian: start exposing Eolian_DocumentationDaniel Kolesa
2015-06-03evas_3d: fix coverity scan CID 1302703 and CID 1302702Bogdan Devichev
Reviewers: Hermet Reviewed By: Hermet Subscribers: cedric Differential Revision:
2015-06-03emile: fix region load for jpeg image with orientation different set.jiin.moon
Summary: If you try to load the jpeg image with an orientation mode defined using elm_photocam, you can see the broken image(in canse of 90 degree) or even segmentation fault can happen (in case of 180,270 degree) @fix Test Plan: photocam menu on elementary_test Reviewers: Hermet, cedric Subscribers: cedric Differential Revision: Signed-off-by: Cedric BAIL <>
2015-06-03eolian: initial test file for docs (no APIs to test yet)Daniel Kolesa
2015-06-03eolian: enums can't be opaque, check properlyDaniel Kolesa
2015-06-03Edje object: Fix more Eolian warnings.Tom Hacohen
2015-06-03eolian: preliminary parsing of doc syntaxDaniel Kolesa
2015-06-03evas/gl_common: Reset mvp matrix only for shaders that are being usedDongyeon Kim
Summary: Evas has quite a number of shaders, and resetting the projection matrix for all shaders takes some time, which is an overhead when target surface is continuously being changed (ie. when using proxy). So here we reset the projection matrix for shaders that are actually used.
2015-06-03Evas GL: support surfaceless make currentDongyeon Kim
Summary: Evas GL now supports surfaceless make current, where evas_gl_make_current can be called with sfc parameter NULL. This closely resembles EGL_KHR_surfaceless_context extension, where applications that only want to render to client API targets can make current to NULL surface instead of creating a dummy egl surface. @feature
2015-06-03Evas GL: Skip surface buffers create/allocate for pbuffer with NO_FBODongyeon Kim
Summary: When pbuffer surface is created with EVAS_GL_NO_FBO config, FBO should not be created/allocated.
2015-06-03Evas GL: Match FBO config with window surface configDongyeon Kim
Summary: When direct rendering is enabled, FBO configuration should match window surface configuration as FBO will be used in fallback cases. So create FBO with configuration from window surface. @fix
2015-06-03Evas GL: Pass correct attachment enum for glDiscardFramebufferEXTDongyeon Kim
Summary: When default framebuffer(0) is bound, attachment should contain COLOR, DEPTH or STENCIL for glDiscardFramebufferEXT. When a framebuffer object is bound, attachment should contain COLOR_ATTACHMENT0, DEPTH_ATTACHMENT or STENCIL_ATTACHMENT. This should be correctly taken into account for indirect rendering, where internal FBO is used. @fix
2015-06-03Evas GL: return correct context for context_get with indirect contextDongyeon Kim
Summary: When evas gl falls back to using indirect context, evas_gl_current_context_get() should return the indirect context. @fix
2015-06-03Evas GL: Separate EGL and GL extension listsDongyeon Kim
Summary: Separate EGL extensions from GL/GLES extension list, since we have extension list for each GL version, and we do not want to check EGL extensions differently when different GL versions are used. This also simplifies extension string get function as we just need to concatenate EGL and GL extensions rathan than keeping track of GL extensions only.
2015-06-03Evas GL: Share texture id in case EGL image is not supportedDongyeon Kim
Summary: When EGL image is not supported, Evas GL should share texture id to the gl backend for indirect rendering to work.
2015-06-03Evas GL: Make current to an Evas GL context before destroying surface buffersDongyeon Kim
Summary: We should make current to an Evas GL context before calling _surface_buffers_destroy, otherwise resources from GL backend will be removed. @fix
2015-06-03Evas GL: Add indirect surface fallback and yinvert callbackDongyeon Kim
Summary: When either FBO or EGL image from texture extension is not supported, we can use pixmap surface as indirect surface fallback. Since native pixmaps have (0,0) in the upper left while FBOs have (0,0) in the lower left, we should invert the y coordinates when native pixmaps are used as the render target. To accomodate run-time y-invert check we add a new callback for EVAS_NATIVE_SURFACE_EVASGL type. Reviewers: cedric, jpeg Subscribers: wonsik,, cedric
2015-06-03Evas GL: Fix direct_mem_opt and direct_overrideDongyeon Kim
Summary: Remove surface buffer create/allocate in pbuffer_surface_create. In evgl_make_current, we should use direct_mem_opt, direct_override values set in EVGL_Surface struct, not the global value set by env variables. @fix
2015-06-03Evas GL: destroy egl image when surface is destroyedDongyeon Kim
Summary: We should destroy egl image when surface is destroyed to avoid memory leak. @fix Test Plan: Evas GL test cases Reviewers: jpeg Subscribers:, mythri, wonsik, cedric Differential Revision:
2015-06-03Evas GL: 1.x support for GLXDongyeon Kim
Summary: Now we can support EVAS_GL_GLES_1_X version for GLX backend with both direct and indirect rendering. Refactored api get functions to have similar code path for each version. @feature Test Plan: Evas GL test case Reviewers: cedric, jpeg Subscribers: cedric,, mythri, wonsik Differential Revision:
2015-06-03Evas masking: Fix rare issue of invalid rendering (GL)Jean-Philippe Andre
Thanks Dongyeon for finding out this solution. Now that was one nasty bug :) Somehow the currently bound texture id would not match what Evas expected, so Evas would not call glBindTexture when required. As a result it was drawing black (sampling from tex 0). @fix
2015-06-02eolian: Eolian_Object for docsDaniel Kolesa
2015-06-02eolian: initial lexing of documentationDaniel Kolesa
2015-06-02evas-drm: Remove useless fields from Outbuf structureChris Michael
Summary: These fields are not needed in the outbuf structure as they are never used, so just remove them. Signed-off-by: Chris Michael <>
2015-06-02evas-drm: Minor formatting fixChris Michael
NB: No functional changes Signed-off-by: Chris Michael <>
2015-06-01evas-gl-drm: Fix formattingChris Michael
NB: No functional changes Signed-off-by: Chris Michael <>
2015-06-01ecore-evas: Fix issue of gl_drm engine not being able to loadChris Michael
Summary: The engine for OpenGL with drm is actually called "gl_drm". There was an issue where the engine_get function would return false because the #ifdef was testing the wrong thing. @fix Signed-off-by: Chris Michael <>
2015-06-01autotools: provide smaller EOLIAN_FLAGS for customizationDaniel Kolesa