platform/upstream/efl.git
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

10 years agoeio: check if we need to wake up thread when the memory limit is changed.
Cedric BAIL [Fri, 7 Mar 2014 07:49:14 +0000 (16:49 +0900)]
eio: check if we need to wake up thread when the memory limit is changed.

10 years agoedje: do not leak in case of error.
Cedric BAIL [Fri, 7 Mar 2014 06:01:36 +0000 (15:01 +0900)]
edje: do not leak in case of error.

@fix CID 1191310 and CID 1191311

10 years agoedje/entry: fix to not emit "changed" signal in unnecessary cases of password mode.
Youngbok Shin [Fri, 7 Mar 2014 05:42:49 +0000 (14:42 +0900)]
edje/entry: fix to not emit "changed" signal in unnecessary cases of password mode.

Summary:
When text is hidden by password character, "changed" signal should be emitted.
But, even if there is no visible text, the signal was emitted.

@fix

Reviewers: woohyun, tasn, cedric

Reviewed By: cedric

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

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
10 years agoecore-cxx: add support for exceptions.
Felipe Magno de Almeida [Fri, 7 Mar 2014 05:33:07 +0000 (14:33 +0900)]
ecore-cxx: add support for exceptions.

Summary:
Added support for exceptions on ecore_main_loop_thread_safe_call_async and
ecore_main_loop_thread_safe_call_sync. Also optimized the transport of the
return value through a parameter on ecore_main_loop_thread_safe_call_sync.

ecore-cxx: Changed uses of alignas for aligned_storage in C++11

Reviewers: cedric, raster

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

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
10 years agoeina-cxx: renamed efl::eina::eina_value to efl::eina::value
Felipe Magno de Almeida [Fri, 7 Mar 2014 05:19:10 +0000 (14:19 +0900)]
eina-cxx: renamed efl::eina::eina_value to efl::eina::value

Reviewers: cedric

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

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
10 years agoeina: Fix bug in eina_convert_itoa
Sylvain Laperche [Fri, 7 Mar 2014 02:58:36 +0000 (10:58 +0800)]
eina: Fix bug in eina_convert_itoa

The current implementation of eina_convert_itoa cannot convert INT_MIN.

When the input number is negative, the function negates it and this is
an undefined behavior for INT_MIN since -INT_MIN cannot be represented
in a signed int.

@fix T1062

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
10 years agoeina: indent test to up to date standard.
Cedric BAIL [Fri, 7 Mar 2014 02:26:33 +0000 (11:26 +0900)]
eina: indent test to up to date standard.

10 years agoevas/fb: use stride instead of width.
Gustavo Sverzut Barbieri [Fri, 7 Mar 2014 04:52:11 +0000 (01:52 -0300)]
evas/fb: use stride instead of width.

While most framebuffes use stride = width, some may have stride bigger
than width to provide better alignment. Then we must always use stride.

Thanks to Arjan van de Ven, the one that spotted the issue.

@fix

10 years agoEvas: Reduce verbosity of alpha functions
Jean-Philippe Andre [Fri, 7 Mar 2014 02:00:26 +0000 (11:00 +0900)]
Evas: Reduce verbosity of alpha functions

And remove commented-out code.

10 years agoEvas filters: Reduce verbosity (INF --> DBG)
Jean-Philippe Andre [Fri, 7 Mar 2014 01:59:54 +0000 (10:59 +0900)]
Evas filters: Reduce verbosity (INF --> DBG)

10 years agoEvas filters: Improve detection of the GL engine
Jean-Philippe Andre [Fri, 7 Mar 2014 01:32:47 +0000 (10:32 +0900)]
Evas filters: Improve detection of the GL engine

According to cedric's horrified comment :)

And add a comment in the code. Yes, this IS a temporary solution,
but the GL engineS being what they are (tons of duplicated code),
I think it's still better for now to just make things work.

10 years agoEvas filters: Complete GL support with scaling function
Jean-Philippe Andre [Thu, 6 Mar 2014 09:28:46 +0000 (18:28 +0900)]
Evas filters: Complete GL support with scaling function

Directly use the scale functions from scalecache when
running the GL engine.

With this, and glReadPixels support, the GL engine support is now
100% complete. It will be DAMN SLOW, but ALL filters should work
in both OpenGL and Software rendering.

10 years agoEvas filters: Implement proxy rendering for GL
Jean-Philippe Andre [Fri, 7 Mar 2014 00:36:16 +0000 (09:36 +0900)]
Evas filters: Implement proxy rendering for GL

Make use of glReadPixel to access the source's pixel data.
Use all classic CPU functions to blend and use that data.
Save pointer to the GL image and update it with the latest data
during target render.

Use ENFN's surface_lock, read_pixels, unlock.

Also, add some more error checks to make sure the images are valid,
or return an error at runtime.

10 years agoEvas filters: Allow image copy with the GL engine
Jean-Philippe Andre [Thu, 6 Mar 2014 08:52:57 +0000 (17:52 +0900)]
Evas filters: Allow image copy with the GL engine

For now, this simply uses memcpy.
The SW engine equivalent uses image_draw, which wouldn't work
under the GL engine.

10 years agoEvas gl_x11: Add support for glReadPixels
Jean-Philippe Andre [Thu, 6 Mar 2014 08:42:24 +0000 (17:42 +0900)]
Evas gl_x11: Add support for glReadPixels

This will be needed by the filters for proxy rendering,
for textures and maps (displacement).

Add new engine functions to unleash the (sluggish) power of glReadPixels.
The idea is to be able to bypass glReadPixels later, so 3 new APIs are
added:
- surface_lock
- surface_read_pixels
- surface_unlock
They must be called in that order.

Note (for history):
glReadPixels was always getting the wrong data during first draw,
but the right data during a redraw...
Why? Well simply because for OpenGL itself, the image had never
been drawn in teh first place! Only the Evas GL context knew
about the image drawing, as it was queued somewhere in the pipe.

One line solution: Call evas_gl_common_context_flush before
doing anything else.

10 years agoEvas filters: Minor change (type is void*)
Jean-Philippe Andre [Wed, 5 Mar 2014 09:04:35 +0000 (18:04 +0900)]
Evas filters: Minor change (type is void*)

10 years agogit: ignore generated file.
Cedric BAIL [Fri, 7 Mar 2014 00:36:52 +0000 (09:36 +0900)]
git: ignore generated file.

10 years agoevas: let's still compile when we have no hw accel for DRM.
Cedric BAIL [Fri, 7 Mar 2014 00:35:16 +0000 (09:35 +0900)]
evas: let's still compile when we have no hw accel for DRM.

10 years agoecore-drm: Add ecore-drm.pc to gitignore
Chris Michael [Thu, 6 Mar 2014 14:46:46 +0000 (14:46 +0000)]
ecore-drm: Add ecore-drm.pc to gitignore

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoevas/fb: implement evas_fb_outbuf_fb_reconfigure()
Gustavo Sverzut Barbieri [Thu, 6 Mar 2014 14:17:30 +0000 (11:17 -0300)]
evas/fb: implement evas_fb_outbuf_fb_reconfigure()

refactor code used in evas_fb_outbuf_fb_setup_fb() so it can be used
in evas_fb_outbuf_fb_reconfigure().

10 years agoevas/fb: use a copy of fb_var since ioctl() modifies it and we consider it const
Gustavo Sverzut Barbieri [Thu, 6 Mar 2014 14:16:27 +0000 (11:16 -0300)]
evas/fb: use a copy of fb_var since ioctl() modifies it and we consider it const

10 years agoevas/fb: make sure FB_Mode attributes are zeroed.
Gustavo Sverzut Barbieri [Thu, 6 Mar 2014 14:15:05 +0000 (11:15 -0300)]
evas/fb: make sure FB_Mode attributes are zeroed.

We may read only geometry or timings, then make sure memory is fully
zeroed by doing a memset on the new array item.

10 years agoecore_fb: @fix use of uninitialized values reported by valgrind.
Gustavo Sverzut Barbieri [Thu, 6 Mar 2014 14:12:44 +0000 (11:12 -0300)]
ecore_fb: @fix use of uninitialized values reported by valgrind.

10 years agoevas/fb: extensive logs to help solve bugs.
Gustavo Sverzut Barbieri [Thu, 6 Mar 2014 05:18:55 +0000 (02:18 -0300)]
evas/fb: extensive logs to help solve bugs.

FrameBuffer can be tricky with all combinations and it's hard to tell
users to send useful information, then print the information we use so
we can get useful bug reports.

10 years agoevas/fb: expose and call fb_freemode() and fb_cleanup()
Gustavo Sverzut Barbieri [Thu, 6 Mar 2014 05:16:03 +0000 (02:16 -0300)]
evas/fb: expose and call fb_freemode() and fb_cleanup()

properly clean memory and restore framebuffer on error conditions.

@fix

10 years agoevas/fb: handle fds using -1 for unset/error.
Gustavo Sverzut Barbieri [Thu, 6 Mar 2014 05:09:44 +0000 (02:09 -0300)]
evas/fb: handle fds using -1 for unset/error.

clean evas_fb_main.c so it returns -1 to indicate invalid fds, same as
open() and what is written in evas_fb.h example.

call fb_cleanup() in all error conditions and always return -1 in
fb_postinit() if we did call fb_cleanup().

10 years agoevas: @fix convert to 24bits so dst_jump is used properly.
Gustavo Sverzut Barbieri [Thu, 6 Mar 2014 04:08:44 +0000 (01:08 -0300)]
evas: @fix convert to 24bits so dst_jump is used properly.

in all other convert functions, dst_jump is provided in pixesl and
multiplied by the number of bytes-per-pixel either explicitly or
implicitly by using a different type for dst pointer (DATA16,
DATA32...).

As in 24 bits we use DATA8 we must explicitly multiply dst_jump by 3.

10 years agoevas/fb: avoid crashing it outbuf setup failed.
Gustavo Sverzut Barbieri [Thu, 6 Mar 2014 03:53:08 +0000 (00:53 -0300)]
evas/fb: avoid crashing it outbuf setup failed.

if fb setup fails, then we shouldn't use re->ob as it's NULL.

@fix

10 years agoFix evas compilation and installation.
Tom Hacohen [Thu, 6 Mar 2014 09:13:38 +0000 (09:13 +0000)]
Fix evas compilation and installation.

10 years agoEolian: generation of the first Eo file.
Daniel Zaoui [Wed, 5 Mar 2014 11:54:39 +0000 (13:54 +0200)]
Eolian: generation of the first Eo file.

The first object that we generate with Eolian is Evas_Line, as it is a
simple one.
Two files are generated during build:
- the .eo.c contains the APIs definitions invoking Eo, the Eo functions
extracting the parameters and calling the hand written functions and
Eo structures to define the objects. These hand written functions are
located in e.g evas_object_line.c.
- the .eo.h contains the APIs and Eo prototyes.

We will continue with the other objects. If you note something wrong,
please update us asap:
daniel.zaoui@samsung.com
yossi.kantor@samsung.com

10 years agoEolian/Generator: Switch set/get functions generation.
Daniel Zaoui [Wed, 5 Mar 2014 11:45:14 +0000 (13:45 +0200)]
Eolian/Generator: Switch set/get functions generation.

We want to generate first set properties and then get properties to be
in accordance with the current op ids order.

10 years agoEolian helper: Fixed rule dependency to correctly depend on eolian_gen.
Tom Hacohen [Wed, 5 Mar 2014 10:19:08 +0000 (10:19 +0000)]
Eolian helper: Fixed rule dependency to correctly depend on eolian_gen.

Without this change, bootstrapping doesn't work as well.

10 years agoEolian/Lexer: fix parsing for functions description.
Daniel Zaoui [Wed, 5 Mar 2014 08:06:05 +0000 (10:06 +0200)]
Eolian/Lexer: fix parsing for functions description.

If the first character of the description was not an alphanumeric, it was
not finalizing the parsing of the description and was not inserting it
in the database.
It was occurring when "@since" was the first word in the description of
the function.

10 years agoEolian/Generator: Fix comments generation in headers.
Daniel Zaoui [Wed, 5 Mar 2014 08:04:25 +0000 (10:04 +0200)]
Eolian/Generator: Fix comments generation in headers.

Trailing whitespaces were added in description empty lines.

10 years agoecore-evas: Include Ecore_Drm header
Chris Michael [Thu, 6 Mar 2014 12:38:06 +0000 (12:38 +0000)]
ecore-evas: Include Ecore_Drm header

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoefl: Fix build with drm disabled
Chris Michael [Thu, 6 Mar 2014 12:36:53 +0000 (12:36 +0000)]
efl: Fix build with drm disabled

@bugfix: Drm is optional, so ecore-evas should not internally depend
on it unless ecore-drm is found.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoefl: Fix installing ecore-drm pkgconfig file
Chris Michael [Thu, 6 Mar 2014 12:36:22 +0000 (12:36 +0000)]
efl: Fix installing ecore-drm pkgconfig file

@bugfix: If we build with ecore-drm support, let's install the
pkgconfig file yes ? :)

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoMerge branch 'devs/devilhorns/ecore_drm'
Chris Michael [Thu, 6 Mar 2014 11:23:57 +0000 (11:23 +0000)]
Merge branch 'devs/devilhorns/ecore_drm'

10 years agoecore-drm: Add ecore-drm Makefile
Chris Michael [Thu, 6 Mar 2014 11:17:26 +0000 (11:17 +0000)]
ecore-drm: Add ecore-drm Makefile

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add Ecore_Drm to main Makefile
Chris Michael [Thu, 6 Mar 2014 11:17:01 +0000 (11:17 +0000)]
ecore-drm: Add Ecore_Drm to main Makefile

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add code for SPARTACUS !! ;)
Chris Michael [Thu, 6 Mar 2014 11:15:29 +0000 (11:15 +0000)]
ecore-drm: Add code for SPARTACUS !! ;)

@ferature: This adds code for the ecore-drm auth process to open
restricted inputs/cards/etc by the user.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
10 years agoecore-drm: Add missing EINA_UNUSED for unused function paramaters.
Chris Michael [Thu, 6 Mar 2014 11:12:23 +0000 (11:12 +0000)]
ecore-drm: Add missing EINA_UNUSED for unused function paramaters.

Signed-off-by: Chris Michael <cp.michael@samsung.com>