Commit Graph

3511 Commits

Author SHA1 Message Date
Chris Michael 17ac41ad06 ecore-drm: don't declare w & h integers if we don't need them.
We only use w & h if one of the dev->abs.rel_* axis values are less
than zero, so let's not declare integers that we May not use until we
need them.

Signed-off-by: Chris Michael <devilhorns@comcast.net>
2014-06-06 11:47:33 -04:00
Chris Michael e5656ce0e7 ecore-drm: Fix formatting issues from D933 patch
Signed-off-by: Chris Michael <devilhorns@comcast.net>
2014-06-06 11:46:45 -04:00
Moritz Bitsch 78737a9696 ecore-drm: implement multitouch support
Summary: Support for type B touch devices, tested with egalax_ts compatible touchscreen.

Reviewers: devilhorns

Reviewed By: devilhorns

CC: cedric

Differential Revision: https://phab.enlightenment.org/D933
2014-06-06 11:40:33 -04:00
Jérémy Zurcher 82b852850f fix memory leak in Eina_Strbuf usage
buf was not freed on error, and never on success

CID 1194715
2014-06-06 00:13:11 +02:00
Jérémy Zurcher 70092ae92e fix memory leak in Eina_Strbuf usage
buf wasn't freed on success neighter on
edje_edit_image_compression_type_get(...) failure

CID 1194716
2014-06-06 00:13:11 +02:00
Cedric BAIL adbb9ca1e3 eina: fix possible access to NULL.
CID 1039422.
2014-06-05 22:50:20 +02:00
Cedric BAIL caa2ec1b29 eina: leave a comment for CID 1039688. 2014-06-05 22:26:07 +02:00
Cedric BAIL 2dd6e7f302 eina: fix typo in matrixsparce.
CID 98417.
2014-06-05 22:18:59 +02:00
perepelits.m e5905f3f74 evas: Evas_3D - add evas_box3_ray3_intersect and evas_box2_intersect_2d functions.
Summary: First function is used for intersection of ray and parallelepiped, the second one - for intersection of ray and rectangle in two-dimensional case.

@feature

Reviewers: Hermet, cedric, raster

CC: cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-05 20:50:49 +02:00
Bogdan Devichev 700f4396e1 evas: Evas_3D - add .obj export/import.
@feature

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

CC: cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-05 20:49:26 +02:00
Vorobiov Vitalii 125bbf67b9 edje: Edje_Edit - add edje_edit_part_cursor_mode functions.
Summary:
Add two main functions
- edje_edit_part_cursor_mode_get
- edje_edit_part_cursor_mode_set
Also support cursor_mode into part's source code generation.

@feature

Reviewers: seoz, Hermet, cedric, raster

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-05 19:43:52 +02:00
Vorobiov Vitalii f587307a94 edje: Edje_Edit - add edje_edit_part_multiline functions.
Summary:
Add two main functions
- edje_edit_part_multiline_get
- edje_edit_part_multiline_set
Also support multiline into part's source code generation.

@feature

Reviewers: seoz, Hermet, cedric, raster

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-05 19:43:07 +02:00
Mykyta Biliavskyi 793cef0d04 edje: Edje_Edit - Improved speed generate source code for program.
Summary:
_edje_generate_source_program gets Edje_Program pointer from _edje_program_get_byname
at start of function,but in body calls public methods for get parameters of programs.
Each of this methods calls _edje_program_get_byname, what make generation of source
whole program is  slow.
Replaced public API calls with using fields of Edje_Program structure.

Reviewers: cedric, raster, seoz, Hermet

Reviewed By: cedric

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-05 19:41:51 +02:00
Maksym Volodin 5cbceec23f edje: Edje_Edit - add edje_edit_group_orientation_set/_get.
Summary:
Set or get orientation for group:
0 for EDJE_ORIENTATION_AUTO, 1 for EDJE_ORIENTATION_LTR, 2 for EDJE_ORIENTATION_RTL.
_get return 0 (AUTO), 1 (LTR), 2(RTL) orientation was setted for the group. -1 if an error occurred.
_set return EINA_TRUE if successful, EINA_FALSE otherwise.

@feature

Reviewers: cedric, raster, seoz, Hermet

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-05 19:38:27 +02:00
Kai Huuhko 9ace7f17b2 Eolian: Add a few missing @ingroup fields for doxygen 2014-06-05 19:11:24 +03:00
Tom Hacohen 329400e1c2 Eolian: Re-generate the ragel file, but this time from the right place. 2014-06-05 16:32:36 +01:00
Daniel Zaoui e7faaf9fc5 Eolian/Generator: Fix Windows issue during string manipulation.
For Windows, it is simpler to replace all the \r\n with \n after having
read the file.
2014-06-05 11:34:44 +03:00
Cedric BAIL 30a3df4c5c eina: removing more dead code looking for strange int.
CID 98377.
2014-06-05 03:30:43 +02:00
Cedric BAIL 344690554a eina: removing more dead code that expect strange int.
CID 1039941.
2014-06-05 03:29:16 +02:00
Cedric BAIL 74121c14cd eina: remove logically dead code.
I am wondering why this code was around, an useless variable and an if
that would never be taken...

CID 1039940.
2014-06-05 03:24:46 +02:00
Cedric BAIL c33acef5d7 eina: remove logically dead code.
Removing this code let me wonder what could be an int value that is not 0,
not < 0 and not > 0...

CID 1039938.
2014-06-05 03:22:27 +02:00
Cedric BAIL 8f817ff4a0 eina: let's check for returned value of realloc.
CID 1039689.
2014-06-05 03:20:56 +02:00
Cedric BAIL b67860e98f eina: remove logically dead code.
The for loop above would exit with at least length = 0, so < 0 is
just impossible.

CID 1039943.
2014-06-05 03:10:43 +02:00
Cedric BAIL f7fd1f1c84 eina: simplifie logic to not go with multiple level of callback for just getting the first entry in a hash.
CID 1039937.
2014-06-05 03:02:06 +02:00
Cedric BAIL ba53bf8533 eina: fix possible memory leak on failure in eina_tiler_equal.
CID 1216618, 1216615, 1216614.
2014-06-05 02:51:54 +02:00
Vorobiov Vitalii 5e7a9b1225 edje: Edje_Edit - add edje_edit_part_access functions.
Summary:
Add two main functions
- edje_edit_part_access_get
- edje_edit_part_access_set
Also support access into part's source code generation.

@feature

Reviewers: seoz, Hermet, raster, cedric

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-04 20:08:32 +02:00
Vorobiov Vitalii 30885daafa edje: Edje_Edit - add edje_edit_part_precide_is_inside functions.
Summary:
Add two main functions
- edje_edit_part_precise_is_inside_get
- edje_edit_part_precise_is_inside_set
Also support precise_is_inside into part's source code generation.

@feature

Reviewers: cedric, seoz, Hermet, raster

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-04 20:02:56 +02:00
Andrii Kroitor 184720bf16 edje: Edje_Edit - add getters and setters for source2-source6 TEXTBLOCK properties
Reviewers: cedric, raster, seoz, Hermet

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-04 19:57:13 +02:00
Oleksandr Shcherbina a25aa1aa1a evas: Evas_3D - Revision frustum culling.
Summary:
Add API that checks OBB's points of node are inside frustum of camera.
Add example with frustum culling.

@feature

Reviewers: Hermet, cedric, raster

CC: cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-04 19:55:34 +02:00
Vorobiov Vitalii bebcc49bd0 edje: Edje_Edit - add edje_edit_part_pointer_mode functions.
Summary:
Add two main functions
- edje_edit_part_pointer_mode_get
- edje_edit_part_pointer_mode_set

Also support pointer mode into part's source code generation.
EVAS_OBJECT_POINTER_MODE_AUTOGRAB is default value,
so generation won't add "AUTOGRAB" into source code if this type of
pointer mode is set.

@feature

Reviewers: cedric, seoz, Hermet, raster

Reviewed By: cedric

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-04 19:45:34 +02:00
Vorobiov Vitalii f1000b5c36 edje: Edje_Edit - add edje_edit_part_copy function that copy parts within whole group.
Summary:
Add ability to copy whole part and create same part but with new name).
This feature also require to slightly remake function edje_edit_state_copy to make
it able to copy state from one part to different one (only for part_copy usage).

@feature

Reviewers: cedric, seoz, raster, Hermet

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-04 19:39:39 +02:00
Andrii Kroitor aec9cf0a3e edje: Edje_Edit - fix edje_edit_part_source_set
Summary:
Fixed edje_edit_part_source_set so that it does not destroy TEXTBLOCK.
Changed type check to switch-case to stress allowed types.

@fix

Reviewers: cedric, raster, seoz, Hermet

Reviewed By: cedric

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-04 19:15:27 +02:00
Tom Hacohen 3b70b4f28f Evas textblock: Fix crash when cutting ligatures with formats.
"f<color=#f00>i</color>f" could cause textblock to crash. It doesn't
crash anymore. It doesn't render the colours correctly either, but at
least this is the first step.

This is the start of fixing T1308

@bugfix
2014-06-04 10:14:24 +01:00
Cedric BAIL 21e7a3aed9 evas: check that we don't use a NULL pointer on wrong frame number.
CID 1220083
2014-06-04 01:18:51 +02:00
Igor Gala f0e4cba71c edje: Edje_Edit - add sounds list accessor.
Summary:
make "get" functions for block "sounds" which return
a sounds or tones list (Eina_List *) off the given edje object.
@feature

Reviewers: raster, cedric, seoz, Hermet

Reviewed By: cedric

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-04 00:51:56 +02:00
Maksym Volodin fb89f79b6a edje: Edje_Edit - add new feature edje_edit_image_compression_set.
Summary:
Set compression type for the given image. Has object being edited,
the name of the image and Edje_Edit_Image_Comp(EDJE_EDIT_IMAGE_COMP_RAW,
EDJE_EDIT_IMAGE_COMP_USER, EDJE_EDIT_IMAGE_COMP_COMP,
EDJE_EDIT_IMAGE_COMP_LOSSY[_ETC1]) as in parametrs.
Return EINA_TRUE if successful, EINA_FALSE - otherwise.

Reviewers: cedric, raster, seoz, Hermet

Reviewed By: cedric

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
2014-06-04 00:51:56 +02:00
Raoul Hecky 06a343afda Fix curl dynamic loading on windows
With win-builds.org curl dll name is libcurl-4.dll. Try to load this
correct filename first
2014-06-03 18:09:14 +02:00
Tom Hacohen 6eb3bda426 Eo base: Start generating eo_base from the .eo file. 2014-06-03 11:28:02 +01:00
Tom Hacohen 0fc3279db9 Efl: Update code to use the new class names generated by eolian. 2014-06-03 11:28:01 +01:00
Tom Hacohen 10626ff538 Eo: Fix and use the abstract class .eo file.
Until now it was just there, but never generated or used.
2014-06-03 09:19:19 +01:00
Daniel Zaoui f3ce7031e2 Eolian: Fix class look up.
If a class (e.g Evas_Object) is expected as a base class but is not
present in the existing expected file (e.g evas_object.eo), it will not
fail.
This patch fixes it by checking the existence of the class into the
database after the parsing of the file.

@fix
2014-06-02 17:13:34 +03:00
Tom Hacohen d9263e6571 Eo base: rename event_freeze_get to event_freeze_count_get.
This is needed because of a possible clash between the method event_freeze
and the property event_freeze with bindings.
2014-06-02 12:50:23 +01:00
ChunEon Park 328d28a7f4 eina/file - revert 18be4c50d9
I realized that's not a bug in eina but user usage was inccorect.
revert the patch

@fix
2014-05-31 18:34:48 +09:00
ChunEon Park 0650797825 evas/blend: oops, missed a variable declaration.
build error by this commit.

aede29e2d4
2014-05-31 14:43:48 +09:00
ChunEon Park aede29e2d4 evas/blend - disable neon code.
Current neon code is a little buggy, the blend won't be done correctly.
so leave the c code depends on the compiler optimization.
2014-05-31 14:33:55 +09:00
Tom Hacohen 9f98ddae46 Eo: Fix docs of functions that have changed in eo2. 2014-05-30 14:54:10 +01:00
Guillaume Friloux 4f7bab2134 Fix unused var warning in emotion. 2014-05-30 14:37:42 +02:00
Guillaume Friloux 08a70a113f Fix warning with undefined ntohl(). 2014-05-30 14:15:27 +02:00
Guillaume Friloux 6d320cac20 Fix warnings with sig_atomic_t being a long on FreeBSD. 2014-05-30 14:02:36 +02:00
Tom Hacohen f92e5d50f9 Eo: Add eo_finalize. A func that's called at the end of eo_add.
This function lets you hook at the end of eo_add and override it for a
class. This is essentially the first step towards killing custom
constructors. Instead of having a custom constructor, you should just
do:
eo_add(CLASS, parent, a_set(3), b_set("eou"));
eo_constructor is called at the beginning for pre-init things.
eo_finalize is called at the end, for actually finalizing and doing
things. This cleans up the API and possibly saves a lot of things that
would have been stupid and slow in the past, like loading an elm widget
with an existing theme, and then changing the theme.

** This breaks Eo ABI, please recompile elementary and everything else that
creates eo objects.

@feature
2014-05-30 11:22:36 +01:00
Guillaume Friloux a3e58b7618 Add prototype of evas_3d_mesh_aabb_add_to_frame for evas_3d_mesh_loader_md2.c 2014-05-30 11:50:02 +02:00
Guillaume Friloux 91afb45cd0 Fix warning with -Wincompatible-pointer-types-discards-qualifiers 2014-05-30 10:43:54 +02:00
Guillaume Friloux 949b51af24 Fix unused param warning when building on non linux. 2014-05-30 10:38:27 +02:00
Guillaume Friloux 619987bc2e Remove warning by adding eina_cpu.h which expose eina_cpu_page_size() 2014-05-30 10:25:05 +02:00
Guillaume Friloux 88b3db4ccf Removed double inclusion of eina_thread.h 2014-05-30 10:04:45 +02:00
Guillaume Friloux a6240d9874 Fix warnings in eina_thread.c 2014-05-30 10:01:42 +02:00
Guillaume Friloux 19e0422adf Fix warnings on calls to iconv, on freebsd. 2014-05-30 09:31:11 +02:00
Guillaume Friloux 3ab1b8afd8 Fix unused var warning when not building on linux. 2014-05-30 09:25:33 +02:00
ChunEon Park 6f1f49b4f6 evas/evas_3d: fix implicit declaration function call.
Thanks JackDaniel for reporting.
2014-05-30 08:46:16 +09:00
Daniel Hirt 177135ff0d Evas/Textblock: add support for ellipsis values
Summary:
This enables textblock to support more values other than 1.0.
For 0 <= ellipsis < 1.0, it splits the text such that it fits the
textblock's width. The ellipsis is relatively position according to the
ellipsis value, and characters are removed also relatively.
For example, a value of 0.5 will position the ellipsis right in the
center of the textblock's width, while removing characters equally right
and left from the center.

Basic approach to this feature was to do some work before the layout
process. We calculate the expected total width of the items, and by how
much we exceed from the textblock's width. Afterwards is it just some
careful work to set the boundaries of the width we want to cut, and
deciding which characters we need to removed to fulfill this requirement.
The rest is splitting the text and visually-removing the part we
need to cut.
This is all handled before any logical lines are created, so the
_layout_par function remains almost intact. A designated _ellip_prev_it
field in the Paragraph struct instructs after which item we place the
ellipsis item, if at all.

Note that we keep the fast path for ellipsis 1.0, as heavier work needs
to be done for the other values.

Added tests to evas_suite for a range of ellipsis values.

Also, multiline is unsupported at the moment.
@feature

Test Plan: Anything that uses Evas Textblock (single-line, please)

Reviewers: tasn, id213sin, raster

CC: cedric, JackDanielZ, raster

Differential Revision: https://phab.enlightenment.org/D905
2014-05-29 15:52:01 +01:00
Daniel Zaoui dc3178404f Eolian: modify 'implement' API parameters.
The function eolian_implement_information_get was returning strings for
the class and the function. It was written in this way at the beginning
because it was not needed to verify the correctness of the class and
the function.
Now that we have the namespace feature, this function must check it,
meaning that the class and the function are now known.
So we can return them instead of returning the strings.

The generators had to find the class from the classname. It is no more
needed.

The C++ generator has been adapted to this new API.
2014-05-29 14:48:05 +03:00
Jean-Philippe Andre f4a0c8054f Win64: Fix a bunch of warnings
Fix invalid casts.
Use printf("%z") where appropriate.
Fix unused variables warnings.

Thanks vtorri for the patch.

@fix
2014-05-29 20:02:16 +09:00
Jean-Philippe Andre f62b612797 Evas: Remove invalid cast and fix warning/bug on windows
On Windows, long is 32 even on Win64.
Thanks Vincent for spotting this.

@fix
2014-05-29 17:31:16 +09:00
Tom Hacohen 1e1104584f Eo legacy events: Add missing addition to hash table.
This rendered the whole thing useless.

Found thanks to coverity.
CID 1216616
CID 1216617
2014-05-29 09:24:28 +01:00
Daniel Zaoui b9b5fe5744 Evas_3d: fix warnings. 2014-05-29 09:58:27 +03:00
Moritz Bitsch 2d3ecfa20c ecore-drm: convert compose string into utf8
Summary:
	Key event string encoding was LATIN1 instead of UTF-8.
	This unifies the handling with the x backend.

Reviewers: raster

Reviewed By: raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D912
2014-05-29 11:33:20 +09:00
Tom Hacohen 50a6e371a1 Eo: Support mixing legacy and non-legacy callbacks. 2014-05-28 12:28:18 +01:00
Tom Hacohen c58b3401c3 Eo/evas events: Move legacy events dynamic generator to eo. 2014-05-28 12:28:17 +01:00
Carsten Haitzler cedfc6e49e warning-- 2014-05-28 18:26:51 +09:00
se.osadchy 0bc5d3176a [Evas/evas_3d_scene] Propagate events.
Summary: Add 3 new APIs function for full work of the picking nodes.

Reviewers: Hermet, cedric, raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D889
2014-05-28 18:24:58 +09:00
MinJeong Kim 61cecf1f3f eina-tiler:add union, subtract, intersection, equal apis for tilers
Summary:
Support union, subtract, intersection, equal(comparison) between tilers.
@feature

Test Plan: Test with added test case(src/tests/eina/eina_test_tiler.c) and the example(src/examples/eina/eina_tiler_02.c)

Reviewers: gwanglim, devilhorns, raster, zmike, cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D880
2014-05-28 16:51:30 +09:00
Daniel Zaoui 70f530e2d6 Eolian: fix issue for Windows.
On Windows, '\' are used to separate the names of a path. It was not
supported.
This patch fixes that. Thanks to Vincent Torri for catching it (and good
luck in Windows ;-))
2014-05-28 09:36:30 +03:00
ChunEon Park b61b1c9412 evas/textblock - apply efl coding style. 2014-05-28 14:19:46 +09:00
ChunEon Park fbb4d092cb evas/textblock - removed unnecessary null check.
It should be definitely valid.
It's meaningless checking the value there.
2014-05-28 14:14:35 +09:00
ChunEon Park e973390f64 evas/textblock - null check format.
logically it's insane that it doesn't check the null there but it checks right next line.
2014-05-28 14:09:34 +09:00
Jaehyun Cho 9952699820 evas_draw_main: Remove unnecessary conditional expression
Summary: The comparison dc with NULL is not necessary. So remove the unnecessary conditional expression.

Reviewers: Hermet

Reviewed By: Hermet

CC: seoz, cedric

Differential Revision: https://phab.enlightenment.org/D908
2014-05-28 11:24:56 +09:00
Jaehyun Cho eee9607a4b evas_font_dir: Prevent the use after free
Summary: Pointer fd is used after being deallocated.

Reviewers: Hermet

Reviewed By: Hermet

CC: seoz, cedric

Differential Revision: https://phab.enlightenment.org/D906
2014-05-28 11:24:34 +09:00
ChunEon Park 28871750b7 Revert "ecore/ecore_event - logically this check is redundant."
This reverts commit df60e63bf9.

seems this patch is wrong.
2014-05-27 22:27:05 +09:00
Tom Hacohen cf4ad9328a Evas textblock: Fix wrong advance calculation when bidi is disabled.
The last_it was not updated correctly with bidi disabled.

Thanks to Daniel Hirt for spotting this.

@fix
2014-05-27 14:20:18 +01:00
Oleksandr Shcherbina e47373aee1 [evas/evas-3d] Add OBB and AABB.
Summary: Add axis-aligned bounding box (AABB) to frame. Set and update AABB and oriented bounding box (OBB) in node.

Reviewers: Hermet, cedric, raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D881
2014-05-27 22:07:29 +09:00
ChunEon Park b5ca4c3500 ecore/ecore_exe - removed duplicated null check. 2014-05-27 20:44:37 +09:00
ChunEon Park df60e63bf9 ecore/ecore_event - logically this check is redundant.
remove check so that prevent tool doens't notify this anymore.
2014-05-27 20:36:42 +09:00
Daniel Zaoui b10a1b11f1 Eolian: fix coverity issues.
CID 1216274
CID 1216275
CID 1216276
CID 1216277
CID 1216278
CID 1216279
CID 1216280
2014-05-27 08:22:40 +03:00
Mike Blumenkrantz 91bd7fa913 edje should only match swallow visibility if it's actually a group part
fixes visibility of actual swallow parts
2014-05-26 12:25:27 -04:00
Mike Blumenkrantz ceb13556b1 Revert "Revert "recursively hide edje group objects on edje hide""
This reverts commit b8ca758658.
2014-05-26 12:25:07 -04:00
Carsten Haitzler b8ca758658 Revert "recursively hide edje group objects on edje hide"
Unless you like your desktop to look something like:

http://www.enlightenment.org/ss/e-53834e0c0cb3c1.87889787.png

then this commit really needs reverting.

This reverts commit 385326b8e4.
2014-05-26 23:17:33 +09:00
zmike 385326b8e4 recursively hide edje group objects on edje hide
this massively improves edje performance when using groups, which previously would continue calculating their parts even when their parent object was hidden

CPU usage in my test case went from 20-30% to 1%.

@fix
2014-05-26 08:48:00 -04:00
Daniel Zaoui 8e4700ce65 Eolian: add support of namespaces.
It is now possible to define a class in a .eo file as e.g:
Elm::Widgets::Button.
Elm and Widgets will be the namespaces of the class Button.

@feature
2014-05-26 13:56:06 +03:00
Daniel Zaoui eb58e70ce9 Eolian: remove unused structures.
These structs were belonging to a feature that has been removed cause
not considered as needed.
2014-05-26 13:56:06 +03:00
Daniel Zaoui 5b2ce095a3 Eolian/Tests: add test for events. 2014-05-26 13:56:06 +03:00
Daniel Zaoui 62082548bc Eolian: modify API to allow future scalability
Until now, the functions giving access to class information were taking
the class name as parameter.
Except the fact that we needed to search into a hash table for the internal
class structure, no flexibility is possible.

This change consists in modifying most of the APIs using the class name
with a new Eolian_Class type and adapt the code of the C and C++
generators accordingly.
2014-05-26 13:56:06 +03:00
Daniel Zaoui e4444d2518 Eolian: add support for typedefs.
It includes parser updates, database fill and tests on basic and complex
types.

One can define types in this way:
type Evas_Coord: int; /* Simple type definition */
type List_Objects: Eina_List * <Eo *>;

@feature
2014-05-26 13:56:05 +03:00
Daniel Zaoui e1abaf7c37 Eolian: fix class lookup during parsing.
If classes A and B are stored in a same file, when A inherits from B,
and A needs to be generated, the generator, even if B is parsed, will
not search the class in the database but will look for some b.eo.

This patch fixes that issue by checking the existence of the classes
into the database before looking for a corresponding file.
2014-05-21 15:55:28 +03:00
Youngbok Shin bc70a1bd84 evas/text: fix abnormal ellipsis logic when harfbuzz is enabled.
Summary:
text_props.len indicates visual length from harfbuzz logic when it is available.
But, input pram "idx" is logical length. So, ellipsis works abnormally in some case.
@fix

Test Plan: D870

Reviewers: tasn, woohyun

CC: cedric, herdsman

Differential Revision: https://phab.enlightenment.org/D871
2014-05-21 10:41:29 +01:00
Jean-Philippe Andre 02f24d76e1 Eo: Add function name to OP desc on Windows
Match function names when the API pointer is out of range.
Reviewed by TAsn and modified according to his comments :)

Differential Revision: https://phab.enlightenment.org/D876
2014-05-21 18:03:53 +09:00
Jean-Philippe Andre 0405d8e9a5 Win32: Fix invalid free in eio monitor
You can't just duplicate a string once and free it three times...
2014-05-21 18:03:53 +09:00
Vorobiov Vitalii cf0ff2ba91 edje: Edje_Edit - fix wrong behaviour on draggable.event processing while deleting parts.
Summary:
the draggable.event field (in edje) is pointing on the id of the part it is assigned to.
The main problem is about deleting parts.
After part being deleted, all other parts (that are below the deleted part) have their id shifted,
but event doesnt shift.

For example,
1) draggable.event at some part pointing at part with id=7,
2) some other part is being deleted
3) part with id=7 have new id now (id=6)
4) draggable.event DOESN'T change it's pointer and still points at part with id=7 (which is now has id=6)
5) if there is no parts with id=7 anymore, then it could give you SEGFAULT someday (or not, depending on luck).

This commit contains next changes:
1) after deleting part, draggable.event also shifts (if required)
2) after deleting part that is being pointed with event by someone, it will remove all event points at it
@fix

Reviewers: cedric, raster, seoz

CC: reutskiy.v.v, cedric

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

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
2014-05-21 06:14:23 +02:00
Jean-Philippe Andre 83320ae105 Win32: Fix ecore_evas engine search path
Engines are stored in a lib/ folder, while the main DLL files
are in the bin/ folder, so the engine would never be found.

A solution was to add the proper checkme file in the share
folder, but since this is necessary only for Windows, we
can simply use ../lib instead of using the full eina_prefix
detector.

Thanks vtorri for the review.
2014-05-20 15:13:43 +09:00
ChunEon Park c3cd680fad evas/render - fix segfault because of null cow access.
issue ticket: T1252

@fixed
2014-05-19 22:45:46 +09:00
Kai Huuhko 64f35d4615 efreet: Fix mistakenly inverted behavior in URI handling
Fixes a mistake in commit 78c9a82a14

The authority part would get placed in the struct member "path",
and vice versa.

Lesson learned: Don't rewrite your patch late at night after
arc has messed it up.
2014-05-19 14:52:32 +03:00