Commit Graph

2250 Commits

Author SHA1 Message Date
Boris Faure f3dc094310 evas_text_grid: remove optimisation (will come back later) to make code more readable 2016-03-12 18:10:03 +01:00
Tom Hacohen 66b4290d91 Revert "Vg node: modify so the eo_add migration script won't break."
This reverts commit 6ac1fb78d8.
2016-03-11 12:29:03 +00:00
Tom Hacohen f24210caac Revert "Automatic migration to the new eo_add syntax."
This reverts commit 4f949a2757.
2016-03-11 12:29:03 +00:00
Cedric BAIL 685681c864 efl: rename efl.core.animator to efl.animator.
It has been decided that we would not use any namespace for interface
and they will sit in efl main namespace.

This patch doesn't correct the naming of the event has we don't have a
prefix for event. We do still have EFL_ANIMATOR_EVENT_ANIMATOR_TICK,
instead of a nicer EFL_EVENT_ANIMATOR_TICK.
2016-03-10 13:14:13 -08:00
Tom Hacohen 4f949a2757 Automatic migration to the new eo_add syntax. 2016-03-09 16:09:14 +00:00
Tom Hacohen 6ac1fb78d8 Vg node: modify so the eo_add migration script won't break. 2016-03-09 16:09:14 +00:00
perepelits.m 74161be6f8 Evas: fix camera node adding to scene
Summary: While making new changes after rewieving D3710 we met this bug again, removing eo_unref is the best way to fix it because _eo_ref_replace from D3021 makes nothing special.

Reviewers: cedric, raster, Hermet

Subscribers: jpeg, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-04 16:09:51 -08:00
jiin.moon 41b8a320a0 evas: fix preload thread deadlock issue
Summary: Wrong condition makes deadlock issue.

Reviewers: jpeg, jypark

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-04 16:09:51 -08:00
Tom Hacohen f1b1c5354b Manually fix extra eo_do calls that were added after I migrated 2016-03-03 10:03:55 +00:00
Tom Hacohen 23a6b12183 Fix migration script mistakes and compilation warnings.
Mostly unused vars following the removal of eo_do_ret().
However, there are some cases where the migration script got some things
wrong, and I had to manually fix them.
2016-03-03 09:58:08 +00:00
Tom Hacohen f21ade6123 Automatic migration to Eo4.
I just ran my script (email to follow) to migrate all of the EFL
automatically. This commit is *only* the automatic conversion, so it can
be easily reverted and re-run.
2016-03-03 09:58:08 +00:00
Tom Hacohen 438e1db893 Manually semi-migrate files in preparation for the script
The migration scripts breaks with some weird cases, here I manually
migrated some parts, and just removed the eo_do from others without
actually migrating (so I could deal with that later).
2016-03-03 09:56:20 +00:00
Jean-Philippe Andre bbc616e064 Evas filters: Fix meaning of data 'execute' flag
The doc said it would behave like "value = data" but actually
the data part was executed directly. This should fix that.
2016-03-02 13:11:29 +09:00
Jean-Philippe Andre bafe723991 Evas filters: Mark object as changed on data_set
This fixes the new test case.
2016-03-02 12:57:23 +09:00
Jean-Philippe Andre 2409784df1 Evas text: Add legacy filter APIs
Those should now be considered stable, even if their internals
may change. Also, these APIs are in Tizen so adding these will
help merging Tizen EFL and upstream.
2016-03-02 12:57:23 +09:00
Jean-Philippe Andre b369989a79 Evas filters: Fix bad stringshare usage
Make sure the filter uses properly initialized state names and
don't call stringshare_del on a static string.
2016-03-02 12:57:23 +09:00
Jean-Philippe Andre 24f19dc770 Efl.Gfx.Filter: Rework APIs and mark as stable
- Remove @beta flags,
- Update @since to match stabilization,
- Change methods to properties with keys,
- Use eo_prefix and add filter_ prefix to all properties since
  they use very generic names,

The filter API stays under Efl.Gfx since there are other kinds of
filters, and this one is the particular "graphical filter" or
"effect" API.

The EO API mostly not change from an application point of view,
except for "source_get" which now returns a string directly. Also,
state and data can now be queried.
2016-03-02 12:57:23 +09:00
Carsten Haitzler e167154520 evas render2 - move empty region data into const land so it is in RO mem
this should ensure these constants are in read-only memory if
possible iof they are marked as const as well as static
2016-03-01 13:13:33 +09:00
Carsten Haitzler 1585d242da evas - render2 - silence new gcc warnings about possibly freeing static
This one is new:

In file included from lib/evas/canvas/render2/evas_render2.c:5:0:
In function ‘_region_break.isra.5’,
    inlined from ‘region_add’ at
lib/evas/canvas/render2/region.c:847:41:
lib/evas/canvas/render2/region.c:107:62: warning: attempt to free a
non-heap object ‘_region_brokendata’ [-Wfree-nonheap-object]
 #define FREE_DATA(reg) if ((reg)->data && (reg)->data->size)
free((reg)->data)
                                                              ^
                                                              lib/evas/canvas/render2/region.c:184:4:
note: in expansion of macro ‘FREE_DATA’
    FREE_DATA(region);

While it won't actually free is because if using brokendata the size
is 0 and it'll skip it, add in a check to see if region->data is the
brokendata static
2016-03-01 13:09:50 +09:00
Shuhrat Dehkanov f3d978e04c Update documentation text
Summary:
The word 'english' has several issues:
 - the whole documentation and source code is in English,
   there is no point in mentioning here specifically
 - the character 'E' needs to be capitalized, as in
   Ecore, Evas, Elementary

Reviewers: zmike, herdsman

Subscribers: cedric, seoz, jpeg

Differential Revision: https://phab.enlightenment.org/D3740
2016-02-29 07:02:20 -05:00
Tom Hacohen e71e6561ee Eo callbacks: Migrate all of the EFL to the new event cb signatures. 2016-02-29 11:33:27 +00:00
Daniel Hirt 409f45478b Evas textblock: add a stringshare fastpath to markup_set
This optimization makes use of already stringshare'd text and avoids
unnecessary stringshare_add calls in markup_set. It improves the
performance of edje_calc when reapplying text to the textblock part.
2016-02-29 08:59:24 +00:00
Daniel Hirt c7d45032dd Evas textblock: fix cached markup's stringshare refs
The last fix 34020ed131 was missing a
stringshare_del for the NOP case of markup_set. It led to a
constantly increasing ref count of the cached markup.

@fix
2016-02-28 18:00:08 +02:00
Jean-Philippe Andre 17e3f8c1a6 Evas Filter: Use Eo.Base.constructor in the mixin
This is made possible by inheriting first from an interface
instead of Eo.Base, thus implementing the Eo.Base interface.
2016-02-26 18:36:23 +09:00
Tom Hacohen 34020ed131 Evas textblock: Fix markup cache, was completely broken.
The markup cache was completely broken. It was not compared correctly,
so it wasn't even used, but regardless it was cleared just after being
set in some of the cases.

This is the first part of a performance regression fix in elm label.

@fix
2016-02-26 09:13:38 +00:00
Tom Hacohen 8c1933c388 Evas image: Migrate all the remaining types to Eolian. 2016-02-17 12:24:22 +00:00
Tom Hacohen 094a1f2b5e Evas canvas3d: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-17 10:22:34 +00:00
Tom Hacohen 1c8ae97b83 Evas canvas3d mesh: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-17 10:00:11 +00:00
Tom Hacohen 82caec2888 Evas canvas3d texture: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-17 09:48:34 +00:00
Youngbok Shin d9b93542cf Evas font: allow ":fallbacks" keyword when Evas parses font keyword
Summary:
Developers could use fallback fonts using only font_fallbacks keyword.
The keyword is only allowed for Evas Textblock. It has to be common
feature for other text type objects.
Applying this patch, Text and Textgrid can add fallback fonts.
@feature

Test Plan:
Set font like the following example to Textblock, Text, Textgrid.
Sans:fallbacks=Inconsolata

Reviewers: tasn, herdsman, woohyun

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3704
2016-02-17 09:23:06 +00:00
se.osadchy 780ec5d029 evas: Update evas_3d_utils, replace Evas_Vec.
Summary: Change Evas_Vec2(3) to Eina_Vector2(3).

Reviewers: cedric, Hermet, jpeg

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3686
2016-02-17 16:12:35 +09:00
Youngbok Shin 471c7635ee Evas Text: Update text layout when ellipsis is changed without resize
Summary:
When only ellipsis is changed from 0.0~1.0 to -1.0 without resize,
the text is never updated. Because, previous state for ellipsis is never kept
and used properly to check when Evas Text needs to be updated.

It does not have any effect when ellipsis is changed from -1.0 to 0.0~1.0.
Because, Evas text always resize itself according to its text size.
So, necessarily, Evas text object has to be resized to the smaller size.
Commonly, Edje will handle its size if Evas text needs to be ellipsized.
@fix

Test Plan: Test case is included.

Reviewers: tasn, woohyun, herdsman

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3448
2016-02-16 17:42:11 +02:00
Tom Hacohen 511c4deb84 Evas box: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-16 14:33:32 +00:00
Tom Hacohen 0fa24ee175 Evas out: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-16 10:06:46 +00:00
Tom Hacohen 9c44e1c2dd Evas ector buffer: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-16 09:48:22 +00:00
Tom Hacohen d9d3acc45a Evas vg: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-16 09:45:47 +00:00
Tom Hacohen 7293d234e5 Efl vg: Use correct types in eolian file. 2016-02-16 09:35:22 +00:00
Youngbok Shin b85ae77633 Evas text: set NULL free'd pointers in evas_object_text_free()
Summary:
_render_pre() function could be called for an object which is
going to be deleted. According to state changes of the object,
text could be recalculated with free'd pointers. It caused an
invalid read and crash.
@fix

Test Plan:
1. Apply D1747.
2. Run elementary_test.
3. Put any character in elm_entry and change paragraph direction.
4. Put any character again.
5. It can cause a crash which is caused by invalid read in Evas Text.

Reviewers: herdsman, woohyun, tasn, raster

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3445
2016-02-15 10:41:37 +00:00
Daniel Hirt d79a1ade6c Evas textblock: ifdef unused 'hyphens' code
The usage of the 'hyphens' array is only relevant when
"--enable-hyphen" is used.
This fixes the dead code addressed in
5b083ace84.
2016-02-14 15:46:23 +02:00
Daniel Hirt 196029316d Revert "Evas textblock: Properly ifdef hyphenation out."
This reverts commit 5b083ace84.

The "--enable-hyphen" option refers to using the optional hyphenation
dictionaries. We support hyphenation via SHY-HYPHEN hints regardless of
this option.
The following commit will provide finer handling to address the issue in
the reverted one.
2016-02-14 15:46:10 +02:00
Ivan Furs 5af22ba27a evas: optimize Canvas3D calculation of bounding space
Summary: Bounding box and sphere will calculate if user need callback of collision or data of box or data of sphere.

Reviewers: sri.hebbar, cedric

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-12 21:25:55 +01:00
Tom Hacohen 4bfcc8a347 Eolian eina_types: Add Eina.Matrix3 and start using it. 2016-02-12 14:41:40 +00:00
Tom Hacohen 5b083ace84 Evas textblock: Properly ifdef hyphenation out.
I found this thanks to coverity. There was some code that we were running
although hyphenation was actually off.

CID 1341062.
2016-02-12 12:21:06 +00:00
Youngbok Shin 0186f87c49 Evas textblock: Fix _dict_hyphen_load could return an uninitialized pointer
Summary:
If there are hyph_*.dic files except for requested language,
"dict" pointer could be return without initialized. It doesn't make any
warning messages when it is compiled. Normally, it is NULL implicitly.
But, it is good to set NULL explicitly for understanding code.

Test Plan: N/A

Reviewers: herdsman, tasn, woohyun

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3674
2016-02-12 09:46:44 +00:00
Youngbok Shin b4f254e1a3 Evas font: Use proper enum value for extrabold
Summary:
ULTRABOLD is identical to EXTRABOLD in freetype.
But, "extrabold" word is added for FC_WEIGHT_EXTRABOLD.
So, it has to be changed to use EXTRABOLD instead of
ULTRABOLD. It was mistake in my previous commit.
@fix

Test Plan: N/A

Reviewers: tasn, herdsman, woohyun

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3673
2016-02-11 10:17:46 +00:00
Florent Revest 1d99c5b907 evas: include Eet.h where it's needed.
This patch is applied by OpenEmbedded project to let evas build
correctly in crosscompilation environnement.
cf: https://github.com/openembedded/meta-oe/blob/master/meta-efl/recipes-efl/efl/efl/0002-evas_3d-Add-Eet.h-includes.patch

@fix

Signed-off-by: Nicolas Aguirre <aguirre.nicolas@gmail.com>
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-10 10:46:45 -08:00
Mike Blumenkrantz da127a69d0 evas: check EINA_MEMPOOL env var when creating evas mempool allocators
this should really be a utility function already since all mempools in efl use
the exact same code...
2016-02-05 14:35:28 -05:00
Youngbok Shin 931b225895 Evas textblock: Save memory space reducing unused hyphen dictionary loads
Summary:
Commonly, only few hyphenation dictionaries are used at a application.
So, loading all of dictionary files could cause waste of memory.
Evas textblock has to load hyphenation dictionaries only when it is
really needed.

Test Plan: N/A

Reviewers: woohyun, tasn, herdsman

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3626
2016-02-04 17:30:58 +02:00
Youngbok Shin 33ea565347 Evas: Use proper language for harfbuzz shaping
Summary:
Evas Text, Textblock, Textgrid keeps own language information.
This language information could be vary from the result of setlocale().
Especially, Evas Textblock supports <lang> tag. The language could be
changed in the middle of text. All of these language has to be used
for harfbuzz shaping.
@fix

Test Plan: N/A

Reviewers: herdsman, raster, woohyun, tasn

Reviewed By: tasn

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3628
2016-02-04 10:07:08 +00:00
Youngbok Shin 757f842992 Evas textgrid: Use default language according to locale
Summary:
Use default language according to locale.
It's the same as the recent changes on Evas Text, Textblock.
@feature

Test Plan: N/A

Reviewers: herdsman, raster, tasn

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3642
2016-02-03 09:34:32 +00:00