Commit Graph

5815 Commits

Author SHA1 Message Date
Cedric BAIL f5f48a8265 ector: correctly handle case with NULL being set for efl_gfx_shape_stroke_dash_set. 2015-04-03 16:33:37 +02:00
Cedric BAIL 4bdda2db5a efl: fix parsing of SVG path data. 2015-04-03 16:33:35 +02:00
Cedric BAIL 988b9cdcbc efl: make efl_gfx_shape_interpolate more resistant to bogus request. 2015-04-03 16:33:33 +02:00
Cedric BAIL d02bb67da0 efl: actually update command and points length. 2015-04-03 16:33:31 +02:00
Subhransu Sekhar Mohanty 5753b43812 ector: fix pre multiplied color issue with FreeType backend.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-04-03 16:33:29 +02:00
Cedric BAIL bc7833e785 efl: fix rectangle shape to finish at the right position. 2015-04-03 16:33:28 +02:00
Cedric BAIL 0e18880efe ector: fix forgotten return value. 2015-04-03 16:33:26 +02:00
Jorge Luis Zapata Muga 8029e67c24 efl: use enesim/moonlight path normalizer.
This fix issue with rounded rectangle.
2015-04-03 16:33:22 +02:00
Cedric BAIL de08a3bc04 ector: add reference point to define (0, 0) and don't repeat the same value everywhere. 2015-04-03 16:33:19 +02:00
Cedric BAIL 5613ca50ae ector: remember last position and translate to Ector_Renderer origin position. 2015-04-03 16:33:07 +02:00
Subhransu Sekhar Mohanty 10dca9f68e ector : add path cliping feature in FreeType software backend. 2015-04-03 16:33:05 +02:00
Cedric BAIL cb1226ad41 ector: set the transformation matrix before any translation ! 2015-04-03 16:33:04 +02:00
Jose Gonzalez 472f3a72ff ector: correct implementation for color multiplication. 2015-04-03 16:33:01 +02:00
Cedric BAIL f5fe46ec3c ector: cairo require an identity matrix to be set instead of NULL.
NULL mean crash :-D
2015-04-03 16:33:00 +02:00
Cedric BAIL 983e80b2ad efl: correct Efl.Gfx.Shape.append_circle to follow SVG specification. 2015-04-03 16:31:54 +02:00
Cedric BAIL 9f8c35002b efl: add Efl.Gfx.Shape.append_rect following SVG specification.
SVG rectangle can have rounded corner.
2015-04-03 16:31:53 +02:00
Cedric BAIL 59635cd492 efl: handle path forced reset to NULL. 2015-04-03 16:31:52 +02:00
Cedric BAIL 8e05c58f2b ector: use shift instead of divide when possible. 2015-04-03 16:31:50 +02:00
Subhransu Sekhar Mohanty 891ec14585 ector: add software backend using FreeType rasterizer. 2015-04-03 16:31:45 +02:00
Cedric BAIL e99774946c ector: implementation of some common code in Ector.Renderer.Cairo.Base.
This require to make some class mixin instead of interface or abstract. So a lot
of class renaming is also necessary here.
2015-04-03 16:31:44 +02:00
Cedric BAIL bc016aa277 ector: implement a simple virtual to prepare the mask in Ector.Renderer.Generic.Base. 2015-04-03 16:31:43 +02:00
Cedric BAIL af11e81a51 ector: remove useless constructor. 2015-04-03 16:31:40 +02:00
Cedric BAIL cd1f09d359 evas: all color in evas are premultiplied, enforce with warning when not. 2015-04-03 16:31:39 +02:00
Cedric BAIL b54897dc27 ector: remove unecessary check for cairo context.
We now maintain an always available context.
2015-04-03 16:31:37 +02:00
Cedric BAIL 98b13ec944 ector: do not forget to get cairo symbol in Ector.Renderer.Cairo.Gradient_Linear. 2015-04-03 16:31:36 +02:00
Cedric BAIL 976e9de88a ector: call eo_do_super on the right gradient class in Ector.Renderer.Cairo.Gradient_Radial. 2015-04-03 16:31:35 +02:00
Cedric BAIL f41884153f ector: slightly better implementation for gradient radial draw. 2015-04-03 16:31:33 +02:00
Cedric BAIL 2821fd58db ector: on shutdown our ability to find cairo symbol may no be there anymore. 2015-04-03 16:31:32 +02:00
Cedric BAIL 9967da56ca ector: remove useless printf ! 2015-04-03 16:31:31 +02:00
Subhransu Sekhar Mohanty 3dea7dbfaf evas: update and propagate Evas_VG_Base transformation. 2015-04-03 16:31:29 +02:00
Cedric BAIL 4f98cab04d ector: fix inheritance in cairo backend. 2015-04-03 16:31:18 +02:00
Cedric BAIL 5ef81292a1 ector: fix setting context to always have one available. 2015-04-03 16:31:17 +02:00
Cedric BAIL e4330ea220 ector: fix inheritance of Ector.Generic.Shape. 2015-04-03 16:31:15 +02:00
Cedric BAIL fbeca90de4 ector: fix Eina_Log domain to be usable outside of main. 2015-04-03 16:31:13 +02:00
Cedric BAIL 986704dfb4 evas: do not track change on root node. 2015-04-03 16:31:09 +02:00
Cedric BAIL ebfcfed59b evas: fix coding style. 2015-04-03 16:31:08 +02:00
Cedric BAIL ab1f6f7984 evas: set alpha to zero for Efl.VG.Shape.stroke_color. 2015-04-03 16:31:00 +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 0a27241f61 evas: eo_data_scope_get will return random value in memory, need to always use eo_isa. 2015-04-03 16:30:54 +02:00
Cedric BAIL 6a90d24aab evas: Evas_VG_Root_Node parent will be NULL during destructor. 2015-04-03 16:30:53 +02:00
Cedric BAIL 457e550616 evas: implement render_pre due to our hack over Evas_VG_Container. 2015-04-03 16:30:53 +02:00
Cedric BAIL d6feb49c0c evas: don't duplicate entry in parent children list
eo_parent_set is always called, even in the constructor.
2015-04-03 16:30:52 +02:00
Cedric BAIL 27f0399d08 efl: Efl.Gfx.Shape should actually be a mixin. 2015-04-03 16:30:51 +02:00
ChunEon Park 4e0b919a62 evas: ref/unref root node while it's being used by vg object.
This also remove dead code.
2015-04-03 16:30:49 +02:00
Cedric BAIL df43ec9487 ector: fix constructor/destructor of Ector_Cairo backend. 2015-04-03 16:30:48 +02:00
Vitor Sousa 09be34b825 eolian_cxx: fix build error for some generated C++ wrappers
Name generation for some C++ wrapper functions were adding an illegal ":"
in the function name.
Fixed the logical error that was causing this to happens when converting
namespaces to function prefixes.

@fix
2015-04-03 16:30:46 +02:00
Cedric BAIL 5f2fda2c18 efl: all those interface are clearly BETA_API. 2015-04-03 16:30:45 +02:00
Cedric BAIL f2380b0920 evas: introduce begin and end operation on an Ector surface.
This is necessary for GL has you want to map once and run with it, but it
will also help the software backend to not remap the surface all the time !
2015-04-03 16:30:44 +02:00
Cedric BAIL 0f6328b04f efl: introduce EFL_GFX_CHANGED event and properly propagate up to Evas. 2015-04-03 16:30:42 +02:00
Cedric BAIL 9fd2b74b08 efl: trigger EFL_GFX_CHANGED on path change. 2015-04-03 16:30:40 +02:00
Cedric BAIL 94418f1cd5 efl: add a changed event triggered when something affect the visual aspect of an object. 2015-04-03 16:30:39 +02:00
Subhransu Sekhar Mohanty 7ee3f8d952 evas: add documentation for Evas_Object_Vg class. 2015-04-03 16:30:38 +02:00
Subhransu Sekhar Mohanty b108fe8a10 efl: add documentation for shape and gradient interface. 2015-04-03 16:30:37 +02:00
Subhransu Sekhar Mohanty a068378c83 evas: add documentation for Evas_Object_VG 2015-04-03 16:30:36 +02:00
Subhransu Sekhar Mohanty dd58721613 efl: add documentation for Efl.Gfx enums. 2015-04-03 16:30:35 +02:00
Cedric BAIL 32de8d9e5f efl: move Efl.Gfx.Gradient_* to Efl.Gfx.Gradient.* much nicer for bindings. 2015-04-03 16:30:35 +02:00
Cedric BAIL 1e18631554 evas: make Evas.VG_Shape use Efl.Gfx.Base.color_part for stroke. 2015-04-03 16:30:34 +02:00
Cedric BAIL d7f434986e evas: use Efl.Gfx.Base.color_part in Evas.VG_Node. 2015-04-03 16:30:33 +02:00
Cedric BAIL cd3f8db506 efl: provide Efl.Gfx.Base.color_part and implement it in top Evas_Object. 2015-04-03 16:30:32 +02:00
Cedric BAIL ac8d923090 efl: add path operation to Efl.Gfx.Shape. 2015-04-03 16:23:28 +02:00
Cedric BAIL 1fb52dbe71 evas: move Evas.VG to use Efl.Gfx.View. 2015-04-03 16:23:27 +02:00
Cedric BAIL a395f5ded5 efl: add Efl.Gfx.View and use it in Evas.Image. 2015-04-03 16:23:26 +02:00
Cedric BAIL 5f2527f791 evas: move Evas.VG to use Efl.Gfx.Fill. 2015-04-03 16:23:25 +02:00
Cedric BAIL 7ba7ed4a1c efl: add Efl.Gfx.Fill and migrate Evas.Image to it. 2015-04-03 16:23:24 +02:00
Cedric BAIL a38c037953 evas: make Evas.VG_Node inherit from Efl.Gfx.Stack. 2015-04-03 16:23:23 +02:00
Cedric BAIL 500fe6ef1b efl: add Efl.Gfx.Stack interface and update Evas_Object accordingly. 2015-04-03 16:23:22 +02:00
Cedric BAIL c1118e7282 evas: implement Efl.Gfx.Base in Evas.VG_Node. 2015-04-03 16:23:20 +02:00
Cedric BAIL 651436f410 efl: rename visibility to visible.
After discussion bindings and people in general prefer visible.

T2035
2015-04-03 16:23:19 +02:00
Cedric BAIL c08f8e26a6 efl: add Efl.Gfx.Base and fix inheritance for Evas_Object. 2015-04-03 16:23:17 +02:00
Cedric BAIL c000ee8099 efl: rename namespace Graphics to Gfx. 2015-04-03 16:23:16 +02:00
Cedric BAIL dfd40467fc efl: add a parser for SVG data path that generate EFL Path. 2015-04-03 16:23:15 +02:00
Cedric BAIL 2067e85d68 evas: use the new Efl_File mmap function correctly for Evas_VG API. 2015-04-03 16:23:14 +02:00
Cedric BAIL c2e75544e1 efl: move mmap API to be part of Efl_File class. 2015-04-03 16:23:13 +02:00
Cedric BAIL 28257ec8fe evas: fix warning due to forgotten return. 2015-04-03 16:23:12 +02:00
Cedric BAIL ba47b47eb2 efl: make path a property actually. 2015-04-03 16:23:10 +02:00
Cedric BAIL 091fd5f31d evas: handle setting sub VG object to NULL. 2015-04-03 16:23:09 +02:00
Subhransu Sekhar Mohanty 125701c667 efl : fix append circle api in efl_graphics_utils 2015-04-03 16:23:08 +02:00
Cedric BAIL 5bb35d5598 efl: simplify the enum to only use Cubic Bezier curve.
So SVG support all kind of primitive, but really they are just sugar
on top of the simpler cubic bezier curve. Let's simplify our backend
by just supporting them and the simple line. We still provide all
the sugar, but via helper function that do convert to the right
number of Bezier curve.
2015-04-03 16:23:07 +02:00
Cedric BAIL 4248bc2870 evas: actually return the right type and fix warnings. 2015-04-03 16:23:06 +02:00
Cedric BAIL ce4d4aac04 efl: fix typos that emitted the wrong PATH type. 2015-04-03 16:23:05 +02:00
Cedric BAIL 5aafae94f1 evas: actually we want the Ector_Renderer, not the Evas_VG_Node. 2015-04-03 16:23:04 +02:00
Cedric BAIL 502ac45916 evas: properly propagate Eina_Matrix from the VG scene graph to the Ector_Renderer. 2015-04-03 16:23:03 +02:00
Cedric BAIL 0bb66ffedf efl: add efl_graphics_path_interpolate and efl_graphics_path_equal_commands.
This function will be handy to implement path interpolation in Edje later on. This
would be usable by Edje if we do push an Evas_Object_Shape. Not really difficult to
add at this stage.
2015-04-03 16:23:01 +02:00
Cedric BAIL 2cae706ab6 evas: start correctly implementing the render callback. 2015-04-03 16:23:00 +02:00
Cedric BAIL 6097178ec3 evas: start properly implementing render_pre for Evas_VG_Node. 2015-04-03 16:22:58 +02:00
Cedric BAIL 621d3b5660 evas: those function should have been static. 2015-04-03 16:22:57 +02:00
Cedric BAIL a00b6219fa evas: remove printf. 2015-04-03 16:22:56 +02:00
Cedric BAIL 6071e71e98 evas: cleanup parent handling of Evas_VG_Node. 2015-04-03 16:22:54 +02:00
Cedric BAIL f85f8135a0 evas: NULL is always needed as during destruction parent is set to NULL. 2015-04-03 16:22:53 +02:00
Cedric BAIL 09d7ffe520 evas: add fill and size definition for a VG scene graph. 2015-04-03 16:22:51 +02:00
Cedric BAIL 40e3240e6e evas: fix copy and paste mistake. 2015-04-03 16:22:50 +02:00
Cedric BAIL 185eadf9ad evas: fix typos in Evas_VG_Root_Node. 2015-04-03 16:22:38 +02:00
Cedric BAIL 97714021d1 evas: Evas_Object_VG should always create a root node. 2015-04-03 16:22:37 +02:00
Cedric BAIL 78bf41b223 eina: add eina_simple_xml_attribute_w3c_parse to parse attribute value. 2015-04-03 16:22:29 +02:00
Cedric BAIL 81760ea5d9 evas: also allow Evas_VG and NULL as parent.
I have yet to be sure of the Evas_VG one.
2015-04-03 16:22:26 +02:00
Cedric BAIL 36ba2fc01d evas: add file manipulation API to Evas_Object_VG. 2015-04-03 16:22:22 +02:00
Cedric BAIL b6ffe1cc87 evas: first implementation of an ector drawer inside Evas software engine.
Note: this won't work with the OpenGL backend.
2015-04-03 16:22:18 +02:00
Cedric BAIL 3f3fb4cac7 ector: handle color multiplier in the function declaration. 2015-04-03 16:22:16 +02:00
Cedric BAIL 5d98201236 ector: reorder macro for easier reuse. 2015-04-03 16:22:15 +02:00
Cedric BAIL aad1cf28f6 ector: prepare doesn't need surface, as it should always be the parent. 2015-04-03 16:22:14 +02:00
Cedric BAIL 8f82b5a089 efl: fix some whitespace. 2015-04-03 16:22:12 +02:00
Cedric BAIL 74b2eed158 ector: first implementation of an Cairo shape renderer.
Note: still a lot on the todo, but it should display something that follow
the correct path at least. Thanks librsvg for helping a lot.
2015-04-03 16:22:11 +02:00
Cedric BAIL 7ba0f46a39 ector: remove surface from draw command as it should be drawn on the parent, always ! 2015-04-03 16:22:10 +02:00
Cedric BAIL 60e4edd7b9 ector: start implementing radial gradient in cairo backend. 2015-04-03 16:22:08 +02:00
Cedric BAIL 48beef6b21 ector: fix cairo linear gradient implementation. 2015-04-03 16:22:07 +02:00
Cedric BAIL d6cd365a48 ector: now import header of all cairo renderer. 2015-04-03 16:22:04 +02:00
Cedric BAIL 7417c034bf ector: cairo need a specialized fill function. 2015-04-03 16:22:03 +02:00
Cedric BAIL ea8f37e47d ector: first try at implementing linear gradient renderer. 2015-04-03 16:22:02 +02:00
Cedric BAIL fdf3942aa0 ector: first implementation of a Cairo surface. 2015-04-03 16:22:01 +02:00
Cedric BAIL 33d538643a ector: add a base interface for all cairo renderer. 2015-04-03 16:22:00 +02:00
Cedric BAIL 85036dbeb1 ector: fix building of the generic backend. 2015-04-03 16:21:59 +02:00
Cedric BAIL fedfbf4bf6 ector: fix building of cairo backend. 2015-04-03 16:21:58 +02:00
Cedric BAIL fcbc29f85e ector: move dependency around. Evas now depend on Ector. 2015-04-03 16:21:57 +02:00
Cedric BAIL cba397fcf1 ector: and here come the beginning of a Cairo backend.
The idea is that Evas engine will actually inherit from it to instanciate their
own Cairo backend (Software and GL) from there.
2015-04-03 16:21:56 +02:00
Cedric BAIL b06e770614 ector: add beginning of a cairo implementation. 2015-04-03 16:21:54 +02:00
Cedric BAIL fe0672b80e ector: all those function needs to be static. 2015-04-03 16:21:53 +02:00
Cedric BAIL 1df94f5baa ector: share base type structure to the rest of ecore_private.h. 2015-04-03 16:21:52 +02:00
Cedric BAIL 11ac85b40b ector: duplicate PATH could be useful. 2015-04-03 16:21:50 +02:00
Cedric BAIL c5d085999a ector: add stop implementation. 2015-04-03 16:21:49 +02:00
Cedric BAIL 75728e7fff efl: move PATH manipulation from Evas into Efl interfaces. 2015-04-03 16:21:48 +02:00
Cedric BAIL 62459acda7 ector: start the implementation of a Cairo backend. 2015-04-03 16:19:11 +02:00
Cedric BAIL 3ada4184d7 ector: start the implementation of the Generic surface. 2015-04-03 16:18:30 +02:00
Cedric BAIL a5f8532e27 ector: make the drawing function virtual as it rely on the backend implementation. 2015-04-03 16:15:43 +02:00
Cedric BAIL 272967afe5 ector: move all interface to be in the Generic namespace.
This will enable the possibility to have many implementation for the
backend. Will come first Cairo, followed by Software and GL one day.
2015-04-03 16:15:41 +02:00
Cedric BAIL 0f27e887e4 evas: make the interface part of the Generic name space.
This should enable having multiple backend that will use another namespace instead
of Generic.
2015-04-03 16:15:40 +02:00
Cedric BAIL 6f3fd4ac81 ector: add linear and radial gradial renderer to Ector. 2015-04-03 16:15:39 +02:00
Cedric BAIL 4036a22b10 efl: introduce an Efl Gradient Radial interface. 2015-04-03 16:15:37 +02:00
Cedric BAIL e15bdbe457 efl: add a linear gradient interface. 2015-04-03 16:15:36 +02:00
Cedric BAIL f701e1f099 ector: add top gradient renderer. 2015-04-03 16:15:04 +02:00
Cedric BAIL d59351732d efl: add a gradient interface. 2015-04-03 16:15:03 +02:00
Cedric BAIL 1d49ff7df2 efl: rename geometry to graphics to be more general. 2015-04-03 16:15:02 +02:00
Cedric BAIL 3635b63708 ector: add initial interface for a shape object. 2015-04-03 16:15:00 +02:00
Cedric BAIL 0510ea90bd ector: add initial interface for Surface and Renderer. 2015-04-03 16:14:58 +02:00
Cedric BAIL 5e75d607c6 ector: initial introduction.
Idea for this library is to become a retained mode drawing library that use
Eo/Eolian for its API and take a lot of the good design from Enesim by
Jorge Zapata and Jose Gonzalez (http://enesim.org/).
2015-04-03 16:14:56 +02:00
Cedric BAIL 411bb5b64e efl: use Efl_Geometry_Shape. 2015-04-03 16:14:55 +02:00
Cedric BAIL 14dcad09c0 efl: add an interface for Efl_Geometry_Shape. 2015-04-03 16:14:54 +02:00
Cedric BAIL a247ddeceb evas: fix Evas_VG eo files. 2015-04-03 16:14:52 +02:00
Cedric BAIL 3447936adb evas: implement all Evas_VG_Shape property. 2015-04-03 16:14:51 +02:00
Cedric BAIL b50931a5ca evas: actually compile Evas_VG_Shape. 2015-04-03 16:14:50 +02:00
Cedric BAIL 8097b8ab47 evas: move Evas_VG_Node structure declaration into a shared header to use it directly from Evas_VG. 2015-04-03 16:14:48 +02:00
Cedric BAIL 2e6cc1a173 evas: fix prototype and correctly call the function. 2015-04-03 16:14:47 +02:00
Cedric BAIL ea9330bfe8 evas: declare internal evas_vg helper. 2015-04-03 16:14:46 +02:00
Cedric BAIL 3d37f150c7 eo: internal variable should not have that much chance to conflict prefix them with ___. 2015-04-03 16:14:19 +02:00
Cedric BAIL ae5472379f evas: handle path set on shape object. 2015-04-03 16:13:13 +02:00
Cedric BAIL 1e5c596ca3 evas: implement stupid bound get at container level. 2015-04-03 16:13:12 +02:00
Cedric BAIL 7f072eb607 evas: add Efl.File interface to Evas_Object_VG. 2015-04-03 16:13:11 +02:00
Cedric BAIL 161b7b93e2 evas: add Evas_VG_Image. 2015-04-03 16:13:07 +02:00
Cedric BAIL fa2f4e969e evas: implement Evas_VG_Node stacking functions. 2015-04-03 16:13:06 +02:00
Cedric BAIL 9dcf840ade evas: Evas_VG_Root_Node should only be attached to an Evas_Object_VG. 2015-04-03 16:13:05 +02:00
Cedric BAIL 95e70ee5cb evas: remove unecessary duplicated code. 2015-04-03 16:13:03 +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
Cedric BAIL 659d3c4fd7 eina: add eina_matrix.
This code come from Enesim and was done by Jorge. I did just take care
of changing the namespace and coding style.
2015-04-03 16:12:48 +02:00
ChunEon Park 2b0fb1ea1d evas/common Fixed incorrect blend pixel color logic in neon.
previously, it had the remaining value issues on blending computation.
The blending color result was in correct.

Signed-Off-By: Vladimir Kuramshin <v.kuramshin@samsung.com>
2015-04-03 19:48:30 +09:00
Mike Blumenkrantz ac11a9cb36 edje: move Edje_Color_Class->desc to end of struct
this allows memory layout compatibility with Elm_Color_Class
2015-04-02 15:20:21 -04:00
Mike Blumenkrantz 5a61ee107c edje: return immediately when setting color class if class is not in use 2015-04-02 15:15:31 -04:00
woochan lee 48f4f1b837 Eeze.h: Delete white space.
Summary: Delete white space in Eeze.h

Reviewers: cedric, Sergeant_Whitespace

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2246
2015-04-02 14:47:43 +02:00
Andrii Kroitor 7271c99b3c edje_calc: fix SEGFAULT on new parts
Summary: new part added with edje_edit_part_add has NULL previous description

Reviewers: cedric, zmike, seoz, Hermet, raster

Subscribers: FurryMyad, cedric, reutskiy.v.v

Differential Revision: https://phab.enlightenment.org/D2272
2015-04-01 07:25:12 -04:00
Stefan Schmidt eae15fbb28 ecore: Move documentation for ecore_timer_add at the correct place.
Many thanks to Vinicius dos Santos Oliveira for spotting this and
pointing it out on the mailing list.
2015-04-01 10:23:00 +02:00
Mike Blumenkrantz 89809bdf55 edje calc now more correctly forces recalc for child groups on state change
in the event of fixed size -> non-fixed size (eg. previous commit optimization),
this calc would no longer occur, so we need to queue it. also if fixed.w or
fixed.h changes value for a group part, we must recalc the group to ensure correct
sizing occurs
2015-03-31 23:31:11 -04:00
Mike Blumenkrantz 15f8d943aa edje calc no longer performs calculations for group parts of fixed size > 0
when I said > 0 in the last commit message, I was thinking ahead to this commit
which I knew I would later have to make, but had not yet written because I had not
spent the requisite number of hours debugging the code to know that I needed to
have the check in both the code and the commit message

ref 3a451650d2
2015-03-31 23:31:11 -04:00
Carsten Haitzler 4e716fb779 ecore_file - fix nasty memory issues in ecore_file_app_exe_get()
valgrind was most unhappy with ecore_file_app_exe_get(). like:

==8331== Invalid write of size 1
==8331==    at 0x68DE90A: ecore_file_app_exe_get (ecore_file.c:994)
==8331==  Address 0x1348e58f is 0 bytes after a block of size 31 alloc'd
==8331==    at 0x4C28C20: malloc (vg_replace_malloc.c:296)
==8331== Invalid write of size 1
==8331==    at 0x68DE948: ecore_file_app_exe_get (ecore_file.c:1000)
==8331==  Address 0x1348e599 is 10 bytes after a block of size 31 alloc'd
==8331==    at 0x4C28C20: malloc (vg_replace_malloc.c:296)

etc. etc. - so i rewrote it cleanly using strbuf to save code and
effort. cleaner now and ACTUALLY works correctly... and no valgrind
complaints.

@fix
2015-04-01 09:37:27 +09:00
Mike Blumenkrantz abf3c3c470 edje object swallowing no longer forces a full recalc
this (and/or related prior commits) seems to have hugely improved
edje performance across the board. particularly noticeable in the
settings pane animations for terminology

 #aprilfools
2015-03-31 19:16:55 -04:00
Mike Blumenkrantz f534103c95 edje object scale factor changes now trigger deferred recalcs
as with the previous commit, any user who wants geometry immediately
will be calling calc functions, so this is just going to be redundant
except in cases where calc is not wanted, in which case it is unnecessary
overhead
2015-03-31 19:16:54 -04:00
Mike Blumenkrantz 43779dfa6f edje group part init no longer forces synchronous hint updating during load
hints will be updated later and any user who wants these hints is going to
be calling edje calc functions anyway, causing this to be a redundant calc
2015-03-31 19:16:54 -04:00
Mike Blumenkrantz 20350a8006 edje calc no longer forces proxy part source calcs for currently-hidden proxies
this saves a bit of calc time when a proxy part is not currently visible
2015-03-31 19:16:54 -04:00
Mike Blumenkrantz 3a451650d2 edje calc no longer performs calculations for group parts of fixed size
if the min/max of a part are identical and > 0, the part's min size is guaranteed
to be this size. there is no need to perform expensive recursive calcs here
2015-03-31 19:16:54 -04:00
Cedric BAIL b72df468f2 edje: add edje_file_iterator_new().
This list the actually opened Edje file by the current process.
2015-03-31 23:23:32 +02:00
Cedric BAIL bfbb2d8a51 edje: fix build break. 2015-03-31 23:21:12 +02:00
Cedric BAIL 11a4e1ae83 edje: add edje_mmap_color_class_iterator_new().
This function make it possible to list the Color class of a specific Edje file.
2015-03-31 21:57:23 +02:00
Cedric BAIL 6ee3805cf4 edje: get the color class value by iterating over all possible value provider. 2015-03-31 05:36:38 +02:00
Cedric BAIL 5906569f7f edje: add edje_color_class_active_iterator_new()
This function make it possible to get a list of active Edje_Color_Class
in an application. Think about Enlightenment color class configuration,
but can now be done on any application dynamically.

@feature
2015-03-31 04:26:06 +02:00
Cedric BAIL 09f304a33c edje: make Edje_Color_Class a public structure. 2015-03-31 04:26:06 +02:00
Cedric BAIL 431e73eed5 edje: force NULL initialization of desc pointer. 2015-03-30 22:31:34 +02:00
Cedric BAIL 8445358526 edje: this desc pointer is actually never set. 2015-03-30 22:31:10 +02:00
Marcel Hollerbach 94299e2bfd ecore_drm: use get_vt instead of parsing the tty attribute
Summary: logind has a seperate function to get the vt number.

@fix

Reviewers: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2252
2015-03-30 10:41:03 -04:00
ChunEon Park bc9265f16d ecore/idler - simpler checking. 2015-03-28 15:43:50 +09:00
Andy Williams 128a78940b eina: include blank lines in file iterator T2237
any line that would not have been included before has length == 0
2015-03-27 21:42:45 +00:00
Srivardhan Hebbar 3a64b0ccd3 ecore_con: fix ftp upload function to follow documentation.
Summary:
While creating a Ecore_con_url object, the url is given in this format "ftp://ftp.example.com". While uploading a file, this function was prefixing "ftp://" to this url which resulted in DNS failure, and upload fail. So corrected the issue.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-27 18:41:05 +01:00
Andy Williams a6290f8505 eina: Change newline parsing to handle crlf better
Adjust test to demonstrate failure, existing code only worked for
windows newlines on blank line.
@fix T2236
2015-03-27 09:56:22 +00:00
Vyacheslav Reutskiy 9e2aa810cc edje: edje_edit - recalculate object after chenge aspect preference 2015-03-27 11:31:31 +02:00
Nicolas Aguirre 257e399e53 ecore: trigger events on FD_READ, FD_CONNECT and FD_ACCEPT.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-26 17:46:54 +01:00
Nicolas Aguirre 242e108e37 ecore_con: do not try to load /etc/resolv.conf when on windows.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-26 17:46:17 +01:00
Jean-Philippe ANDRE 0ef41604e8 Ecore: Use calloc() to initialize Ecore_Event_Key fully
Some fields (eg. data) may not be properly initialized.
Use calloc() instead of malloc() will ensure proper initialization
even if we add more fields.

These fields (data) would even be passed down to Evas as
Evas_Event_Key_Down for instance.
2015-03-25 15:34:23 -07:00
perepelits.m 62b5ca7060 edje: add of textures to Edje 3D node.
Summary: Adding textures to edje_cc and some topblock keywords that I have forgotten to add in previous commits.

Reviewers: Hermet, raster, cedric

Reviewed By: cedric

Subscribers: cedric, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-25 19:40:41 +01:00
Michal Jagiello 6b88246808 eina: add eina_list_data_idx().
Summary:
Now the developer has to iterate the whole list to find the
index of the first occurence of the data.
I see that it is possible to get the index of the item for
the genlist widget, but for the eina_list not.

With these APIs it will be easier to implement *index_get
functions for the rest of widgets which contain items (Elm_List,
Elm_Ctxpopup etc.).

These functions returns the index of the given data or node in the eina_list.

Reviewers: Hermet, cedric

Subscribers: raster, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-25 19:40:41 +01:00
Sohyun Kim 10670094c1 edje: add text_class_get() APIs
Summary: No APIs to get text_class for global hash and object hash

Reviewers: woohyun, cedric, raster

Reviewed By: cedric, raster

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2213
2015-03-26 02:53:22 +09:00
Vitalii Vorobiov 7ba3a2bd7c Edje: Edje_Edit - code generation for TABLE part (description.table section) 2015-03-25 17:56:47 +02:00
Vitalii Vorobiov e4487a31fe Edje: Edje_Edit - fix typo in code generation of BOX part
@fix
2015-03-25 17:17:49 +02:00
ChunEon Park e56548aa33 ecore_idler: + null check.
like timer, animator we do check the idler validation
and prevert crash there just in user misusage case.

@fix
2015-03-25 14:45:43 +09:00
Chris Michael f0d0533c42 ecore-drm: Use better output names
Summary: As there are various DVI and HDMI output names, update the
output connector types area to be more accurate so we get better
output names

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-03-24 15:35:31 -04:00
Seunghun Lee 500e76fd53 ecore_drm: Add event of ECORE_DRM_EVENT_SEAT_ADD.
Summary: To support multi-seat, ecore_drm need to issue the event to notify compositor of seat is added.

Test Plan: N/A

Reviewers: zmike, raster, gwanglim, devilhorns

Reviewed By: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2212
2015-03-24 10:45:11 -04:00
Mun, Gwan-gyeong 3c056419d7 ecore-drm: Fixed null pointer free
Summary:
Fixed null pointer free
         when sd_session_get_seat() fails, it does not allocate string.

Reviewers: zmike, cedric, raster, gwanglim, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2219
2015-03-24 09:11:07 -04:00
Jihoon Kim 56dc26f0b9 ecore_imf: Add NULL check before accessing evas device API 2015-03-24 20:33:45 +09:00
Youngbok Shin b8b6c1e1a8 evas: Add safety check for NULL pointer of clipper.
Summary: It caused crash when clipper is NULL and it makes evas test-suite fail.

Test Plan: Run evas test-suite. (make check)

Reviewers: woohyun, tasn, herdsman, Hermet

Reviewed By: Hermet

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2215
2015-03-24 12:53:34 +09:00
Wonkeun Oh c7af3af835 ecore-imf: Added the device information in the Ecore_IMF_Event structs
Summary:
Added the device information in the Ecore_IMF_Event structs.
Applications may require to know actual source of key event to handle it differently depending on device.
Even if key events are currently generated from different devices, application couldn't distinguish it.
This patch will support device information for the Ecore-imf key events.

Reviewers: jihoon

Reviewed By: jihoon

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2214
2015-03-24 10:26:21 +09:00
Cedric BAIL 671bd817bf emile: meaningful initialization of some pointers. 2015-03-23 22:04:15 +01:00
Srivardhan Hebbar 9c03e3e728 ecore_con: clean up, refactor and unpdate documentation.
Summary:
1. Have refactored code in ecore_con_local.c
2. Changed env variable from "TMP" to "TMPDIR".
3. Added check for negetive port number when type is ECORE_CON_LOCAL_USER.
4. Added check to check TMPDIR before assuming /tmp as temp directory.
5. Updated documentation in Ecore_Con.h explaining about local socket and port number.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-23 19:44:27 +01:00
Andrii Kroitor 1c3dbc3267 ecore_exe: fix ecore_exe_pid_get on windows
Summary:
ecore_exe_pid_get returns exe->pid value so it should be filled

@fix

Reviewers: raster, seoz, cedric, Hermet

Subscribers: NikaWhite, cedric, reutskiy.v.v

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-23 19:37:24 +01:00