platform/upstream/efl.git
10 years agoecore-drm: Add API function to return the drm device name
Chris Michael [Wed, 12 Mar 2014 09:26:43 +0000 (09:26 +0000)]
ecore-drm: Add API function to return the drm device name

@feature: Add new API function to return the drm device name

NB: This will be used in the ecore_evas_drm code to set the
ecore_evas->name.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoEolian: Integration of Evas Grid
Yossi Kantor [Mon, 10 Mar 2014 15:02:10 +0000 (17:02 +0200)]
Eolian: Integration of Evas Grid

10 years agoEolian: Integration of Evas
Daniel Zaoui [Wed, 12 Mar 2014 06:53:00 +0000 (08:53 +0200)]
Eolian: Integration of Evas

10 years agoEolian: Integration of Evas Object.
Daniel Zaoui [Tue, 11 Mar 2014 11:51:35 +0000 (13:51 +0200)]
Eolian: Integration of Evas Object.

const have been added in object parameter of two legacy APIs to fit
Eolian generated files.
Since these functions retrieve information from object, it is logic that
the object would be const.

10 years agoecore-evas: Predefine Ecore_X_Atom and Ecore_X_Icon
Chris Michael [Wed, 12 Mar 2014 08:41:15 +0000 (08:41 +0000)]
ecore-evas: Predefine Ecore_X_Atom and Ecore_X_Icon

@fix: Fix building Enlightenment without X support

These changes are needed so that we can build Enlightenment without X
support. Many places in the E code reference
Ecore_X_Atom/Ecore_X_Icon. If we build E without X support, these end
up being undefined, causing build to fail, so we need to predefine them.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-x: Predefine Ecore_X_Atom and Ecore_X_Icon
Chris Michael [Wed, 12 Mar 2014 08:38:00 +0000 (08:38 +0000)]
ecore-x: Predefine Ecore_X_Atom and Ecore_X_Icon

@fix: Fix building Enlightenment without X support

These changes are needed so that we can build Enlightenment without X
support. Many places in the E code reference
Ecore_X_Atom/Ecore_X_Icon. If we build E without X support, these end
up being undefined, causing build to fail, so we need to predefine them.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoEvas filters: Fix memory leak when destroying the object
Jean-Philippe Andre [Wed, 12 Mar 2014 05:06:23 +0000 (14:06 +0900)]
Evas filters: Fix memory leak when destroying the object

The GL buffers set to be freed were released only the async case...
which doesn't make sense since GL is sync.

@fix

10 years agoEvas filters: Optimize RGBA blur as well
Jean-Philippe Andre [Wed, 12 Mar 2014 04:55:44 +0000 (13:55 +0900)]
Evas filters: Optimize RGBA blur as well

Same as Alpha blur, use combination of box blurs,
and put all that code into optimizable functions.

10 years agoEvas filters: Optimize alpha box blur
Jean-Philippe Andre [Wed, 12 Mar 2014 01:20:27 +0000 (10:20 +0900)]
Evas filters: Optimize alpha box blur

Use two optimizable functions for BOX blur: vertical and horizontal.
These functions will run as many times as requested (from 1 to 6 max).

The horizontal case is pretty straightforward as the source is already
contiguous (nice in terms of cache hits). The only catch is to swap
src and dst without ever writing to the input buffer.

In case of vertical blur, we apply the same method as above, after
rotating the column into a horizontal (contiguous) span, and rotating
it back afterwards.

Now, the same needs to be done for RGBA :)

10 years agoEvas filters: Use box blur by default
Jean-Philippe Andre [Tue, 11 Mar 2014 09:21:46 +0000 (18:21 +0900)]
Evas filters: Use box blur by default

BOX blur is a lot faster (and easier to optimize, too)
than GAUSSIAN blur. Repeating 2x or 3x BOX blur will also
give similar results to GAUSSIAN blur (very smooth), but
in much less time.

Add a count parameter to the BOX blur instruction.

10 years agoEvas filters: Prepare optimization paths for BOX blur
Jean-Philippe Andre [Tue, 11 Mar 2014 07:18:41 +0000 (16:18 +0900)]
Evas filters: Prepare optimization paths for BOX blur

Actually, there is a very nice trick with BOX blur.
Pass BOX blur 3 times and you can approximate a GAUSSIAN
blur with up to 3% accuracy. This is way more than enough
for just a simple graphical effect.

So, despite the crappy quality of BOX blur, we should
optimize it a lot so we can replace large GAUSSIAN blurs
with series of BOX blurs instead.

Source: Wikipedia's page on box blur :)

This commit also moves around some duplicated definitions.

10 years agoEvas filters: Fix 1-D blurs on a single buffer
Jean-Philippe Andre [Tue, 11 Mar 2014 06:11:21 +0000 (15:11 +0900)]
Evas filters: Fix 1-D blurs on a single buffer

When a blur operation requires a copy-back to the source
buffer, then the render_op must be set to COPY instead of
BLEND. Otherwise the non blurred content will be visible.

@fix

10 years agoEvas filters: Move DEBUG_TIME macro to be used in the main file
Jean-Philippe Andre [Tue, 11 Mar 2014 05:50:11 +0000 (14:50 +0900)]
Evas filters: Move DEBUG_TIME macro to be used in the main file

Optimization can happen at a higher level than the blur function
itself... so let's measure the whole filter running time.

10 years agoEvas filters: Fix uninitialized variable warning
Jean-Philippe Andre [Tue, 11 Mar 2014 03:18:21 +0000 (12:18 +0900)]
Evas filters: Fix uninitialized variable warning

10 years agoEvas filters: Add basic optimization for RGBA gaussian blur
Jean-Philippe Andre [Tue, 11 Mar 2014 03:10:42 +0000 (12:10 +0900)]
Evas filters: Add basic optimization for RGBA gaussian blur

10 years agoEvas filters: Add optimizable blur function
Jean-Philippe Andre [Mon, 10 Mar 2014 09:36:28 +0000 (18:36 +0900)]
Evas filters: Add optimizable blur function

Prepare optimization paths for blur operations, as they are VERY
costly. This simple change, when using gcc -O3 flag, boosts
horizontal blur performance by > 50%, because STEP is 1 (and
so, memory accesses, increments, etc... are all very simple)

The objective is to have support for NEON, MMX, SSE, too, with
runtime detection.

10 years agoEvas filters: Add more time debug marks in blur
Jean-Philippe Andre [Mon, 10 Mar 2014 08:25:27 +0000 (17:25 +0900)]
Evas filters: Add more time debug marks in blur

10 years agoEvas filters: Remove dead code
Jean-Philippe Andre [Mon, 10 Mar 2014 07:46:14 +0000 (16:46 +0900)]
Evas filters: Remove dead code

Remove true Gaussian kernel code, as it is not usable over 12px and
was disabled because it gives different visual results than the
fake Gaussian curve using sin().

10 years agoEvas filters: Improve debug logs
Jean-Philippe Andre [Mon, 10 Mar 2014 07:05:55 +0000 (16:05 +0900)]
Evas filters: Improve debug logs

According to Gustavo's comment :)

10 years agomailmap: Add myself and unify my email addresses
Jean-Philippe Andre [Mon, 10 Mar 2014 05:53:46 +0000 (14:53 +0900)]
mailmap: Add myself and unify my email addresses

I didn't set up my personal laptop with my work email :)

10 years agoevas: @fix use the correct composite op on lines with pixman
Boris Faure [Mon, 3 Feb 2014 21:06:37 +0000 (22:06 +0100)]
evas: @fix use the correct composite op on lines with pixman

10 years agoEo: removed redundant macro.
Tom Hacohen [Tue, 11 Mar 2014 15:58:43 +0000 (15:58 +0000)]
Eo: removed redundant macro.

10 years agoEo: Made eo id for classes a bit more secure.
Tom Hacohen [Tue, 11 Mar 2014 15:50:44 +0000 (15:50 +0000)]
Eo: Made eo id for classes a bit more secure.

This patch sets the one before most significant bit on for classes. This
means that class ids are now very big, compared to the old ids which
were growing small integers (1, 2, 3...).
This makes accidental passing of integers (corrupted obj pointers) less
common.

@feature

10 years agoEolian/Generator: fix generation for return values.
Daniel Zaoui [Tue, 11 Mar 2014 13:17:12 +0000 (15:17 +0200)]
Eolian/Generator: fix generation for return values.

- Remove space between type and variable if a star is present.
- Initialize return value to NULL before eo_do. It is needed in case the
eo_do invocation fails (NULL object...).
- Add const to the internal return value if needed.

10 years agoEolian/Generator: fix type when no data type exists.
Daniel Zaoui [Tue, 11 Mar 2014 12:00:44 +0000 (14:00 +0200)]
Eolian/Generator: fix type when no data type exists.

When data is set as "null", the generator was writing for this data
variable "void * *_pd" instead of "void *_pd".

10 years agoEolian/Lexer: support of legacy overriding for properties.
Daniel Zaoui [Tue, 11 Mar 2014 12:02:31 +0000 (14:02 +0200)]
Eolian/Lexer: support of legacy overriding for properties.

10 years agoEolian/Generator: fix for virtual pure implementations
Daniel Zaoui [Tue, 11 Mar 2014 12:02:03 +0000 (14:02 +0200)]
Eolian/Generator: fix for virtual pure implementations

10 years agoChangeLog: Put notice at the top for efl.
Stefan Schmidt [Tue, 11 Mar 2014 12:58:11 +0000 (13:58 +0100)]
ChangeLog: Put notice at the top for efl.

For reasons that are beyond me we have a different order for the ChangeLog
in EFL compared to the other repos. But its gone now anyway no need to feel
bad about it.

+1 karma for TAsn to point it out -1 karma for TAsn to force his name into
commit messages.

10 years agoeolian: regroup buffer allocation and read checks
Jérémy Zurcher [Tue, 11 Mar 2014 13:00:20 +0000 (14:00 +0100)]
eolian: regroup buffer allocation and read checks

10 years agoeolian: silence uninitialized var warning
Jérémy Zurcher [Tue, 11 Mar 2014 10:59:13 +0000 (11:59 +0100)]
eolian: silence uninitialized var warning

10 years agoChangeLog: Add forgetten out of date notice
Stefan Schmidt [Tue, 11 Mar 2014 12:41:55 +0000 (13:41 +0100)]
ChangeLog: Add forgetten out of date notice

I only added it to some of our repos but not all. Adding it now to make
it clear for people that this file is now longer updated

10 years agoevas/font: Added evas_font_path_global_* APIs.
Youngbok Shin [Tue, 11 Mar 2014 11:15:55 +0000 (11:15 +0000)]
evas/font: Added evas_font_path_global_* APIs.

Summary:
These APIs will be used for adding font paths for the application.
The existing APIs for font path, such as evas_font_path_append,
are used for adding font paths to the given evas.
But, these APIs will affect to every evas in the process.

Reviewers: tasn, woohyun, Hermet, seoz

CC: cedric, herdsman
Differential Revision: https://phab.enlightenment.org/D621

@feature

10 years agoEolian: Ship pc file.
Tom Hacohen [Tue, 11 Mar 2014 10:03:30 +0000 (10:03 +0000)]
Eolian: Ship pc file.

10 years agoEolian/Lexer: fix EOF issue.
Daniel Zaoui [Tue, 11 Mar 2014 08:05:02 +0000 (10:05 +0200)]
Eolian/Lexer: fix EOF issue.

When a new line was added before the last } in a .eo file, the parsing
was resulting in an error. It was due to the fact that some pointer
indicating the eof was not set when the parsing was done from memory.

10 years agoecore-drm: Add code to handle mouse input
Chris Michael [Tue, 11 Mar 2014 08:41:42 +0000 (08:41 +0000)]
ecore-drm: Add code to handle mouse input

@feature: Add support in ecore-drm for handling mouse movement, wheel,
and buttons.

This adds code to pass mouse events from linux input to ecore by
raising ecore_events (ecore_event_add).

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add private structure to store mouse information in evdev
Chris Michael [Tue, 11 Mar 2014 08:41:08 +0000 (08:41 +0000)]
ecore-drm: Add private structure to store mouse information in evdev

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoevas: Replace EINA_LIST_FOREACH_SAFE to while statement.
WooHyun Jung [Tue, 11 Mar 2014 07:34:56 +0000 (16:34 +0900)]
evas: Replace EINA_LIST_FOREACH_SAFE to while statement.

Clipees can be cleared before the loop is finished because
evas_object_clip_unset calls smart function of clip_unset.
So, if we use EINA_LIST_FOREACH_SAFE, invalid next list pointer
can be kept and read after obj->clip.clipees is freed.

Thanks to Davide Andreoli for reporting.

@fix

10 years agoEolian: Integration of Evas Table
Yossi Kantor [Mon, 10 Mar 2014 12:13:06 +0000 (14:13 +0200)]
Eolian: Integration of Evas Table

10 years agoEolian: Integration of Evas Smart Clipped
Daniel Zaoui [Mon, 10 Mar 2014 15:06:46 +0000 (17:06 +0200)]
Eolian: Integration of Evas Smart Clipped

10 years agoEolian: Support of unsigned short as int in va_arg
Yossi Kantor [Mon, 10 Mar 2014 11:35:11 +0000 (13:35 +0200)]
Eolian: Support of unsigned short as int in va_arg

10 years agoEolian: Integration of Evas Smart
Daniel Zaoui [Mon, 10 Mar 2014 09:55:22 +0000 (11:55 +0200)]
Eolian: Integration of Evas Smart

10 years agoeina-cxx: Fixes compilation errors and warnings in clang
Felipe Magno de Almeida [Tue, 11 Mar 2014 01:07:17 +0000 (10:07 +0900)]
eina-cxx: Fixes compilation errors and warnings in clang

Summary: @fix compilation errors with defining variable and type on the same statement on clang without a default-constructor. Also removed warnings with inconsistent uses of struct/class for forward declaration and unused parameters.

Reviewers: cedric, stefan_schmidt

CC: savio, cedric
Differential Revision: https://phab.enlightenment.org/D622

10 years agoeolian: generate eo_lexer.c with ragel if available
Jérémy Zurcher [Mon, 10 Mar 2014 17:14:16 +0000 (18:14 +0100)]
eolian: generate eo_lexer.c with ragel if available

10 years agoEina Log: Fixed ABI break introduce by the addition of 'color'.
Tom Hacohen [Mon, 10 Mar 2014 16:50:03 +0000 (16:50 +0000)]
Eina Log: Fixed ABI break introduce by the addition of 'color'.

ABI break was introduced here 5913ce7ec87beb267d2d02846e5267eae08ef860

Always add new members at the end of public structures.

10 years agoEvas font: Don't add canvas specific path to the global fontconfig path list.
Tom Hacohen [Mon, 10 Mar 2014 16:15:28 +0000 (16:15 +0000)]
Evas font: Don't add canvas specific path to the global fontconfig path list.

This will come back when D621 gets in (which implements it correctly).

10 years agoEolian: fix for nightly make distcheck.
Daniel Zaoui [Mon, 10 Mar 2014 14:46:45 +0000 (16:46 +0200)]
Eolian: fix for nightly make distcheck.

Hmm, I forgot to add some .eo files to the EXTRA_DIST so they have not been
added inside the archive.
Eolian couldn't generate C files because of these missing files.

10 years agoEvas textblock: Fix clipping issues with some texts with width > advance.
Tom Hacohen [Thu, 27 Feb 2014 10:39:52 +0000 (10:39 +0000)]
Evas textblock: Fix clipping issues with some texts with width > advance.

This happens with many texts. The issue occurs when the width of the
last char is larger than it's advance. Before this patch, we didn't the
width into account when calculating width, thus causing clipping issues
in some cases.

10 years agoecore-evas-wayland: Remove unused function & declaration
Chris Michael [Mon, 10 Mar 2014 13:58:20 +0000 (13:58 +0000)]
ecore-evas-wayland: Remove unused function & declaration

Remove unused function and it's declaration. This function is not
being called from anywhere anymore, so it's no longer needed.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Reset modifiers to zero before updating them on keypress
Chris Michael [Mon, 10 Mar 2014 13:44:29 +0000 (13:44 +0000)]
ecore-drm: Reset modifiers to zero before updating them on keypress

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Remove FIXME comment
Chris Michael [Mon, 10 Mar 2014 13:38:01 +0000 (13:38 +0000)]
ecore-drm: Remove FIXME comment

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add code to handle modifiers in a key event
Chris Michael [Mon, 10 Mar 2014 13:32:20 +0000 (13:32 +0000)]
ecore-drm: Add code to handle modifiers in a key event

@feature: Add handling of modifiers in a drm key event

This adds code to deal with modifiers being pressed/released during a
key event and pass those along to the ecore_event structure

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add private xkb fields for depressed, latched, locked, and
Chris Michael [Mon, 10 Mar 2014 13:31:18 +0000 (13:31 +0000)]
ecore-drm: Add private xkb fields for depressed, latched, locked, and
group

This adds fields to the xkb structure for storing when modifiers are
pressed, released, etc so we can handle those in key events.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoedje - allow lager clipper space.
ChunEon Park [Mon, 10 Mar 2014 13:22:42 +0000 (22:22 +0900)]
edje - allow lager clipper space.

In acutal case, some application encounted that a proxy object is larger than a source clipper size.
So the proxy is clipped by the edje clipper.
We don't have to limit the clipper size to 10000x10000

@fix

10 years agoEolian/Generator: support NULL pointers for return values.
Daniel Zaoui [Mon, 10 Mar 2014 11:19:24 +0000 (13:19 +0200)]
Eolian/Generator: support NULL pointers for return values.

When an Eo operation returns a value, this one is stored in the last
parameter as an out parameter.
In case the caller doesn't set a pointer there, the storing will be done
in a NULL pointer and will bring to a segfault.

The generator has been modified to handle this case. Now, if the ret
pointer is NULL, the value will not be returned.

10 years agoEolian: add support of eo_prefix and data.
Daniel Zaoui [Mon, 10 Mar 2014 09:52:46 +0000 (11:52 +0200)]
Eolian: add support of eo_prefix and data.

You can add in the .eo file the eo_prefix:... and data:... in case
you want to override respectively the Eo prefix and the data type.
If "data: null" is used, no data type will be added.

10 years agoecore-evas-drm: Set window to receive input events
Chris Michael [Mon, 10 Mar 2014 12:38:51 +0000 (12:38 +0000)]
ecore-evas-drm: Set window to receive input events

After we have setup ecore-drm, we need to tell it where to send any
input events, so call the ecore-drm API function to set the window.
Also feed mouse_in to the canvas after creation, so that it gets focus.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Set the window of the Ecore_Event_Key structure
Chris Michael [Mon, 10 Mar 2014 12:36:53 +0000 (12:36 +0000)]
ecore-drm: Set the window of the Ecore_Event_Key structure

@feature: Add keyboard event processing for ecore-drm

When we get a key event from evdev and create an Ecore_Event_Key to
pass along, we need to set the window where this event occured.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add API function to set the window we should send events
Chris Michael [Mon, 10 Mar 2014 12:36:21 +0000 (12:36 +0000)]
ecore-drm: Add API function to set the window we should send events
too.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add private window field to drm device structure
Chris Michael [Mon, 10 Mar 2014 12:35:50 +0000 (12:35 +0000)]
ecore-drm: Add private window field to drm device structure

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoevas-drm: Remove private framebuffer
Chris Michael [Mon, 10 Mar 2014 10:51:48 +0000 (10:51 +0000)]
evas-drm: Remove private framebuffer

We don't need to store the framebuffer of the Outbuf as it's only used
once to set resolution.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoevas-drm: Remove private framebuffer field from Outbuf structure
Chris Michael [Mon, 10 Mar 2014 10:51:21 +0000 (10:51 +0000)]
evas-drm: Remove private framebuffer field from Outbuf structure

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-evas-drm: Add initial code to make ecore_evas render using drm
Chris Michael [Mon, 10 Mar 2014 10:02:31 +0000 (10:02 +0000)]
ecore-evas-drm: Add initial code to make ecore_evas render using drm

NB: This is still a work-in-progress and not complete yet

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add code pass along key events to ecore_event
Chris Michael [Mon, 10 Mar 2014 09:56:50 +0000 (09:56 +0000)]
ecore-drm: Add code pass along key events to ecore_event

@feature: Add keyboard input handling to ecore-drm library

This adds code to ecore_drm library to process keyboard events and
pass them to ecore_event so that ecore_evas can receive keyboard input

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Create xkb context on device open
Chris Michael [Mon, 10 Mar 2014 09:56:24 +0000 (09:56 +0000)]
ecore-drm: Create xkb context on device open

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add xkb fields to Evdev structure
Chris Michael [Mon, 10 Mar 2014 09:56:00 +0000 (09:56 +0000)]
ecore-drm: Add xkb fields to Evdev structure

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add xkbcontext to device structure
Chris Michael [Mon, 10 Mar 2014 08:38:21 +0000 (08:38 +0000)]
ecore-drm: Add xkbcontext to device structure

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add xkbcommon header
Chris Michael [Mon, 10 Mar 2014 08:32:49 +0000 (08:32 +0000)]
ecore-drm: Add xkbcommon header

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add dependency on xkbcommon
Chris Michael [Mon, 10 Mar 2014 08:30:21 +0000 (08:30 +0000)]
ecore-drm: Add dependency on xkbcommon

@feature: Add xkbcommon as a dependency for ecore_drm so we can
process input keys

In order for keyboard input to work for ecore_evas_drm, we will need
to translate keypress events into meaningful key names, so require
xkbcommon to deal with the translation.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Initialize ecore_event on ecore_drm_init
Chris Michael [Mon, 10 Mar 2014 08:26:53 +0000 (08:26 +0000)]
ecore-drm: Initialize ecore_event on ecore_drm_init

@bugfix: Initialize ecore_event on ecore_drm_init

We need to make sure ecore_event_init has been called so we can
process events for ecore_evas.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add API function to return the vt fd
Chris Michael [Mon, 10 Mar 2014 08:24:08 +0000 (08:24 +0000)]
ecore-drm: Add API function to return the vt fd

@feature: Added API function to return the file descriptor from the
opened virtual terminal.

This is needed for use in ecore_evas. When it sets up the canvas, we
pass this fd to the canvas for use in setting up the vt framebuffers

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoEolian: Integration of Evas Text Grid
Daniel Zaoui [Sun, 9 Mar 2014 12:21:41 +0000 (14:21 +0200)]
Eolian: Integration of Evas Text Grid

10 years agoEolian: Integration of Evas Text Block
Daniel Zaoui [Sun, 9 Mar 2014 11:37:01 +0000 (13:37 +0200)]
Eolian: Integration of Evas Text Block

10 years agoEolian/Generator: fix for legacy function name overriding.
Daniel Zaoui [Sun, 9 Mar 2014 12:07:39 +0000 (14:07 +0200)]
Eolian/Generator: fix for legacy function name overriding.

When legacy is specified in the .eo file, the generator was adding the
property/method name after the legacy name.
So if you have 'legacy evas_object_textblock_clear_all' for clear method,
it was adding the function evas_object_textblock_clear_all_clear.

10 years agoEvas map: fixed shadow warnings.
Tom Hacohen [Mon, 10 Mar 2014 09:25:21 +0000 (09:25 +0000)]
Evas map: fixed shadow warnings.

evas_map_image_loop is included from within code, so local variables
should not shadow other local variables. I just gave them a more
unique name.

10 years agoevas-fb: Fix broken build of efl
Chris Michael [Mon, 10 Mar 2014 07:20:26 +0000 (07:20 +0000)]
evas-fb: Fix broken build of efl

@bugfix: structure fb_var_screeninfo does not have a colorspace field
defined in linux/fb.h, so (for now) comment out code which was
referencing that field. Not sure what the intent was here, but build
was broken because of this.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoeina-cxx: Added malloc_clone_allocator to use with POD's when wrapping Eina C structures
Felipe Magno de Almeida [Mon, 10 Mar 2014 03:25:42 +0000 (12:25 +0900)]
eina-cxx: Added malloc_clone_allocator to use with POD's when wrapping Eina C structures

Summary:
Added efl::eina::malloc_clone_allocator to be used with ptr_* data
structures for wrapping structures allocated by EFL in C.

This allows for example:

  void foo(Eina_List* l)
  {
    efl::eina::ptr_list<int, efl::eina::malloc_clone_allocator> list(l);
  }

If the standard efl::eina::heap_no_clone_allocator is used, the
deallocation code uses C++ delete operator, which causes undefined
behavior because the allocation was originally done with malloc.

Reviewers: cedric

CC: savio, cedric
Differential Revision: https://phab.enlightenment.org/D614

10 years agoeina-cxx: Added eina_log support for C++, using IOStreams syntax
Felipe Magno de Almeida [Mon, 10 Mar 2014 03:25:20 +0000 (12:25 +0900)]
eina-cxx: Added eina_log support for C++, using IOStreams syntax

Summary:
Added eina_log support for C++ using the following macros:

For logging into a domain:

EINA_CXX_DOM_LOG
EINA_CXX_DOM_LOG_CRIT
EINA_CXX_DOM_LOG_ERR
EINA_CXX_DOM_LOG_INFO
EINA_CXX_DOM_LOG_DBG
EINA_CXX_DOM_LOG_WARN

And for logging into the default domain:

EINA_CXX_LOG
EINA_CXX_LOG_CRIT
EINA_CXX_LOG_ERR
EINA_CXX_LOG_INFO
EINA_CXX_LOG_DBG
EINA_CXX_LOG_WARN

The usage is simple as can be seen in the tests:

  efl::eina::log_domain domain("error_domain_name");
  domain.set_level(efl::eina::log_level::critical);
  EINA_CXX_DOM_LOG_CRIT(domain, "something went wrong with the following error: " << error);

@feature

Reviewers: cedric

CC: raster, savio, cedric, sanjeev
Differential Revision: https://phab.enlightenment.org/D605

10 years agoeina-cxx: Added range types for containers
Felipe Magno de Almeida [Mon, 10 Mar 2014 03:24:29 +0000 (12:24 +0900)]
eina-cxx: Added range types for containers

Summary:
Added inarray, inlist, ptr_array and ptr_list's range types named: range_inarray, range_inlist, range_ptr_array and range_ptr_list.

Each has two "flavours": mutable and not mutable. The const versions are parameterized by a const parameter. For example: range_ptr_list<int const> and the mutable doesn't have the const, so: range_ptr_list<int>.

The difference between the two is that the const versions can't modify the elements from the sequence, while the mutable allows so. Also, the const receives a Eina_Array const* while the mutable must have a Eina_Array*.

Reviewers: cedric

CC: savio, cedric
Differential Revision: https://phab.enlightenment.org/D613

10 years agoconfigure alerts: be smarter regarding dbus and cover systemd.
Gustavo Sverzut Barbieri [Mon, 10 Mar 2014 02:58:05 +0000 (23:58 -0300)]
configure alerts: be smarter regarding dbus and cover systemd.

Some people (I'm one of them) will do user-local builds of EFL and
don't want to install services in /usr, or provide links, rather
choosing to install in ~/.local/share/dbus-1. Then figure out this
case and do not show an alert when the setup is ready.

As we mention $XDG_DATA_DIRS in our alert, we should not do the alert
when the user follows its recommendation. This is now checked.

And handle systemd services if they are used.

10 years agolink dbus and systemd services, allows systemd activation.
Gustavo Sverzut Barbieri [Mon, 10 Mar 2014 02:55:42 +0000 (23:55 -0300)]
link dbus and systemd services, allows systemd activation.

If the dbus service contains SystemdService entry and the dbus-daemon
is started with --systemd-activation, then requests for services on
the user session bus will be handled by systemd, creating cgroups and
being handled as native systemd services of Type=dbus.

10 years agoEolian/Generator: more fixes related to stars to add to params.
Daniel Zaoui [Sun, 9 Mar 2014 10:08:23 +0000 (12:08 +0200)]
Eolian/Generator: more fixes related to stars to add to params.

10 years agoEolian/Lexer: error handling
Daniel Zaoui [Sun, 9 Mar 2014 10:02:46 +0000 (12:02 +0200)]
Eolian/Lexer: error handling

Print and return error if no class has been parsed in the given file.

10 years agoEolian: Fix path to .eo
Daniel Zaoui [Sun, 9 Mar 2014 09:56:42 +0000 (11:56 +0200)]
Eolian: Fix path to .eo

10 years agoEolian: Integration of Evas Text
Daniel Zaoui [Sun, 9 Mar 2014 08:31:28 +0000 (10:31 +0200)]
Eolian: Integration of Evas Text

10 years agoEolian: Integration of Evas Rectangle
Daniel Zaoui [Sun, 9 Mar 2014 08:20:52 +0000 (10:20 +0200)]
Eolian: Integration of Evas Rectangle

10 years agoEolian: Integration of Evas Polygon
Daniel Zaoui [Sun, 9 Mar 2014 08:09:19 +0000 (10:09 +0200)]
Eolian: Integration of Evas Polygon

10 years agoFix build break because of evas_object_line_class_get
Ryuan Choi [Sun, 9 Mar 2014 00:12:25 +0000 (09:12 +0900)]
Fix build break because of evas_object_line_class_get

Added edje into internal dependencies for ethumb_client.

I got below error.
/usr/elocal/lib/libedje.so.1: undefined reference to `evas_object_line_class_get'
collect2: error: ld returned 1 exit status
make[4]: *** [bin/ethumb_client/ethumbd] Error 1
make[4]: *** Waiting for unfinished jobs....

10 years agoupdate .mailmap
Boris Faure [Sat, 8 Mar 2014 14:38:10 +0000 (15:38 +0100)]
update .mailmap

10 years agoEet vieet: Fixed to work on non-bash compat shells.
Tom Hacohen [Sat, 8 Mar 2014 10:55:37 +0000 (10:55 +0000)]
Eet vieet: Fixed to work on non-bash compat shells.

Thanks to Davide Andreoli for reporting and suggesting fixes.

10 years agoEolian: fix warnings
Daniel Zaoui [Fri, 7 Mar 2014 16:02:44 +0000 (18:02 +0200)]
Eolian: fix warnings

10 years agoEolian: Fixes into generated files.
Daniel Zaoui [Fri, 7 Mar 2014 15:37:05 +0000 (17:37 +0200)]
Eolian: Fixes into generated files.

- Added Doxygen description to parameters and return
- Added default description for parameters
- Return type needs to be after all the other parameters
- Better handling of stars for pointers: try to figure if a space is
needed between the type and the variable (e.g int *a / int a)

10 years agoEolian: Coverity fixes
Daniel Zaoui [Fri, 7 Mar 2014 08:43:56 +0000 (10:43 +0200)]
Eolian: Coverity fixes

10 years agoEolian/Lexer: parse from memory
Daniel Zaoui [Thu, 6 Mar 2014 09:18:20 +0000 (11:18 +0200)]
Eolian/Lexer: parse from memory

10 years agoEet: Added vieet a tool to edit eet files.
Tom Hacohen [Fri, 7 Mar 2014 15:11:30 +0000 (15:11 +0000)]
Eet: Added vieet a tool to edit eet files.

This tool lets you just open an eet file for editing directly,
by wrapping around 'eet' and the preferred editor defined in the env var
'EDITOR'.

@feature

10 years agoEvas line: Don't include generated headers in make dist.
Tom Hacohen [Fri, 7 Mar 2014 13:29:13 +0000 (13:29 +0000)]
Evas line: Don't include generated headers in make dist.

This fixes make distcheck.

10 years agoEolian Helper file: Fixed generation of legacy headers.
Tom Hacohen [Fri, 7 Mar 2014 12:11:24 +0000 (12:11 +0000)]
Eolian Helper file: Fixed generation of legacy headers.

10 years agoEolian gen: Have a more useful error message when failing to write file.
Tom Hacohen [Fri, 7 Mar 2014 12:01:52 +0000 (12:01 +0000)]
Eolian gen: Have a more useful error message when failing to write file.

10 years agoEvas line: Fix out of source builds.
Tom Hacohen [Fri, 7 Mar 2014 09:50:13 +0000 (09:50 +0000)]
Evas line: Fix out of source builds.

The build system only adds top lib dir to include path, so we have to
specifically put the path there.

This should probably be fixed, so we can drop the canvas dir prefix in
our includes altogether, but until then, this is needed.

10 years agoEvas filters: Use GL_FRAMEBUFFER instead of GL_READ_FRAMEBUFFER
Jean-Philippe Andre [Fri, 7 Mar 2014 08:45:16 +0000 (17:45 +0900)]
Evas filters: Use GL_FRAMEBUFFER instead of GL_READ_FRAMEBUFFER

GL_READ_FRAMEBUFFER isn't defined when compiling for Wayland
Thanks Stefan for the report.

Also, import GL_FRAMEBUFFER overrides from other GL files, so
that it points to the proper extension (_OES or _EXT if applicable).

10 years agoefl/eo: Fix Doxygen markup to prevent a warning
Jeff Grimshaw [Fri, 7 Mar 2014 08:00:03 +0000 (17:00 +0900)]
efl/eo:  Fix Doxygen markup to prevent a warning

Summary:
The closing @} for the main Eo group is inside the #ifdef
EFL_BETA_API_SUPPORT block, so it gets removed by the preprocessor
unless the project is configured with EFL_BETA_API_SUPPORT.  Moved the
@} outside the #ifdef so it will always be there and Doxygen won't
complain.

Test Plan: make doc 2> doxyerr.log

Reviewers: raster

Reviewed By: raster

CC: cedric
Differential Revision: https://phab.enlightenment.org/D609