Commit Graph

2713 Commits

Author SHA1 Message Date
Cedric Bail 1fb3822893 eina_cxx: fix build on 32bits systems. 2014-02-26 12:18:26 -03:00
Jérémy Zurcher 2d52015823 eo: first check class desc in eo_class_new 2014-02-26 16:25:01 +01:00
Jérémy Zurcher 7821df17dc eo: replace composite_objects Eina_List with an array of Eo_Object*
as we don't support multiple composites of the same class,
and know at class elaboration how many composites we should have,
we can create the composites array and pack it at the end of the object.
2014-02-26 16:25:00 +01:00
Jérémy Zurcher 5be3b666b2 eo: block regular non-instantiable classes in class extension list 2014-02-26 16:25:00 +01:00
Jérémy Zurcher e199230615 eo: eo_composite_attach check composite class, disallow duplicates
eo_composite_attach fail if the class of the composite is not
listed in the parent class extensions, or if there is already a
composite of the same class. The later because calls are
forwarded to the first responding composite, see _eo_op_internal().
2014-02-26 16:25:00 +01:00
Jérémy Zurcher f98c1393b8 evas: rename macro EVAS_COMMON_CLASS -> EVAS_COMMON_INTERFACE as it is one 2014-02-26 16:25:00 +01:00
Andy Williams 5913ce7ec8 eina_log: Update domain colouring when color_disable_set is called
After color_disable is set we should update the domain_str for each domain
as this cached the setting from when the domain was registered.
This required storing the colour within the domain for later use.
Fixes T1029
2014-02-26 04:02:33 +00:00
Tom Hacohen 0378e41958 Evas textblock: removed unused internal function. 2014-02-26 12:25:08 +00:00
Cedric Bail 255dec60b6 eina: fix Windows compilation due to a typo. 2014-02-25 18:34:24 -03:00
Felipe Magno de Almeida f279225a63 eina: add a C++ bindings to Eina @feature.
The goal of this library is to make the life of C++ developers easier
when having to manipulate Eina datatype by providing a layer to abstract
those data type in C++. Check examples for now. Documentation will come
soon, but we are pushing that rather sooner to get feedback on those bindings.

As you will notice, this library is just composed of headers. There is no .so
and we do think it is better this way. Reducing ABI and API stability issue for
applications developers who are the primary target of this binding.

Also please note that you will need to have C++11 to use this binding.

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
2014-02-25 18:05:01 -03:00
Felipe Magno de Almeida d63507446f eina: add eina_accessor_clone and update all Eina_Accessor to take advantage of it.
@feature.

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
2014-02-25 18:04:47 -03:00
Felipe Magno de Almeida 794bbcbca8 eina: add eina_inarray_resize @feature.
Signed-off-by: Cedric Bail <cedric.bail@free.fr>
2014-02-25 17:33:36 -03:00
Jean-Philippe Andre afcbabb004 Doc: Fix filters documentation
Since the doc mentions colors in the examples, fix it to match the
new dox theme :)
2014-02-24 11:18:10 +09:00
Carsten Haitzler 2bb9d9563c textgrid - with new fallback fonts we cant depend on glyph extents anymore
now that glyphs can exceed the bounds of the original query for the
font, there is no pointusing max ascent/descent bounds. back to plain
ascent and decent then so you may get fewer gaps in some fonts. this
fixes font gaps consiering trying to wrk otherwise now is pointless.
2014-02-23 22:25:19 +09:00
Carsten Haitzler 8ca7a21403 textgrid - out-of-bounds chars cause update artifacts - fix.
over-redner by 1 char cell in each direction of an update region to
clean up overflow artifacts.
2014-02-23 22:11:02 +09:00
Cedric Bail f5f9e44219 eina: reduce log to warning when not found. 2014-02-22 16:37:15 +09:00
Tom Hacohen dae9eacb14 Revert "Evas font: Change font fallback to not depend on fontconfig >= 2.11."
It seems that before 2.10, this was not stable, and was causing issues
to some people. I guess we'll have to bring the dependency back, at
least until we can find a better solution.

This reverts commit ec41f67be4.

This fixes T1006.
2014-02-21 09:47:30 +00:00
Jean-Philippe Andre a2c3e73a87 Evas filters: Fix blending with fillmode "stretch"
When using stretch, all buffers were actually drawn 4 times
on top of each other. This was not visible because in most cases
these buffers were all opaque (alpha = 255 everywhere).
2014-02-21 17:30:49 +09:00
Cedric BAIL 58f424a199 eina: add more debug information when failing to open a file. 2014-02-21 17:13:09 +09:00
Cedric BAIL 5507a84028 evil: don't depend on the toolchain defined macro. 2014-02-21 16:48:45 +09:00
Yakov Goldberg 607510d2dc image: remove EINA_ARG_NONNULL check for parameter
in evas_object_image_file_get(const Evas_Object *obj,
                              const char **file,
                              const char **key)
   remove check for second parameter "file", because it
   contradicts comment's statement, that NULL can be passed,
   if parameter not needed.
   All needed NULL checks of parameter are present inside func.
2014-02-20 16:57:46 +02:00
Jean-Philippe Andre bdb3ccd1dd Evas filters: Add a note to the transform doc
This is a special operation, with a simplistic implementation.
2014-02-20 13:27:43 +09:00
Jean-Philippe Andre c256bdc367 Evas filters: Fix documentation for color with rgba buffers
The documentation said color was used as a multiplier, but in
reality the image drawing functions don't use the context's
color when drawing. So the color is only defined for Alpha -> RGBA
operations.
2014-02-20 13:27:43 +09:00
Jean-Philippe Andre 74d8403217 Evas filters: Grow filter should gracefully blend
If grow() was used on top of another effect, it was simply
erasing all pixels. We need to use a temporary buffer and
blend it to the output.
2014-02-20 13:27:42 +09:00
Jean-Philippe Andre 0d9ffc2624 Evas filters: Fix padding in blur with offset
Test case was: blur(ox=40, rx=40);
This would crop the blurred text instead of having proper padding.
2014-02-20 13:27:42 +09:00
Jean-Philippe Andre 538d078cf0 Evas filters: Fix curve filter with RGBA
The curve filter did not respect premultiplied values in
RGBA images. Unfortunately, the fastest solution is to unpremul
and re-premul everytime...
2014-02-20 13:27:42 +09:00
Jean-Philippe Andre 8a694314a4 Evas filters: Fix options parsing
Test case "blend() blend();" did not fail when it should have.
Also, return an error if the program was empty (all whitespaces).
2014-02-20 13:27:42 +09:00
Jean-Philippe Andre ddf267e506 Evas filters: Fix padding in blur filter
The wrong value was used for the command's padding.
Also, remove mention of "motion" blur which is not
implemented.
2014-02-20 13:27:42 +09:00
Jean-Philippe Andre 126cbbc7a9 Evas filters: Mark parser functions as EAPI for tests
The filter unit test case will directly call the parser functions.
2014-02-20 13:27:42 +09:00
Cedric BAIL 4b2708a502 edje: Edje_Edit - make sure we don't use an not initialized value.
Should close CID 1181885 and CID 1181888.
2014-02-20 12:21:55 +09:00
Tom Hacohen 0e5d3f9b98 Evas textblock: Fixed a few word start/end issues.
Fixed issues with valgrind complaints at the end of the textblock, and
Fixed wrong jumping with some special cases like "a a a a "."

This fixes T995.
2014-02-19 14:38:06 +00:00
Carsten Haitzler 51cebf64e9 ethumb - fix clients going right to disk and getting half written thumbs
client still do stats (not async) but at least they dont get
half-baked thumbs now
2014-02-19 22:13:09 +09:00
Daniel Kolesa dfb5c03ce0 edje: fix custom allocator with luajit 2014-02-19 13:05:10 +00:00
Tom Hacohen 27b1bebea5 Evas text utils: Fixed walking compound clusters.
In some scripts, like Devanagari, clusters can be split across more
than just one glyph. This is now fixed.

Thanks to YoungBok Shin for reporting.
2014-02-19 12:08:56 +00:00
Youngbok Shin 2bff3d1c2e evas - Added eina_stringshare_ref call for fallbacks, lang in font description.
Summary:
When the fdesc(Font Description) is duplicated,
ref of all of stringshare pointers should be increased.
But, in the evas_font_desc_dup API, we only increased ref for name string.
It can cause some of memory issues.

Reviewers: tasn, woohyun, seoz, Hermet

CC: cedric

Differential Revision: https://phab.enlightenment.org/D570
2014-02-19 10:44:34 +00:00
perepelits.m f9fe869d23 Edje_Edit: Add NULL-check
Summary:
Add NULL-check in:
         edje_edit_state_add
         _edje_edit_real_part_add
         _edje_part_recalc (edje_calc.c)

Reviewers: cedric, seoz, raster

Reviewed By: raster

CC: reutskiy.v.v, cedric

Differential Revision: https://phab.enlightenment.org/D567
2014-02-19 12:18:42 +09:00
Jean-Philippe Andre 6067c88b56 Evas filters: Use strtok instead of strtok_r for mingw
The Windows build (mingw) does not know about strtok_r.
So, let's use the non-safe variant strtok instead.
Currently, this function is called from the main thread only,
so this should be fine :)

In the future it would be nice to not use strtok anymore,
but strtok_r everywhere, and add it to evil. Considering the
release coming soon, I'm not going to change something like that
now.
2014-02-19 11:30:11 +09:00
Jean-Philippe Andre 54129dfcaa Evas filters: Fix documentation for displace
fillmode "none" is not supported, as it does not make much sense
(how do we displace pixels without an underlying displacement map?)
2014-02-18 10:22:50 +09:00
Jean-Philippe Andre ded097461d Evas filters: Fix padding with "blend"
Test case was:
buffer : a (alpha);
blur (20, dst = a);
blend (src = a, ox = 30);

In that case, padding was 20, 30, 20, 20.
So the blurred buffer was clipped on screen.
2014-02-18 10:22:50 +09:00
Jean-Philippe Andre 3819bc7abb Evas filters: Implement "fillmode" for displace
The fillmode (stretch or repeat map) was present and documented
for displace, but not implemented. Easy copy & paste from the
mask filter.
2014-02-18 10:22:50 +09:00
Jean-Philippe Andre 7cf02ca75b Evas filters doc: Add link to "fillmode" 2014-02-18 10:22:50 +09:00
Jean-Philippe Andre d70b805e6d Evas filters: Fix crash in displace filter
Simplify and fix map traversal code
2014-02-18 10:22:49 +09:00
ChunEon Park a739716cee evas/image - update dirty region in the render time.
this fixes the proxy rendering that sub object of the source couldn't be dirty region set.

since the object could be invisible nor won't be pre-rendered neither.

Im supposing the mapped(proxy) object rendering sequence should be totally refactored

that should be separated with the normal rendering sequence.

Until that, this change will be alternative solution.
2014-02-17 23:05:36 +09:00
Daniel Hirt 08a6954904 Edje/entry: Add propagation handling in mouse_out for link anchors
Summary:
Link anchors are set to allow event propagation. In some cases, this
might lead to unwanted results in entry.
Adding a flag to event_flags allows to control this in Elementary.
One example that this fixes is having wrong mouse cursor handling when
having the mouse out of the link anchor, back to the entry parent
(in this case, additional handling in els_cursor.c is required so this
event is ignored if event_flag is set with EVAS_EVENT_FLAG_ON_HOLD.
Fixes T878.

Reviewers: tasn

CC: cedric

Maniphest Tasks: T878

Differential Revision: https://phab.enlightenment.org/D561
2014-02-17 21:18:19 +09:00
Yakov Goldberg d3851b3026 Revert "ecore timer: change name of Eo constructor, to avoid clash in Eolian"
This reverts commit f7808f1f22.
2014-02-17 12:04:56 +02:00
Yakov Goldberg 9fa8ea0e49 Revert "ecore animator: change name of Eo constructor, to avoid clash in Eolian"
This reverts commit 16c43796a6.
2014-02-17 12:04:40 +02:00
Jean-Philippe Andre 7cc7af14b8 Evas filters: Fix alpha in displacement filter
If the displacement map has some alpha values (not 0xFF),
then the blending should take this alpha into account. This
part is fine.

BUT, since Evas relies on premultiplied colors... we have a
problem: R (dx) and G (dy) have already been scaled down.

Actually we would need to load the map in non premultiplied RGBA,
otherwise we'll lose precision on dx,dy as soon as A != 0xFF.
Well... I guess this will be a limitation of this filter, for now
at least. Most displacement maps shouldn't even have any alpha
anyways.
2014-02-17 10:14:11 +09:00
Jean-Philippe Andre 9472e03546 Evas filters: Fix RGBA displacement filter
Well... it was just broken: typo, lack of normalization on alpha,
invalid formula for blending. Duh!
2014-02-17 10:02:19 +09:00
Yakov Goldberg a1b8e38a5c edje: fix Eo ids, to make Eolian keep silence 2014-02-16 16:51:30 +02:00
Yakov Goldberg 294b46654e edje: fix doxygen, to make Eolian keep silence 2014-02-16 16:51:30 +02:00