Commit Graph

8277 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
Stefan Schmidt 969bd17ab7 eeze: remove trailing whitespace
Nothing to see here, just stumbled over it when reading through the file.
2016-03-11 17:59:46 +01:00
Derek Foreman ee0508a2bb ecore_drm: Update device copy of framebuffer after page flip completes
The device struct is API, so its copy of the fb pointer needs to be
kept in sync with the output struct's.  We do this when the flip completes
to try to prevent access to an fb that's about to flip.

This fixes Enlightenment screenshots.

@fix
2016-03-11 11:53:46 -05:00
Daniel Kolesa c420cbe9f0 eolian: refactor database_typedecl_to_str to remove dead code
After the type system transition there was some unnecessary dead code.
Fixes CID 1352512.
2016-03-11 13:04:41 +00:00
Tom Hacohen 8a56f5c98e Revert "Eo: Change to the Eo4 eo_add syntax."
I found a way to keep eo_add() the way it was and gracefully degrade to
a portable (but not as fast) solution for compilers that don't support
the compound macros returning a value gnu extension: ({int a; a;}).

I'm reverting these changes now, and I'll introduce the fallback as soon
as I can.

This reverts commit b85bb37183.
2016-03-11 12:29:04 +00: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 81240669e8 Revert "Ector and eo suite: Semi automatically migrate to the new eo_add."
This reverts commit df83edaeb6.
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
Tom Hacohen 72c6236038 Revert "cxx: Migrate C++ binding to the new eo_add syntax"
This reverts commit 48f62ad686.
2016-03-11 12:29:03 +00:00
jinwoo.shin be8605dc44 edje: add error log message for missing description
Summary:
Developer cannot notice that any description didn't applied due to missing description or typo.
This message will be helpful to make correct the application.

Reviewers: cedric, Hermet, raster

Subscribers: soohye.shin, minkyu, cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-10 14:15:15 -08: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
Derek Foreman 9646f8e9ec ecore_wl2: Don't treat EINVAL as a recoverable condition
EINVAL is bad, we can't go on.  If we treat it like it's not a fatal
error we'll end up spinning on the fd and constantly retrying sends
on the dead wayland connection.

@fix
2016-03-10 15:55:04 -05:00
Mike Blumenkrantz 358a204491 ecore-wl2: set fd handler active flags correctly for connect/create
@fix
2016-03-10 14:23:43 -05:00
Mike Blumenkrantz 8e077745bc ecore-drm: don't set DBG on log level if DBG not already set
...
2016-03-09 15:36:53 -05:00
Chris Michael 96085feb6d ecore-drm: Disable default DBG log level
Simple patch to disable setting ecore-drm log level to DBG by default

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-03-09 15:24:56 -05:00
Vitor Sousa 48f62ad686 cxx: Migrate C++ binding to the new eo_add syntax 2016-03-09 15:46:19 -03:00
Tom Hacohen 4f949a2757 Automatic migration to the new eo_add syntax. 2016-03-09 16:09:14 +00:00
Tom Hacohen df83edaeb6 Ector and eo suite: Semi automatically migrate to the new eo_add.
There were some issues with the migration that required manual
intervention.
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
Tom Hacohen b85bb37183 Eo: Change to the Eo4 eo_add syntax.
The current one was a hack in the meanwhile and was not protable.
2016-03-09 16:09:14 +00:00
Chris Michael d4307e3494 ecore-drm: Don't re-include config.h
As ecore_drm_private.h already includes config.h header, we don't need
to include it here in these files also

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-03-09 08:27:05 -05:00
Chris Michael 2dbe2732a2 ecore-drm: Update copyright notice
As portions of this code have been derived from existing code in
Weston, we should also be including their copyright/licence text to
give credit.

NB: Fixes T3286

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-03-09 08:22:22 -05:00
Tom Hacohen 7d8cd6c40f Revert "ecore: Create Promises"
Reverting this at Felipe's request following my email. There are many
things I strongly object to in this commit. I've touched the surface of
those on the ML (which doesn't work at the moment), though we need to
better discuss it.

The gist:
1. dlsym is a really bad hack that is not even needed.
2. I don't see why eo should even be aware of promises. It's not aware
of list, hash and etc.
3. The eolian changes were done wrong.

This should have been discussed and consulted before done, even if only
because of the amount of hacks it includes and the cross-domain (ecore,
eo and eolian) nature of it.

This reverts commit f9ba80ab33.
2016-03-08 14:23:57 +00:00
Carsten Haitzler 3df71ab0f6 eo del interceptor: add the ability to intercept deletions of eo objects
Imagine this. You have an object. You pass this object handle as a
message to another thread. Let's say it's not a UI object, so
something you might expect to be able to be accessed from multiple
threads. In order to keep the object alive you eo_ref() it when
placing the message on a queue and eo_unref() it once the message is
"done" in the other thread. If the original sender unref()ed the
object before the message is done, then the object will be destroyed
in the reciever thread. This is bad for objects "expecting" not to be
destroyed outside their owning thread.

This allows thius situation to be fixed. A constructor in a class of
an object can set up a delete interceptor. For example if we have a
"loop ownership" class you multi-ple-inherit from/use as a mixin. This
class will set up the interceptor to ensure that on destruction if
pthread_self() != owning loop thread id, then add object to "delete
me" queue on the owning loop and wake it up. the owning loop thread
will wake up and then process this queue and delete the queued objects
nicely and safely within the "owning context".

This can also be used in this same manner to defer deletion within a
loop "until later" in the same delete_me queue.

You can even use this as a caching mechanism for objects to prevernt
their actual destruction and instead place them in a cached area to be
picked from at a later date.

The uses are many for this and this is a basic building block for
future EFL features like generic messages where a message payload
could be an eo object and thus the above loop onwership issue can
happen and needs fixing.

This adds APIs, implementation, documentation (doxy reference) and tests.

@feature
2016-03-08 16:57:22 +09:00
Stefan Schmidt 96bb964dd5 Revert "eina: split Makefile with files/headers in preparation for additional per sub directory compilation"
This reverts commit 7f4ea1a79c.

This reverts one of three parts of the try to get sub directory
compilation back into eina. It breaks our distcheck though and I
talked to Cedric about it and he prefers to revert these as we might
need to go another route to bring this functionality back. Details
will come to the mailing list.
2016-03-08 00:18:08 +01:00
Stefan Schmidt bb0d161d8f Revert "eina: reintroduce additional support for eina sub directory compilation."
This reverts commit 1affc60d00.

This reverts one of three parts of the try to get sub directory
compilation back into eina. It breaks our distcheck though and I
talked to Cedric about it and he prefers to revert these as we might
need to go another route to bring this functionality back. Details
will come to the mailing list.
2016-03-08 00:18:08 +01:00
Stefan Schmidt c55625aec4 Revert "eina: rely on GNU make to find file at their correct location."
This reverts commit e26fcbb1dc.

This reverts one of three parts of the try to get sub directory
compilation back into eina. It breaks our distcheck though and I
talked to Cedric about it and he prefers to revert these as we might
need to go another route to bring this functionality back. Details
will come to the mailing list.
2016-03-08 00:18:08 +01:00
Daniel Kolesa bf2c0c3405 eolian: validate eo/legacy prefix to be [a-z_][a-z0-9_]* 2016-03-07 15:01:19 +00:00
Tom Hacohen f9a47b1848 Eo event cb: Update documentation. 2016-03-07 10:34:52 +00:00
Tom Hacohen 8c567bbb17 Eo: Update documentation according to the event cb changes. 2016-03-07 10:25:10 +00:00
Tom Hacohen 8c7c8b3241 Eo: get rid of Eo_Event2.
The hack is still there, but much cleaner now.
2016-03-07 10:25:10 +00:00
Felipe Magno de Almeida f9ba80ab33 ecore: Create Promises
Add a promise object that allows Eolian interface to include promises
as a way to have asynchronous value return and composibility.

The usage is like this in a .eo file:

class Foo {
   methods {
      bar {
         params {
            promise: Promise<int>;
         }
      }
   }
}

Which will create the following API interface:

void foo_bar(Ecore_Promise** promise);

and the equivalent declaration for implementation.

However, the API function will instantiate the Promise for the
user and the implementer of the class.
2016-03-06 17:55:33 -03:00
Felipe Magno de Almeida d723990955 eina: Add Eina_Iterator implementation for C-array
This iterator is convenient when you already have a C-Array and you
need to pass this array to a function receiving an Eina_Iterator.

int array[] = {1, 2, 3, 4};
int* array2[] = {&array[0], &array[1], &array[2], &array[3], NULL};

Eina_Iterator* iterator = eina_carray_iterator_new((void**)array);
2016-03-06 17:24:34 -03:00
Jean Guyomarc'h 793e4e0b5a eina: fix typos in doxygen 2016-03-06 12:35:13 +01:00
Jean Guyomarc'h 15ddd174a1 ecore: better resources use in the glib integration
Summary:
When glib support is enabled (HAVE_GLIB), _ecore_glib_init()
was always reserving resources. However, its counterpart may not
be called when:
- glib is not always integrated and
- when a user didn't explicitly required the integration.

Calling _ecore_glib_init() within the request code will cause the
resources to be reserved only when the integration with glib is
required and furthermore guarantees that resources always have a
chance to be released.

Reviewers: cedric, raster

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-04 16:09:51 -08: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
Soohye Shin 48461bb946 edje: return default description depends on RTL when description doesn't exist
Summary:
If not found edje part description, edje just set default description in spite of RTL status.
This adds to call function for getting the correct description as RTL status.

Reviewers: raster, Hermet, cedric

Subscribers: minkyu, sju27, cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-04 16:09:51 -08:00
Jee-Yong Um 4ed9b83258 edje_embryo: add box attributes support to set_state_val()
Summary: Add box attributes support to set_state_val().

Reviewers: raster, cedric

Reviewed By: cedric

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-04 16:09:51 -08:00
Tom Hacohen 8e43730006 Eo: unmark Eo_Class as deprecated.
It's not deprecated, it's actually a useful alias.
2016-03-04 14:25:28 +00:00
Tom Hacohen 0c03ba0a5d Eo: Remove more deprecated functions. 2016-03-04 14:24:20 +00:00
Tom Hacohen b55ec7a34e Eo: remove the long deprecated eo_data_get.
It has been deprecated for a while, and now it's time to actually stop
using it.
2016-03-04 14:23:02 +00:00
Tom Hacohen 912f03d6e2 Eo legacy events: remove pointless string copies.
This was there because the old code modified the string. It is no
longer needed now that we just stringshare it.
2016-03-04 14:17:55 +00:00
Tom Hacohen d2f799e4cb Eo: Remove useless safety checks.
Those can never happen, ever.
2016-03-04 14:09:34 +00:00
Daniel Zaoui 457c6e43fc Eo: fix oversight for key_data 2016-03-04 14:01:48 +02:00
Daniel Zaoui 66256028d5 Eo: set object as const for key_data_get
Due to Eo4 changes, const is now important for this function.
2016-03-04 13:55:07 +02:00
Cedric Bail e26fcbb1dc eina: rely on GNU make to find file at their correct location. 2016-03-03 21:10:00 -08:00
Jaehyun Cho 3398db2dcd Eo: Fix typo of SUPER_TAG_SHIFT.
This commit fixes commit fc88037977
2016-03-04 13:51:43 +09:00
Cedric Bail 1affc60d00 eina: reintroduce additional support for eina sub directory compilation.
This is still experimental and quite hacky. Let me know if you face issue.
It should just work with make -C src/lib/eina normally...
2016-03-03 15:10:59 -08:00
Cedric Bail 7f4ea1a79c eina: split Makefile with files/headers in preparation for additional per sub directory compilation 2016-03-03 15:10:59 -08:00
Vitor Sousa 9cbda57bf0 eolian-cxx: Fix Eolian C++ constructing methods with new eo_add
Also fix Eolian C++ examples using the new "eo_super".
2016-03-03 16:05:40 -03:00
Felipe Magno de Almeida 5c7d78d104 eolian-cxx: Partial fix for generation without eo_do 2016-03-03 16:05:40 -03:00
Daniel Kolesa 32e0b60bb4 eolian: type documentation and other cleanups 2016-03-03 18:58:11 +00:00
Daniel Kolesa e061d49aac eolian: completely clean up the type system 2016-03-03 18:58:11 +00:00
Daniel Kolesa 1f58ccb49f eolian: clean up some temporary hashes 2016-03-03 18:58:11 +00:00
Daniel Kolesa c3a33653f3 eolian: separate type_to_str for decls 2016-03-03 18:58:11 +00:00
Daniel Kolesa 5401c775ec eolian: remove database_type_print (unused) 2016-03-03 18:58:11 +00:00
Daniel Kolesa 4c4fbfae0b eolian: remove most of the old type APIs 2016-03-03 18:58:11 +00:00
Daniel Kolesa 863212f84a eolian: more old type api removals 2016-03-03 18:58:11 +00:00
Daniel Kolesa 4e40b60f06 eolian: remove retrieval funcs for type-style enums/aliases/structs 2016-03-03 18:58:11 +00:00
Daniel Kolesa cb42da514b eolian: initial conversion of C gen and tests to new type APIs 2016-03-03 18:58:11 +00:00
Daniel Kolesa 8514c1846f eolian: add api to deal with typedecl free funcs 2016-03-03 18:58:11 +00:00
Daniel Kolesa c0287a2752 eolian: add some missing typedecl APIs 2016-03-03 18:58:11 +00:00
Daniel Kolesa cf9dbaa7da eolian: add matching APIs to get typedecls by file 2016-03-03 18:58:11 +00:00
Daniel Kolesa 6e2497bc01 eolian: add wrappers for most of typedecl APIs 2016-03-03 18:58:11 +00:00
Daniel Kolesa 2be79061fd eolian: remove unneeded hashes 2016-03-03 18:58:11 +00:00
Daniel Kolesa 1425523bd4 eolian: actually generate typedecls as necessary 2016-03-03 18:58:11 +00:00
Daniel Kolesa 06c246ee27 eolian: free the hashes (prevent leaks) 2016-03-03 18:58:11 +00:00
Daniel Kolesa 8944cc44c1 eolian: add typedecl delete func and init hashes correctly 2016-03-03 18:58:11 +00:00
Daniel Kolesa 67f17f1068 eolian: rename typedef to typedecl to clear name confusion 2016-03-03 18:58:11 +00:00
Daniel Kolesa 87c763ac8b eolian: add a structure + hashes representing type decls 2016-03-03 18:58:11 +00:00
Daniel Kolesa ff7e2b5b6b eolian: always define the first enum value for consistency 2016-03-03 18:58:11 +00:00
Daniel Kolesa 0d291ac43e eolian: add typedef enumeration for type definitions 2016-03-03 18:58:11 +00:00
Derek Foreman 54f954c2ee ecore-input: Fix spelling errors in comments
This small patch just fixes up some spelling errors in comments. No
functional changes.

Reviewers: zmike, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3753
2016-03-03 11:24:50 -05:00
Tom Hacohen 12d8654f14 Edje calc: Fix wrong migration to Eo4.
The if wasn't using {} so one of the statements was executed
unconditionally.
2016-03-03 12:23:06 +00: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 3faf3f3fc6 Some automatic migration and some manual adjustments to calc and text.
These file needed some manual adjustments in addition to the automatic
migration, that's why these are separate from the previous and next
commits, so I can easily know there are additional changes to these, and
it wasn't just the script.
2016-03-03 09:56:20 +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
Tom Hacohen fc88037977 Eo: Migrate to the new syntax (Eo 4).
The syntax is described in: https://phab.enlightenment.org/w/eo/

Summary:
eo_do(obj, a_set(1)) -> a_set(obj, 1)
eo_do_super(obj, CLASS, a_set(1)) -> a_set(eo_super(obj, CLASS), 1)

eo_do_*_ret() set of functions are no longer needed.

This is the first step, the next step would be to also fix up eo_add()
which currently still uses the old syntax and is not 100% portable.

@feature
2016-03-03 09:53:23 +00:00
Jean Guyomarc'h 0ceca701bf ecore_cocoa: add function attributes
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:56:49 -08:00
Jean Guyomarc'h 2d338afb7c ecore_cocoa: add missing documentation
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:56:39 -08:00
Jean Guyomarc'h b21ab5b541 ecore_cocoa: move Ecore_Cocoa_Cursor.h in Ecore_Cocoa.h
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:56:35 -08:00
Jean Guyomarc'h e8c17ce341 ecore_cocoa: full documentation of Ecore_Cocoa.h
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:56:32 -08:00
Jean Guyomarc'h deb553d55e ecore_cocoa: remove Ecore_Cocoa_Event_Window
Create specific structures for each event:
- Ecore_Cocoa_Event_Window_Focused
- Ecore_Cocoa_Event_Window_Unfocused
- Ecore_Cocoa_Event_Window_Destroy

They are currently hold the same data, but this will allow not to break
the event protocol when future extensions will be needed.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:56:28 -08:00
Jean Guyomarc'h e7dc1491a2 ecore_cocoa: rename width and height parameters
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:56:24 -08:00
Jean Guyomarc'h 3b61c2e07c ecore_cocoa: better naming of events
Lost and got focused have been renamed FOCUSED and UNFOCUSED to mirror
the focus API in Elementary.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:56:20 -08:00
Jean Guyomarc'h 84bbe500c5 ecore_cocoa: replace Ecore_Cocoa_Window_Id by Ecore_Cocoa_Object
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:56:16 -08:00
Jean Guyomarc'h 71199709db ecore_cocoa: unify API with Ecore_Evas
- Sizes are signed integers
- Width is named w
- Height is named h

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:56:12 -08:00
Jean Guyomarc'h 0abeacb8ce ecore_cocoa: introduce Ecore_Cocoa_Object
This type is used as a bridge between objective-c objects (which are
ALWAYS pointed to) and the C interface.
Ecore_Cocoa_Object* is a less ugly substitute for void*.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:56:08 -08:00
Jean Guyomarc'h 1528b8c6aa ecore_cocoa: use Eina_Bool instead of int
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:56:04 -08:00
Jean Guyomarc'h f85667c3fc ecore_cocoa: implement and const-correct window size step getter
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:56:01 -08:00
Jean Guyomarc'h 070430d51a ecore_cocoa: implement and const-correct window size max getter
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:55:57 -08:00
Jean Guyomarc'h 3eee82de31 ecore_cocoa: implement and const-correct window min size getter
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:55:53 -08:00
Jean Guyomarc'h 5deb157770 ecore_cocoa: implement and const-correct window size getter
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:55:49 -08:00
Jean Guyomarc'h 24a7209b51 ecore_cocoa: implement and const-correct window geometry getter
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-03-02 13:55:43 -08: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 07a8d6a5da Edje calc: Simplify code readability with eo_do
This removes an absolutely crazy use of eo_do where all calls
to the efl_gfx_filter functions where factorized in an unreadable
manner. Hopefully eo_do will disappear soon.
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 7920e66f29 efl - fix threadqueue spinlock destruction on openbsd - doesn't like it
so the spinlock on the threadqueue block pool it taken on shutdownn,
while the block pool is freed up then its is destroyed, but openbsd
very much doesnt like this and returns an error, so release the lock
before destroying it.

@fix
2016-03-02 10:33:40 +09:00
Carsten Haitzler 9d3391e350 edje entry: fix gcc warnings about possibly uninitialized variables
this fixes warnings from gcc specifically:

lib/edje/edje_entry.c: In function ‘_edje_entry_imf_cursor_info_set’:
lib/edje/edje_entry.c:4104:4: warning: ‘dir’ may be used uninitialized
in this function [-Wmaybe-uninitialized]
    ecore_imf_context_bidi_direction_set(en->imf_context,
(Ecore_IMF_BiDi_Direction)dir);
    ^
    lib/edje/edje_entry.c:4099:24: note: ‘dir’ was declared here
        Evas_BiDi_Direction dir;
                                ^
                                lib/edje/edje_entry.c:4103:4: warning:
‘ch’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:27: note: ‘ch’ was declared here
        Evas_Coord cx, cy, cw, ch;
                                   ^
                                   lib/edje/edje_entry.c:4103:4:
warning: ‘cw’ may be used uninitialized in this function
[-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:23: note: ‘cw’ was declared here
        Evas_Coord cx, cy, cw, ch;
                               ^
                               lib/edje/edje_entry.c:4103:4: warning:
‘cy’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:19: note: ‘cy’ was declared here
        Evas_Coord cx, cy, cw, ch;
                           ^
                           lib/edje/edje_entry.c:4103:4: warning:
‘cx’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:15: note: ‘cx’ was declared here
        Evas_Coord cx, cy, cw, ch;
                       ^
                       lib/edje/edje_entry.c: In function
‘_edje_part_move_cb’:
lib/edje/edje_entry.c:4104:4: warning: ‘dir’ may be used uninitialized
in this function [-Wmaybe-uninitialized]
    ecore_imf_context_bidi_direction_set(en->imf_context,
(Ecore_IMF_BiDi_Direction)dir);
    ^
    lib/edje/edje_entry.c:4099:24: note: ‘dir’ was declared here
        Evas_BiDi_Direction dir;
                                ^
                                lib/edje/edje_entry.c:4103:4: warning:
‘ch’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:27: note: ‘ch’ was declared here
        Evas_Coord cx, cy, cw, ch;
                                   ^
                                   lib/edje/edje_entry.c:4103:4:
warning: ‘cw’ may be used uninitialized in this function
[-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:23: note: ‘cw’ was declared here
        Evas_Coord cx, cy, cw, ch;
                               ^
                               lib/edje/edje_entry.c:4103:4: warning:
‘cy’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:19: note: ‘cy’ was declared here
        Evas_Coord cx, cy, cw, ch;
                           ^
                           lib/edje/edje_entry.c:4103:4: warning:
‘cx’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:15: note: ‘cx’ was declared here
        Evas_Coord cx, cy, cw, ch;
                       ^

and the likes...
2016-03-01 13:25:40 +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
Felipe Magno de Almeida d40b046685 eolian-cxx: Fix C++ events with new Eo_Event_Cb signature 2016-02-29 11:01:04 -03:00
Mike Blumenkrantz 9ad7ddbcd4 efl+edje: add EFL_VERSION_1_18 define for detecting 1.18 feature support
this define means that any 1.18 feature can now be detected by testing for
the presence of this define, even before the release has gone out

for future (non-bugfix) releases, further defines should be created in addition
to this one in order to provide detection for features in each version
2016-02-29 07:32:42 -05:00
Tom Hacohen a761171009 Eo: Add an interface for other interfaces to inherit from. 2016-02-29 12:08:33 +00: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 02b0c5878d Edje edit: Fix wrong return value type. 2016-02-29 11:50:52 +00: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
Tom Hacohen 56ea371dfb Eo events: Change event callback signature.
Change the Eo event callback signature to what suggested by Marcel
Hollerbach in the ML (Thread: EFL interface change - Animator).

This changes the signature of callbacks from
Eina_Bool cb(void *data, Eo *obj const Eo_Event_Description *desc, void *event_info)
to
Eina_Bool cb(void *data, const Eo_Event *event)

Where Eo_Event is a structure that holds these parameters.

This makes it less annoying to not use parameters (you end up using
EINA_UNUSED less), and allows for future extensions to callback
parameters.

@feature
2016-02-29 11:33:24 +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 675a263f97 Edje textblock: Assume textblock knows to deal with setting the same markup.
Edje was trying to be smart and ask textblock for its markup and compare
with its own cache before setting it again. This is completely wrong,
and textblock is smart enough to deal with it now.

@fix
2016-02-26 09:13:38 +00: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
Mike Blumenkrantz f757fe5ccf edje: unset animator pointer after free in _edje_file_del()
this function may be called repeatedly with no other animator created
in between, leading to invalid object access

@fix
2016-02-24 11:53:53 -05:00
Vitalii Vorobiov 1e12897455 Edje_Edit: return accidently removed clip_to in code generation
Oops...
2016-02-24 13:55:14 +00:00
Vitalii Vorobiov 9f9032befa Edje_Edit: support image border_scale and border_scale_by setters and getters 2016-02-24 13:50:36 +00:00
Vitalii Vorobiov 0cb676395d Edje_Edit: support use_alternate_font_metrics setters and getters 2016-02-24 11:45:49 +00:00
Marcel Hollerbach e4cb6ff6fe eldbus: eldbus is already defined in eo
the struct is already defined in eldbus_general.eoeldbus: eldbus is
already defined in eo

the struct is already defined in eldbus_general.eott
2016-02-23 18:58:48 +01:00
Vitalii Vorobiov ed59f8589e Edje_Edit: allow to set NULL as text_class (unset text_class) into part's state 2016-02-23 18:54:04 +00:00
Vitalii Vorobiov 7923e9799d Edje_Edit: ability to set size class into certain part's state
API looks like this edje_edit_state_size_class_set
2016-02-23 18:54:04 +00:00
Vitalii Vorobiov 710dbac046 Edje_Edit: Edje_Edit: update source generation to print size classes 2016-02-23 18:54:04 +00:00
Vitalii Vorobiov d4b622e9eb Edje_Edit: support new edje top block "size classes" with edje_edit API
Plenty of new API:
edje_edit_size_classes_list_get - to return total list of size_classes inside of
loaded collection of groups
edje_edit_size_class_add - add new size class into loaded collection
edje_edit_size_class_del - deleting
edje_edit_size_class_name_set - renaming existing size class into something new
and some setters and getters for min and max (width and height) of size class.
2016-02-23 18:54:03 +00:00
Chris Michael da0b4d4850 ecore-x: add safety checks for _ecore_x_disp in some functions
xlib immediately crashes upon being passed a null DISPLAY object,
so every function in ecore-x should likely have safety checks such as these.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-23 08:43:50 -05:00
Vitalii Vorobiov 861a0b6d55 Edje_Edit: update source generation to print text classes 2016-02-23 14:02:57 +00:00
Vitalii Vorobiov 559cf1e73c Edje_Edit: support new edje top block "text classes" with edje_edit API
Plenty of new API:
edje_edit_text_classes_list_get - to return total list of text_classes inside of
loaded collection of groups
edje_edit_text_class_add - add new text class into loaded collection
edje_edit_text_class_del - deleting
edje_edit_text_class_name_set - renaming existing text class into something new
edje_edit_text_class_font_{get|set} - get/set font name
edje_edit_text_class_size_{get|set} - get/set font size
2016-02-23 14:01:55 +00:00
Mike Blumenkrantz a2dbaa2759 embryo: add tzdate function
in the case where a user wants to get the current date/time from a
specified timezone, this function allows a timezone string to be passed
as a parameter

@feature
2016-02-22 18:29:01 -05:00
Mike Blumenkrantz 3af1a8af1e embryo: reformat the whole thing
so many tabs
2016-02-22 18:29:01 -05:00
Chris Michael a0ad57bb16 ecore-x: add safety checks for _ecore_x_disp in some functions
xlib immediately crashes upon being passed a null DISPLAY object,
so every function in ecore-x should likely have safety checks such as these.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-22 14:50:35 -05:00
Chris Michael f87dceda85 ecore-drm: Don't reset event modifiers on touch motion
When we are sending an event for touch motion, we should be specifing
the modifers in the event structure (not setting them to zero).

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-22 12:13:06 -05:00
Mike Blumenkrantz f7cd667766 eldbus: print dbus errors incurred when failing at signal handler operations
seeing these errors is significantly more helpful when debugging why the system
is not responding as expected
2016-02-19 13:24:30 -05:00
Mike Blumenkrantz 2cf1f0e6e3 edje: clear pending programs upon calling stop_programs_on()
pending programs have not started yet, so they are not directly attached
to the part. failing to remove them results in unexpected behavior from programs

ref 71ce70bc3f

@fix
2016-02-19 13:24:30 -05:00
Vitalii Vorobiov 0e44209215 Edje_Edit: add forgotten since1.18 into documentation of newly implemented API 2016-02-19 14:20:51 +00:00
Vitalii Vorobiov dcbb62739c Edje_Edit: target can be insert into different place in program's target list
Here is API for that:
> edje_edit_program_target_insert_at
2016-02-19 14:19:50 +00:00
Vitalii Vorobiov 5c0c87cbe8 Edje_Edit: fix defect found by Coverity in ...state_tween_insert_at
Check constraits before creating image structures

CID 1351558
2016-02-19 11:22:07 +00:00
Vincent Torri 2636fd6559 Evil: remove useless defines
Summary: Those defines are already defined in mingw-w64 header files

Test Plan: makE

Reviewers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-18 13:37:31 -08:00
Derek Foreman fbf8ee656c ecore_drm: Check list presence by NULL test instead of counting
a count of < 1 will just be a NULL pointer, and a count of > 0 will
be non NULL, so we can simplify these conditionals.
2016-02-18 15:50:16 -05:00
Derek Foreman ddc6962d77 ecore_drm: Add pointer warping API
Adds a new API: ecore_drm_device_pointer_warp() which warps the pointer
to the specified location.  All libinput seats with pointers are warped.
2016-02-18 15:50:16 -05:00
Derek Foreman 937ca952ed ecore-drm: Only queue re-flip on the head that needs it
Prevents stuttering when a head that was successfully set bounces
back to a previous frame the other head failed to set.
2016-02-18 15:50:15 -05:00
Derek Foreman aa584dad19 ecore_drm: Refactor ecore_drm_fb_send into two functions
We'll need to set outputs individually from the page flip handle to handle
page flip problems, so we need the per output setting logic in its own
function.
2016-02-18 15:50:15 -05:00
Derek Foreman 5d7271683b ecore_drm: Change page flipping logic so we can't tear
Summary:
Previously if we ever tried to queue up two page flips in less than a
retrace interval (which can easily happen since the evas clock isn't
based on vblank) we'd give up on ever using page flips again, and tear
on every screen update.

This fixes that by using a vblank callback for custom ticks and using
page flips whenever possible.

If a page flip fails it means a page flip raced with the vblank ticker,
so we need to queue up that frame when the current page flip completes.
This ensures that while we might drop interim frames, we will never
lose the most recent.

Now it should only be possible to tear if two ticks fire during the
wait for a page flip to complete.  This would result in rendering
taking place in the front buffer.  I don't think this can happen,
but an error is logged if it does.

Reviewers: zmike, devilhorns

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3594
2016-02-18 15:50:15 -05:00
Tom Hacohen 1f576da49e Revert "Eo: Print an ERR when deleting an object with data refs."
Revert this in the meanwhile. See discussion on the ML. This should be
enabled though, and issues fixed.

This reverts commit ec2f92e35f.
2016-02-18 19:28:41 +00:00
Srivardhan Hebbar 865624dab0 ecore_con: changing from Ecore.Con.Base to Efl.Network.Base.
Summary: Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-18 11:25:21 -08:00
Tom Hacohen ec2f92e35f Eo: Print an ERR when deleting an object with data refs. 2016-02-18 15:59:36 +00:00
Vitalii Vorobiov 41d92d0893 Edje_Edit: fix warning on unsigned and signed int comparation
Oops!
Sorry, missed this one:

lib/edje/edje_edit.c: In function 'edje_edit_program_after_insert_at':
lib/edje/edje_edit.c:9980:14: warning: comparison between signed and unsigned
integer expressions [-Wsign-compare]
    if (place >= eina_list_count(epr->after))
              ^

Now fixed
2016-02-18 17:19:19 +00:00
Vitalii Vorobiov 2f6cf2c74f Edje_Edit: ability to insert "after" program into specific position
API looks like this:
> edje_edit_program_after_insert_at
2016-02-18 17:10:24 +00:00
Vitalii Vorobiov e2051e334b Edje_Edit: new API to insert tween into specified place
> edje_edit_state_tween_insert_at
2016-02-18 15:46:52 +00:00
Daniel Kolesa eee5cc4fdc eolian: re-enable strict validation 2016-02-18 10:14:41 +00:00
Vitalii Vorobiov 7907c7b88c edje_edit.c: it should be able to change item position
Few new API for inserting/mving items inside of BOX/TABLE
> edje_edit_part_item_insert_before
> edje_edit_part_item_insert_after
> edje_edit_part_item_insert_at
> edje_edit_part_item_move_below
> edje_edit_part_item_move_above
2016-02-18 11:58:44 +00:00
perepelits.m ef767580a5 Edje: add of some new features and fixes for Canvas3d types in edje_calc.
Summary:
Adding of new properties for light in edje-3d. Recalculation of main properties in Canvas3D parts to provide animation (only those which I used in widgets).
Checking of frame existing when setting material.

Reviewers: cedric, raster, Hermet

Subscribers: jpeg, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-17 14:48:36 -08:00
Cedric BAIL 56a21ab5f2 Revert "eolian: strict validation for EFL (errors by default)"
This reverts commit 21a2a8007d.

Please run make check from time to time.
2016-02-17 14:37:42 -08:00
Srivardhan Hebbar 8a18b0749d ecore_con: fix compilation issues on Windows
Summary:
I do not have a windows setup. So tested by building with option --with-windows-version and it built successfully. Let me know if there are more
issues.

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

Reviewers: jpeg, vtorri, cedric

Reviewed By: cedric

Maniphest Tasks: T3192

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-17 14:09:55 -08:00
Mike Blumenkrantz f85504cd6c ecore-wl2: do not send double mouse up events during input ungrab
if the ungrab is triggered from a mouse up event, this ensures that a
mouse up will be sent from the ungrab function. continuing to send a
mouse up event in addition to this will guarantee multiple mouse events
are emitted

@fix
2016-02-17 13:16:04 -05:00
Chris Michael 2be9bfc2a8 ecore-x: Add safety checks for NULL display in dpms functions
xlib immediately crashes upon being passed a NULL display object,
so every function in ecore-x should likely have safety checks such as these.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-17 08:16:29 -05:00
Daniel Kolesa 21a2a8007d eolian: strict validation for EFL (errors by default) 2016-02-17 13:00:41 +00:00
Tom Hacohen 8c1933c388 Evas image: Migrate all the remaining types to Eolian. 2016-02-17 12:24:22 +00:00
Tom Hacohen df8cbbc419 Eldbus: Move more types to eldbus_types.eot. 2016-02-17 11:59:07 +00:00
Tom Hacohen 63f717caaf Eldbus: Create eldbus_types.eot and start using it. 2016-02-17 11:30:24 +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 297fc1c42b Eldbus model arguments: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-17 10:17:59 +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 a6878fc95f Eina types: add missing extern to matrix3 type. 2016-02-17 09:58:12 +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
Tom Hacohen 65367180bf Ecore con eet: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-17 09:39:53 +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
Jean-Philippe Andre a4270b25a3 eina log: print formatted string when log domain is invalid
Before this patch, eina_log would simply record a non-formatted
entry like:
  unknown domain -1, original message format 'proxy=%p, obj=%p'

This was not very useful as even if the log domain is invalid, the
message itself might be relevant (often those are ERR logs).

Now the message format is roughly the same as the default format,
except that the line info comes from the original message (and
doesn't refer to eina_log.c).

Backtrace printing will happen at the same level as the original
log level, in order to avoid log pollution in case DBG logs are
printed with an invalid domain (and CRI would trigger bt).

I actually wonder if the logs shouldn't actually be forwarded
to the standard log callback instead of just stderr. This may
be useful for logging with dlog or journald (atm we will simply
lose all logs without a valid domain). This would mean eina_log
itself requires a log domain.
2016-02-17 16:12:35 +09: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
se.osadchy a1584c8a5d evas: Update eina_vector, add new function.
Summary: Add direction transform for eina_vector3.

Reviewers: cedric, Hermet, jpeg

Reviewed By: jpeg

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3692
2016-02-17 16:12:35 +09:00
Jean-Philippe Andre 7940a6d9a5 ector gl: Use proper PRIx64 to print a uint64_t
Thanks @vtorri for the report.
Closes D3698
2016-02-17 16:12:32 +09:00
Jean-Philippe Andre 32fedb1e6d eina: eina_array_free() now silently ignores NULL
This is a follow-up patch after 56a4535ada.
Also, remove now invalid documentation.
2016-02-17 13:40:43 +09:00
Chris Michael 5b2580b62e ecore-x: Add safety checks for NULL _ecore_x_disp in dnd functions
xlib immediately crashes upon being passed a NULL display object,
so every function in ecore-x should likely have safety checks such as
these.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-16 15:51:58 -05: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 0ef330a363 Ecore poller: Fix tests.
Very confusing, we have:
poller_poller_interval_set and poller_poll_interval_set.

Thanks to herdsman for reporting.
2016-02-16 15:43:50 +00:00
Tom Hacohen fdd2f2b6d7 Ecore audio: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-16 15:17:30 +00:00
Daniel Kolesa 2998da56e3 eolian: verbose type warnings for EFL by default 2016-02-16 15:13:02 +00:00
Tom Hacohen cbca4e3c12 Ector renderer generic: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-16 14:42:06 +00: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 fab9bd38c8 Efl gfx shape: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-16 14:25:15 +00:00
Tom Hacohen c0ba02e0ab Efl gfx gradient: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-16 14:25:03 +00:00
Tom Hacohen 2e7cab107d Efl gfx spread: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-16 14:15:45 +00:00
Tom Hacohen 4e285d6a32 Eio model: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-16 14:05:50 +00:00
Tom Hacohen 2bddf709c7 Ecore poller: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-16 14:00:46 +00:00
Tom Hacohen d114926b66 Ecore eolian: Ignore callback prototypes for now.
We don't plan on handling function pointers in Eolian.
Fixing these is work for the future, in the meanwhile, we should just work
around these.
2016-02-16 13:55:22 +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 de2d282309 Ecore con base: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-16 10:02:10 +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
Duna Oh 5ae5aade0a ecore-drm: Make ecore_drm_output_rotation_set fail properly
When trying to set a rotation on a given output, we would previously
always be returning EINA_TRUE. We should be returning EINA_FALSE when
the rotation_set fails.

@fix

Summary: ecore_drm_output_rotation_set should be returning EINA_FALSE when the output doesn't have a plane of requested type.

Test Plan:
1. call ecore_drm_output_rotation_set() with ECORE_DRM_PLANE_TYPE_CURSOR
2. If output doesn't have a plane of ECORE_DRM_PLANE_TYPE_CURSOR, the for statement does nothing. But return value is TRUE;

Reviewers: raster, stefan_schmidt, gwanglim, devilhorns, zmike

Subscribers: input.hacker, cedric, JHyun, ManMower, jpeg

Differential Revision: https://phab.enlightenment.org/D3678
2016-02-15 08:46:08 -05: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
Mike Blumenkrantz 2444e127dd eldbus: add more debug prints for proxy and signal handler 2016-02-13 11:26:03 -05:00
Mike Blumenkrantz 56a4535ada eina: accept NULL in eina_array_free() without erroring
@fix
2016-02-13 11:26:03 -05:00
perepelits.m 08bba49e70 edje: add new part handling Canvas3D types to edje_load.c
Summary: Initiation of Evas Objects and creation of nodes for new part types in Edje.

Reviewers: cedric, raster, Hermet

Subscribers: jpeg, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-12 21:25:55 +01:00
Srivardhan Hebbar b1e1186b8e ecore_con: change Ecore.Con.Client to Efl.Network.Client.
Summary: Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-12 21:25:55 +01: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
Cedric BAIL 61f7236a62 edje: fix typo affecting our 32bits signal matching code.
Big thanks to Maxim who did a serious digging in this issue making it almost
a patch review.

T3125

@fix

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 11cb01008b Ector gl renderer: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-12 14:34:10 +00:00
Tom Hacohen 3bb5b9d6b0 Efl animator: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-12 14:32:36 +00:00
Tom Hacohen 08ca3a5623 Ector gl surface: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-12 14:29:27 +00:00
Tom Hacohen b69da2f189 Ector generic surface: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-12 14:29:27 +00:00
Tom Hacohen 24bf636a3e Ector generic buffer: Fix Eolian warnings.
This includes either migrating types to eolian, fixing namespace or
importing extra types.
2016-02-12 14:29:27 +00:00
Tom Hacohen 0aabd01d13 Ector cairo: define cairo_t as extern. 2016-02-12 14:29:27 +00:00
Tom Hacohen 57cb1d8ec0 Ecore exe: Move more structs and enums to Eolian. 2016-02-12 14:29:27 +00:00
Tom Hacohen 3dd4b218da Ecore con dns: Fix eo file warnings. 2016-02-12 14:29:27 +00:00
Chris Michael 3bc6a4bedf ecore-x: Add EINA_SAFETY checks for missing display
xlib immediately crashes upon being passed a null DISPLAY object,
so every function in ecore-x should likely have safety checks such
as these.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-12 08:28:10 -05:00
Chris Michael ef13b57948 ecore-x: Add EINA_SAFETY checks for missing display
xlib immediately crashes upon being passed a null DISPLAY object,
so every function in ecore-x should likely have safety checks such
as these.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-12 08:28:10 -05:00
Chris Michael eb11b7f26e ecore-x: Add EINA_SAFETY checks for missing display
xlib immediately crashes upon being passed a null DISPLAY object,
so every function in ecore-x should likely have safety checks such
as these.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-12 08:28:10 -05: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
Chris Michael 43fa91f428 ecore-x: Fix compiler warnings about return values
This is an "oopsie" fix from my previous commit wrt adding EINA_SAFETY
checks. I made an oopsie and didn't realize that these 2 functions
were expecting int returns.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-11 11:21:50 -05:00
Chris Michael adeb28a1c0 ecore-x: Add EINA_SAFETY checks for missing display
xlib immediately crashes upon being passed a null DISPLAY object,
so every function in ecore-x should likely have safety checks such
as these.

@ref 210b3e6c62

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-11 10:12:10 -05: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
Vitor Sousa e79ee4d645 efl: fix installation and compilation of efl_types.eot.h
Summary:
Fix Efl.h include problem of the installed header "efl_types.eot.h".

Move efl_types.eot to src/lib/efl/interfaces to compile and install at
the same place of other Eolian-generated headers.

Test Plan: compile and test expedit

Reviewers: felipealmeida, stefan_schmidt, tasn, cedric, q66, JackDanielZ

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3670
2016-02-10 20:02:11 -02:00
Nicolas Aguirre 95a494c73e eeze: add case for Graphics subsystems in eeze_udev_find_by_type
Add code to detect Graphics subsystem, i.e framebuffer devices
/dev/fbX in eeze. This will be used in Ecore-Fb to detect the
framebuffers present on the system.

@feature

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
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
Daniel Kolesa 30bc1d285b eolian: allow silencing of type errors in validation
This allows generators to silence type errors in validation in order
to reduce duplicate error messages when generating multiple files.
Also adjusted the C generator to only emit type errors when generating
Eo header files.

@feature
2016-02-10 16:05:07 +00:00
Felipe Magno de Almeida 1ef076b412 efl: Have Efl.Time outside of a beta guard
Since this is a essential type, this must not be guarded by a beta
symbol guard.
2016-02-09 18:17:55 -02:00
Felipe Magno de Almeida e1de58a3ad efl: Renamed Ecore.Time to Efl.Time and defined it
Moved the Ecore.Time @extern struct to Efl lib and defined it as
specified in C specification for struct tm. Thus, bindings can be
automatically generated for where struct tm is used.
2016-02-09 13:28:25 -02:00
Vitor Sousa 0e8ce5dd23 ecore: move Ecore_Pos_Map to ecore_types.eot
Move Ecore_Pos_Map from Ecore_Common.h to ecore_types.eot.
Give it the namespaced Eolian name "Ecore_Pos_Map" to follow the
standards.

Update documentation to refer to Ecore_Pos_Map instead of its previous
enum definition "_Ecore_Pos_Map".
2016-02-09 11:38:58 -02:00
Vitor Sousa c674f64a07 ecore: create ecore_types.eot and add Ecore.Time to it
Create the file ecore_types.eot to hold common types related with Ecore.

Add Ecore.Time as an external type to ecore_types.eot.
This type is intended to be a alias to struct tm (from time.h).
That way .eo files have a standard way to reference it.
Each language should manually bind it.
2016-02-09 11:38:58 -02: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
Mike Blumenkrantz 6a93062b25 eina: invalidate last add/del rects when the opposite operation occurs
applying this optimization to prevent the same rectangle from being added
or removed repeatedly in succession would result in the rejecting of successive
operations of the same type when the other operation occurred in between.

as an example:

add(0, 0, 100, 100)
del(0, 0, 100, 100)
add(0, 0, 100, 100)

should yield (0, 0, 100, 100), not zero rects and a failure to add the
second rect

this fixes a serious issue in enlightenment where stacking three windows
on top of each other with the first and third windows having the same geometry
would result in the top window receiving no input geometry (oops)

@fix
2016-02-05 14:35:28 -05:00
Chris Michael 81d08c1db7 edje: Remove unused variables
This patch just removes some unused variables that the compiler was
warning about

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-05 08:35:04 -05:00
Tom Hacohen d4bd7d7033 Ecore con local: properly clean up fd on error.
This wasn't done correctly in the previous commit. First of all, the
order of cleanup was wrong, the cleanup area should only be called if
failures occurred after the fd allocation, not before. Also, fd should
be reinitialised to -1 once we close the socket.
2016-02-05 11:48:36 +00:00
Awadhesh Singh f05577c3ae Ecore con: Close server socket fd on failure.
Summary:
Socket fd must be closed to avoid file discripter leak.
Programs can usually only open a limited number of file descriptors,
so if this happens a lot, it may turn into a problem.

@fix

Reviewers: raster, Hermet, wonsik, spacegrapher, cedric, jpeg, tasn

Reviewed By: tasn

Subscribers: cedric, alok25, yashu21985, singh.amitesh

Differential Revision: https://phab.enlightenment.org/D3660
2016-02-05 11:44:41 +00:00
perepelits.m 9589bb0762 edje: add new part types to edje_cache
Summary: Add new part types (Mesh_Node, Camera, Light) to edje_cache

Reviewers: cedric, raster, Hermet

Subscribers: jpeg, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-05 08:19:42 +01:00
Srivardhan Hebbar fca9ff1322 ecore_con: changing Ecore.Con.Server to Efl.Network.Server.
Summary: Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-05 08:10:52 +01:00
se.osadchy b216d15fe7 eina: add eina_vector3 as static inline.
Summary: Move evas_vec3 to eina_vector3 and add documentation.

Reviewers: stefan_schmidt, jpeg, cedric

Reviewed By: cedric

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-05 08:07:45 +01:00
Jee-Yong Um 800f5d8156 edje: introduce color_tree (color_class inheritance)
Summary:
The "color_tree" block contains a list of one or more "node" blocks.
A "node" block consists of its own color class name and the list of child
color classes. At runtime, parent color class will be referred instead,
if child color class is set to part but its color values are not defined.

Reviewers: raster, Jaehyun_Cho, jpeg, cedric

Reviewed By: cedric

Subscribers: cedric, kimcinoo

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-05 07:55:49 +01:00
Cedric BAIL d1e79c7dae ecore_evas: refactorize code and make sub ecore evas exploration recusrive. 2016-02-05 06:05:30 +01:00
Cedric BAIL cf172baa9d ecore_evas: improve debugging for Ecore_Evas animator. 2016-02-05 06:05:01 +01:00
Cedric BAIL b02d34a839 edje: add back use of Ecore_Animator when the Edje object is created on an non Ecore_Evas canvas.
This is necessary for backward compatibility still I am thinking of displaying a warning for this
use case and request people to update there work and drop that feature in the future (In a year
maybe from now). Elementary doesn't need this as it depends on Ecore_Evas.
2016-02-05 06:02:29 +01: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
Chris Michael 497a287f07 This should not have been pushed. Revert
Revert "ecore-drm: Add API functions for rotation support"

This reverts commit b8ceaf0d40.
2016-02-04 09:44:45 -05:00
Chris Michael 1486c7053a This should not have been pushed. Unsure what happened here, but
revert this

Revert "ecore-drm: Add opaque type for Plane support"

This reverts commit 94082f54e8.
2016-02-04 09:44:17 -05:00
Chris Michael b8ceaf0d40 ecore-drm: Add API functions for rotation support
This adds 2 new API functions for getting supported rotations of an
output, and for setting rotation on an output

@feature

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-04 09:36:33 -05:00
Chris Michael 94082f54e8 ecore-drm: Add opaque type for Plane support
This adds an opaque structure to represent a hardware plane for use in
rotation, setting cursor/overlay/primary plane content, etc

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>

ecore-drm: Add API functions for rotation support

This adds 2 new API functions for getting supported rotations from an
output, and for setting rotation on an output.

@feature

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-04 09:35:51 -05:00
Chris Michael 3ed4b3e6fd ecore-drm: Add internal function to create planes for an output
This patch adds an internal function that we use during output
creation in order to create the planes necessary and get the supported
rotation values for an output

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-04 09:27:40 -05:00
Chris Michael 26eefa970f ecore-drm: Add API function to set rotation on an output
This patch adds an API function to allow the Screen Setup dialog in
Enlightenment to support setting rotations on an output when running
under drm

@feature

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-04 09:27:40 -05:00
Chris Michael bb774a538e ecore-drm: Add API function to get supported rotations from an output
This patch adds an API function so that we can get the supported
rotations from an output. This is needed so that the Screen Setup
dialog in Enlightenment can list the rotations supported for the user
to choose from while running using drm

@feature

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-04 09:27:38 -05:00
Chris Michael babd202d05 ecore-drm: Add opaque structure for Ecore_Drm_Plane
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-04 08:53:16 -05: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