Commit Graph

31047 Commits

Author SHA1 Message Date
Daniel Kolesa ac0113ba2b eolian/generator: generation for new documentation system
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-05 12:15:51 +01:00
Felipe Magno de Almeida 51d9760fe6 eolian-cxx: Removed unused function
Removed unused function and consequent warning
2015-06-05 00:19:34 -03:00
Lukasz Stanislawski 2017c8be95 ecore-x: add new grab touch devices functionality.
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: https://phab.enlightenment.org/D2568
2015-06-04 13:06:27 -04:00
Daniel Kolesa af2bcfa9d1 eolian: double newline ends summary, not single
This allows you to split the summary on multiple lines
if necessary (for example to satisfy line limit)

@fix
2015-06-04 15:41:52 +01:00
Tom Hacohen 20934fa03d Evas 3d texture: Fix some Eolian warnings. 2015-06-04 10:16:14 +01:00
Tom Hacohen 183541cc75 Evas image: Fix some Eolian warnings. 2015-06-04 10:16:14 +01:00
Tom Hacohen b9a3b06984 Evas canvas: Fix some Eolian warnings. 2015-06-04 10:16:14 +01:00
Vivek Ellur 81b52fb0ec eina: add test cases for eina_matrix3 APIs
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 <vivek.ellur@samsung.com>

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-04 10:32:18 +02:00
Cedric BAIL 408fc6237e evas: silence warning.
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-03 18:17:23 +02:00
Daniel Kolesa 5892fc630c eolian: remove prototype of non-existent API 2015-06-03 16:47:24 +01:00
Daniel Kolesa ba033a4cfc eolian: add documentation handling API
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-03 16:46:47 +01:00
shilpa.singh a867caf260 Edje: Add have_selection check to avoid unnecessary function calls
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: https://phab.enlightenment.org/D2621
2015-06-03 16:39:42 +01:00
Ivan Furs a88aebe8cc evas: for aabb add interpolation frame when base frame is not found
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: https://phab.enlightenment.org/D2594

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-03 17:14:12 +02:00
Cedric BAIL 69e44c24e3 ecore_con: fix error handling case.
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-03 17:14:12 +02:00
Daniel Kolesa b2c47737b1 eolian: properly fill and free all doc fields 2015-06-03 15:35:20 +01:00
Daniel Kolesa 4bdacafaf1 eolian: start exposing Eolian_Documentation 2015-06-03 15:35:20 +01:00
Bogdan Devichev 8369dfd28f evas_3d: fix coverity scan CID 1302703 and CID 1302702
Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2613
2015-06-03 21:26:34 +09:00
jiin.moon 63a12d7d26 emile: fix region load for jpeg image with orientation different set.
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: https://phab.enlightenment.org/D2593

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-03 13:46:44 +02:00
Daniel Kolesa 0c729faf68 eolian: initial test file for docs (no APIs to test yet) 2015-06-03 12:06:36 +01:00
Daniel Kolesa 5084938c04 eolian: enums can't be opaque, check properly 2015-06-03 12:01:21 +01:00
Tom Hacohen 6190f3cb46 Edje object: Fix more Eolian warnings. 2015-06-03 11:30:41 +01:00
Daniel Kolesa a6fbe7b6a5 eolian: preliminary parsing of doc syntax 2015-06-03 11:11:12 +01:00
Dongyeon Kim 25822405a4 evas/gl_common: Reset mvp matrix only for shaders that are being used
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-03 11:30:22 +09:00
Dongyeon Kim 3e39bf3638 Evas GL: support surfaceless make current
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-03 11:30:22 +09:00
Dongyeon Kim a4c05cc68c Evas GL: Skip surface buffers create/allocate for pbuffer with NO_FBO
Summary:
When pbuffer surface is created with EVAS_GL_NO_FBO config,
FBO should not be created/allocated.
2015-06-03 11:30:22 +09:00
Dongyeon Kim 517109858e Evas GL: Match FBO config with window surface config
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-03 11:30:22 +09:00
Dongyeon Kim ae91db021b Evas GL: Pass correct attachment enum for glDiscardFramebufferEXT
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-03 11:30:22 +09:00
Dongyeon Kim e4e67732c2 Evas GL: return correct context for context_get with indirect context
Summary:
When evas gl falls back to using indirect context,
evas_gl_current_context_get() should return the indirect context.
@fix
2015-06-03 11:30:22 +09:00
Dongyeon Kim 660bfcf3c2 Evas GL: Separate EGL and GL extension lists
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-03 11:30:22 +09:00
Dongyeon Kim 411bc27390 Evas GL: Share texture id in case EGL image is not supported
Summary:
When EGL image is not supported, Evas GL should share texture id
to the gl backend for indirect rendering to work.
2015-06-03 11:30:22 +09:00
Dongyeon Kim 34480d3d5d Evas GL: Make current to an Evas GL context before destroying surface buffers
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-03 11:30:22 +09:00
Dongyeon Kim b0d2643f93 Evas GL: Add indirect surface fallback and yinvert callback
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, mer.kim, cedric
2015-06-03 11:30:22 +09:00
Dongyeon Kim 63e057bff9 Evas GL: Fix direct_mem_opt and direct_override
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-03 11:30:21 +09:00
Dongyeon Kim ea5788d247 Evas GL: destroy egl image when surface is destroyed
Summary:
We should destroy egl image when surface is destroyed
to avoid memory leak.
@fix

Test Plan: Evas GL test cases

Reviewers: jpeg

Subscribers: mer.kim, mythri, wonsik, cedric

Differential Revision: https://phab.enlightenment.org/D2357
2015-06-03 11:30:21 +09:00
Dongyeon Kim e789b24ff4 Evas GL: 1.x support for GLX
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, mer.kim, mythri, wonsik

Differential Revision: https://phab.enlightenment.org/D2342
2015-06-03 11:30:21 +09:00
Jean-Philippe Andre 777f7f2047 Evas masking: Fix rare issue of invalid rendering (GL)
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-03 11:03:29 +09:00
Daniel Kolesa a4485484f1 eolian: Eolian_Object for docs 2015-06-02 18:27:46 +01:00
Daniel Kolesa 0703cc0f5e eolian: initial lexing of documentation 2015-06-02 18:12:09 +01:00
Chris Michael 732d67c155 evas-drm: Remove useless fields from Outbuf structure
Summary: These fields are not needed in the outbuf structure as they
are never used, so just remove them.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-02 09:24:22 -04:00
Chris Michael 8e4426642d evas-drm: Minor formatting fix
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-02 09:17:57 -04:00
Chris Michael 6929172a81 evas-gl-drm: Fix formatting
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-01 14:06:21 -04:00
Chris Michael a9a733c2f5 ecore-evas: Fix issue of gl_drm engine not being able to load
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 <cp.michael@samsung.com>
2015-06-01 14:06:21 -04:00
Daniel Kolesa 97443242c2 autotools: provide smaller EOLIAN_FLAGS for customization 2015-06-01 17:35:39 +01:00
Daniel Kolesa ce65929422 autotools: remove EOLIAN_FLAGS
We don't need to specify each dir separately as Eolian
has been searching recursively for quite a while.
2015-06-01 17:28:45 +01:00
Cedric BAIL 0148350ce9 edje: remove left over copy&paste that triggered warning. 2015-06-01 17:50:02 +02:00
katpavalli ff1184df2e edje: add ability to change the language on one specific edje object.
Summary:
   Add a new property to edje_object.eo for setting the language on one Edje_Object.

Test Plan:
Test Code to test this implementation is done as part of efl/src/examples/edje/edje-text.c and efl/src/examples/edje/text.edc
   edje_cc -md <dir path>/efl/src/examples/edje/ text.edc && gcc -o edje-text edje-text.c `pkg-config --libs --cflags ecore-evas edje evas ecore eo`
   ./edje-text

   1) Click On the text "Click here"
      The language gets changed as per the specific edje object.

   2) Click on the text object at bottom. "Click here"
      The system language gets changed and the below two edje objects language are changed globally.

Reviewers: cedric, shilpasingh

Subscribers: poornima.srinivasan, govi, rajeshps, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-06-01 17:50:02 +02:00
Cedric BAIL cae31f824a pkg-config: fix portability issue on Windows.
@fix T2458
2015-06-01 17:20:40 +02:00
Daniel Kolesa 944e44b17d eolian: tests for declaration api 2015-06-01 15:24:00 +01:00
Daniel Kolesa 9c024993a1 eolian/generator: generate types in their original decl order 2015-06-01 15:06:25 +01:00
Daniel Kolesa e58da1faa0 eolian: add actual useful declaration APIs 2015-06-01 14:48:50 +01:00