platform/upstream/efl.git
11 years agoedje: use const Eina_File for mmap_set function.
Cedric Bail [Mon, 4 Nov 2013 02:28:29 +0000 (11:28 +0900)]
edje: use const Eina_File for mmap_set function.

11 years agoevas: make mmap_set use const Eina_File.
Cedric Bail [Mon, 4 Nov 2013 02:27:59 +0000 (11:27 +0900)]
evas: make mmap_set use const Eina_File.

11 years agoeina: roll const into Eina_File API.
Cedric Bail [Mon, 4 Nov 2013 02:26:59 +0000 (11:26 +0900)]
eina: roll const into Eina_File API.

Note that eina_file_dup is const from the caller perspective as it
will return a fresh "non const" Eina_File that it will be able to
manipulate as it like.

11 years agoevas/x11: Fix Xlib swapper buffer size
Jean-Philippe Andre [Fri, 1 Nov 2013 05:44:07 +0000 (14:44 +0900)]
evas/x11: Fix Xlib swapper buffer size

Problem: Software engine fails to render on Tizen device.

11 years agoevas - clip shutdown fix to avoid invalid mem accesses
Carsten Haitzler (Rasterman) [Sun, 3 Nov 2013 12:43:11 +0000 (21:43 +0900)]
evas - clip shutdown fix to avoid invalid mem accesses

many valgrind complaints on e shutdown are there regarding accessing
cow sections, lists and object elements during shutdown. this plugs
theses little holes to avoid the invalid accesses and thus avoids
potential crashes.

11 years agoeina thread - make note about valgrind complaint that is bogus
Carsten Haitzler (Rasterman) [Sun, 3 Nov 2013 11:51:41 +0000 (20:51 +0900)]
eina thread - make note about valgrind complaint that is bogus

11 years agoevas - re-fix to use first, last or if item is list head on text recomp
Carsten Haitzler (Rasterman) [Sun, 3 Nov 2013 11:33:05 +0000 (20:33 +0900)]
evas - re-fix to use first, last or if item is list head on text recomp

11 years agoMake setter functions "edje_edit_script..." return Eina_Bool.
m.biliavskyi [Sat, 2 Nov 2013 12:26:18 +0000 (21:26 +0900)]
Make setter functions "edje_edit_script..." return Eina_Bool.

Summary:
Make the following function return Eina_Bool so the caller can detect errors :
List of updated functions:
edje_edit_script_set
edje_edit_script_program_set

Reviewers: cedric, seoz, raster

Reviewed By: raster

CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D307

11 years agoevas - text - only remove item from list if its in a list
Carsten Haitzler (Rasterman) [Sat, 2 Nov 2013 10:35:45 +0000 (19:35 +0900)]
evas - text - only remove item from list if its in a list

this fixes a n eina complaint - valid as elipsis item was being
deleted and it was not in the list of items.

11 years agofix framespace handling in evas _render to not cause in/out events...
Carsten Haitzler (Rasterman) [Sat, 2 Nov 2013 04:50:13 +0000 (13:50 +0900)]
fix framespace handling in evas _render to not cause in/out events...

but this is not finished. this needs proper fixing. this is a quick
patch for just the worst. the real solution is discussed here:

https://phab.enlightenment.org/T457

11 years agoecore-wl - add ecore_wl_window_surface_id_get so we can unbreak elm
Carsten Haitzler (Rasterman) [Sat, 2 Nov 2013 02:44:15 +0000 (11:44 +0900)]
ecore-wl - add ecore_wl_window_surface_id_get so we can unbreak elm

11 years agoecore/wayland: Finally move Ecore_Wayland internals to private header.
Rafael Antognolli [Fri, 1 Nov 2013 17:55:39 +0000 (15:55 -0200)]
ecore/wayland: Finally move Ecore_Wayland internals to private header.

11 years agoecore/wayland: Add ecore_wl_window_keyboard_get().
Rafael Antognolli [Fri, 1 Nov 2013 17:51:38 +0000 (15:51 -0200)]
ecore/wayland: Add ecore_wl_window_keyboard_get().

Instead of use direct access to the Ecore_Wl_Window structure, just use
the getter, so we can hide the internals.

11 years agoecore/wayland: Set win->resizing flag inside ecore_wl_resize().
Rafael Antognolli [Fri, 1 Nov 2013 17:51:14 +0000 (15:51 -0200)]
ecore/wayland: Set win->resizing flag inside ecore_wl_resize().

11 years agoecore/wayland: Set win->moving from inside ecore_wayland.
Rafael Antognolli [Fri, 1 Nov 2013 16:33:54 +0000 (14:33 -0200)]
ecore/wayland: Set win->moving from inside ecore_wayland.

We can set it from the ecore_wl_window_move() function, instead of
directly changing the attribute.

11 years agoecore(_evas)/wayland: Move frame callback to engine data.
Rafael Antognolli [Fri, 1 Nov 2013 16:19:11 +0000 (14:19 -0200)]
ecore(_evas)/wayland: Move frame callback to engine data.

It's something specific to the ecore_evas engine/module, so there's no
need to keep this info in the Ecore_Wl_Window.

11 years agoecore/wayland: Add title_set and class_name_set APIs.
Rafael Antognolli [Fri, 1 Nov 2013 13:38:05 +0000 (11:38 -0200)]
ecore/wayland: Add title_set and class_name_set APIs.

These two APIs will save the title and class_name inside
Ecore_Wl_Window, so if they are called before the shell surface is
created, the stored names will be used later when the window is finally
shown (shell surface is created).

This way we are also hiding the shell surface from ecore_evas modules.

11 years agoecore_evas/wayland: Do not update opaque region to the same value.
Rafael Antognolli [Fri, 1 Nov 2013 12:43:53 +0000 (10:43 -0200)]
ecore_evas/wayland: Do not update opaque region to the same value.

This should not be necessary, since it's setting exactly the same
current opaque region. Changing the opaque region might be needed, but
not here.

11 years agoecore/wayland: Remove attributes that are not used anymore.
Rafael Antognolli [Fri, 1 Nov 2013 12:28:14 +0000 (10:28 -0200)]
ecore/wayland: Remove attributes that are not used anymore.

Some attributes might have been useful in the past, but not anymore.
Just remove since they are not been used anywhere.

11 years agoEvas textgrid: Added some clouseau debug info.
Tom Hacohen [Fri, 1 Nov 2013 12:02:55 +0000 (12:02 +0000)]
Evas textgrid: Added some clouseau debug info.

11 years agoedje/edje_entry.c : By Next/Previous, cursor can reach to the top or the bottom of...
WooHyun Jung [Fri, 1 Nov 2013 09:32:43 +0000 (18:32 +0900)]
edje/edje_entry.c : By Next/Previous, cursor can reach to the top or the bottom of entry.

11 years agoFix compiler warning: Need to define _state_update function early as
Chris Michael [Fri, 1 Nov 2013 08:41:30 +0000 (08:41 +0000)]
Fix compiler warning: Need to define _state_update function early as
it is used in various places later.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
11 years agoedje: make mouse_events, repeat_events, ignore_flags and scale setters return Eina_Bool.
Andrii Kroitor [Fri, 1 Nov 2013 02:30:23 +0000 (11:30 +0900)]
edje: make mouse_events, repeat_events, ignore_flags and scale setters return Eina_Bool.

Make the following function return Eina_Bool so the caller can detect errors :
edje_edit_part_mouse_events_set
edje_edit_part_repeat_events_set
edje_edit_part_ignore_flags_set
edje_edit_part_scale_set

Reviewers: cedric, seoz

Reviewed By: cedric

CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D303

Signed-off-by: Cedric Bail <cedric.bail@samsung.com>
11 years agoedje: make functions "edje_edit_state_fill/aspect/align..." return Eina_Bool
m.biliavskyi [Fri, 1 Nov 2013 02:17:24 +0000 (11:17 +0900)]
edje: make functions "edje_edit_state_fill/aspect/align..." return Eina_Bool

Make the following function return Eina_Bool so the caller can detect errors :
List of updated functions:
edje_edit_state_align_x_set
edje_edit_state_align_y_set
edje_edit_state_aspect_min_set
edje_edit_state_aspect_max_set
edje_edit_state_aspect_pref_set
edje_edit_state_fill_origin_relative_x_set
edje_edit_state_fill_origin_relative_y_set
edje_edit_state_fill_origin_offset_x_set
edje_edit_state_fill_origin_offset_y_set
edje_edit_state_fill_size_relative_x_set
edje_edit_state_fill_size_relative_y_set
edje_edit_state_fill_size_offset_x_set
edje_edit_state_fill_size_offset_y_set

Reviewers: cedric, seoz

Reviewed By: cedric

CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D300

Signed-off-by: Cedric Bail <cedric.bail@samsung.com>
11 years agoChangeLog: let's try to be more informative in our commit.
Cedric Bail [Fri, 1 Nov 2013 02:15:35 +0000 (11:15 +0900)]
ChangeLog: let's try to be more informative in our commit.

Would be good that everyone specify on which part there change did apply.
Some are really not obvious.

11 years agoEvas: Fixed textblock rendering to properly set render operation on context.
Youngbok Shin [Fri, 1 Nov 2013 02:09:58 +0000 (11:09 +0900)]
Evas: Fixed textblock rendering to properly set render operation on context.

Render operation are not well tested. It appears that it was never properly setted
on a textblock, this would lead to see it rendered with the render operation of another
object.

Test Plan:
Add some rectangle object with textblock object.
The textblock style should be set to "backing=on backing_color=#ffffffff".
Set render operation to some rectangle with "evas_object_render_op_set(rect, EVAS_RENDER_COPY)".
Check the textblock.

Reviewers: woohyun, cedric, raster

Reviewed By: cedric

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

Signed-off-by: Cedric Bail <cedric.bail@samsung.com>
11 years agoedje: make functions return Eina_Bool and fix documentation.
Andrii Kroitor [Fri, 1 Nov 2013 02:03:30 +0000 (11:03 +0900)]
edje: make functions return Eina_Bool and fix documentation.

Make the following functions return Eina_Bool so the caller can detect errors:
edje_edit_part_drag_x_set
edje_edit_part_drag_y_set
edje_edit_part_drag_step_x_set
edje_edit_part_drag_step_y_set
edje_edit_part_drag_count_x_set
edje_edit_part_drag_count_y_set

Added functions for threshold:
edje_edit_part_drag_threshold_set
edje_edit_part_drag_threshold_get

Fixed description of 'count' parameter of dragable.x/y

Reviewers: cedric, seoz

Reviewed By: cedric

CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D304

Signed-off-by: Cedric Bail <cedric.bail@samsung.com>
11 years agoedje: make functions in edje_edit API return Eina_Bool.
Vorobiov Vitalii [Fri, 1 Nov 2013 02:01:37 +0000 (11:01 +0900)]
edje: make functions in edje_edit API return Eina_Bool.

Make the following functions return Eina_Bool so the caller can detect errors:
edje_edit_state_visible_set
edje_edit_state_color_class_set

Removed unnecessary check in edje_edit_state_image_border_fill_set.

Reviewers: cedric, seoz

Reviewed By: cedric

CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D305

Signed-off-by: Cedric Bail <cedric.bail@samsung.com>
11 years agoedje: make it possible for all upper layer function to query the exact same file.
Cedric Bail [Fri, 1 Nov 2013 01:58:33 +0000 (10:58 +0900)]
edje: make it possible for all upper layer function to query the exact same file.

With Eina_File we now can pass an efficient handler accross library boundary. Edje
and all underlayer already use it to avoid race condition when setting an Edje object.
Elementary and Enlightenment are still exposed to some potential race condition when
an Edje file is modified underneath there feet. With the following set of function it
should now be possible to avoid those race condition to:
edje_mmap_data_get
edje_mmap_collection_list
edje_mmap_collection_list_free
edje_mmap_group_exists

11 years agopo: updated po files.
Daniel Juyung Seo [Thu, 31 Oct 2013 23:42:54 +0000 (08:42 +0900)]
po: updated po files.

11 years agoecore/wayland: Do not store "edges" in Ecore_Wl_Window.
Rafael Antognolli [Thu, 31 Oct 2013 22:15:36 +0000 (20:15 -0200)]
ecore/wayland: Do not store "edges" in Ecore_Wl_Window.

This is a configure event info, so put it in the right place. Some
places adding edges info were also removed, which means that they were
redundant.

Tested with <Meta> + middle click resize, and with window border resize,
on all the edges. Apparently, nothing breaks.

11 years agoecore/wayland: Do not use win->id directly.
Rafael Antognolli [Thu, 31 Oct 2013 22:02:40 +0000 (20:02 -0200)]
ecore/wayland: Do not use win->id directly.

Use a getter for it instead, so we don't need to expose the
Ecore_Wl_Window struct just because of it.

11 years agoecore/wayland: Make Ecore_Wl_Input private.
Rafael Antognolli [Thu, 31 Oct 2013 21:09:30 +0000 (19:09 -0200)]
ecore/wayland: Make Ecore_Wl_Input private.

It's mostly only used inside ecore_wayland library anyway.

The only bit needed outside of the library is the "seat" pointer, but a
new function was added to retrieve such pointer from Ecore_Wl_Input.

11 years agoecore/wayland: Hide Ecore_Wl_Display.
Rafael Antognolli [Thu, 31 Oct 2013 20:02:04 +0000 (18:02 -0200)]
ecore/wayland: Hide Ecore_Wl_Display.

This struct is only used inside ecore_wayland itself, so there's no real
reason to expose it. Apparently, hiding it doesn't break anything,
except for the ecore_imf wayland module, which was easily fixed.

If anyone notices a breakage, please let me know.

11 years agoOk, This actually fixes maximized state properly now :) Basically, we
Chris Michael [Thu, 31 Oct 2013 17:21:33 +0000 (17:21 +0000)]
Ok, This actually fixes maximized state properly now :) Basically, we
still need to account for frame height, but not frame width when we
are maximizing.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
11 years agoFix ecore_evas_wayland maximized support to function properly
Chris Michael [Thu, 31 Oct 2013 16:58:21 +0000 (16:58 +0000)]
Fix ecore_evas_wayland maximized support to function properly

Previously, a "maximize" of an efl client would not actually resize to
the provided size as it would account for framespace width & height.
This fixes that so now "maximize" is Actually maximized.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
11 years agoImplement ability to call the ecore_evas state_change function if
Chris Michael [Thu, 31 Oct 2013 11:47:53 +0000 (11:47 +0000)]
Implement ability to call the ecore_evas state_change function if
needed.

NB: Currently, this will only work for fullscreen or maximized states
as other ones like sticky, withdrawn, iconic, etc, etc are not
supported via wayland protocol yet.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
11 years agowhitespace--
Chris Michael [Thu, 31 Oct 2013 09:38:34 +0000 (09:38 +0000)]
whitespace--

Signed-off-by: Chris Michael <cp.michael@samsung.com>
11 years agoCall _ecore_evas_mouse_move_process function on mouse_in and mouse_out
Chris Michael [Thu, 31 Oct 2013 09:19:38 +0000 (09:19 +0000)]
Call _ecore_evas_mouse_move_process function on mouse_in and mouse_out
events.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
11 years agoconfigure.ac: fix --with-api err msg
Jérémy Zurcher [Thu, 31 Oct 2013 08:25:06 +0000 (09:25 +0100)]
configure.ac: fix --with-api err msg

11 years agoevas/proxy - decide the proxy updation in the main render process.
ChunEon Park [Thu, 31 Oct 2013 08:01:41 +0000 (17:01 +0900)]
evas/proxy - decide the proxy updation in the main render process.

because the proxy updation is decided in the proxy rendering time,

it couldn't be updated at the time if the source is changed before.

11 years agoevil: let's try if we only use that macro.
Cedric Bail [Thu, 31 Oct 2013 07:05:38 +0000 (16:05 +0900)]
evil: let's try if we only use that macro.

11 years agoevil: let's try another combinaison of define.
Cedric Bail [Thu, 31 Oct 2013 06:39:12 +0000 (15:39 +0900)]
evil: let's try another combinaison of define.

11 years agoevil: add missing define specific to Windows build.
Cedric Bail [Thu, 31 Oct 2013 05:39:21 +0000 (14:39 +0900)]
evil: add missing define specific to Windows build.

It is an optional flags that just shutdown useless warning at build time.

11 years agoevil: remove libgen and the GNU *printf code (both in mingw-w64).
Vincent Torri [Tue, 29 Oct 2013 15:15:21 +0000 (16:15 +0100)]
evil: remove libgen and the GNU *printf code (both in mingw-w64).

This should reduce the code size of evil and reduce maintainance as
mingw does now take care of it.

Signed-off-by: Cedric Bail <cedric.bail@samsung.com>
11 years agoedje: make functions return Eina_Bool and fix documentation.
Vorobiov Vitalii [Thu, 31 Oct 2013 02:05:42 +0000 (11:05 +0900)]
edje: make functions return Eina_Bool and fix documentation.

Make the following functions return Eina_Bool so the caller can detect errors:
edje_edit_state_font_set
edje_edit_part_effect_set

Also deleted duplicate of the "edje_edit_state_font_set" function in Edje_Edit.h
Moved some defines (EDJE_TEXT_EFFECT_MASK_BASIC, EDJE_TEXT_EFFECT_MASK_SHADOW_DIRECTION etc),
so doxygen generation was fixed.
Also added link (see also) in "edje_edit_part_effect_set" to the Edje_Text_Effect enum.

Reviewers: cedric, seoz

CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D302

Signed-off-by: Cedric Bail <cedric.bail@samsung.com>
11 years agoedje: make functions in Text API return Eina_Bool.
Vorobiov Vitalii [Thu, 31 Oct 2013 02:04:11 +0000 (11:04 +0900)]
edje: make functions in Text API return Eina_Bool.

Make the following functions return Eina_Bool so the caller can detect errors:
edje_edit_state_text_set
edje_edit_state_text_size_set
edje_edit_state_text_align_x_set
edje_edit_state_text_align_y_set
edje_edit_state_text_elipsis_set
edje_edit_state_text_fit_x_set
edje_edit_state_text_fit_y_set
edje_edit_state_text_min_x_set
edje_edit_state_text_min_y_set
edje_edit_state_text_max_x_set
edje_edit_state_text_max_y_set

Reviewers: cedric, seoz

CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D301

Signed-off-by: Cedric Bail <cedric.bail@samsung.com>
11 years agoevas: fix uninitialized use of font instance when no font is selected.
Cedric Bail [Tue, 29 Oct 2013 08:00:48 +0000 (17:00 +0900)]
evas: fix uninitialized use of font instance when no font is selected.

11 years agofix raster's typo
Jérémy Zurcher [Wed, 30 Oct 2013 21:41:13 +0000 (22:41 +0100)]
fix raster's typo

11 years agoEcore_Common.h: fixed documentations.
Daniel Juyung Seo [Wed, 30 Oct 2013 16:04:24 +0000 (01:04 +0900)]
Ecore_Common.h: fixed documentations.

11 years agoAUTHORS: we have some new contributor around !
Cedric Bail [Wed, 30 Oct 2013 13:35:32 +0000 (22:35 +0900)]
AUTHORS: we have some new contributor around !

11 years agoedje: fix typos/miss merge with a wrong return in edje_edit_image_del.
Andrii Kroitor [Wed, 30 Oct 2013 13:19:57 +0000 (22:19 +0900)]
edje: fix typos/miss merge with a wrong return in edje_edit_image_del.

Because of unconditional return in function, a huge part of its body was
skipped making this function useless. Looked like a typo or missed merge.

Reviewers: cedric, seoz

CC: seoz
Differential Revision: https://phab.enlightenment.org/D281

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
11 years agoedje: make function "edje_edit_state_min/max..." return Eina_Bool.
Vorobiov Vitalii [Wed, 30 Oct 2013 13:14:42 +0000 (22:14 +0900)]
edje: make function "edje_edit_state_min/max..." return Eina_Bool.

Make the following function return Eina_Bool so the caller can detect errors :
List of updated functions:
edje_edit_state_min_h_set
edje_edit_state_min_w_set
edje_edit_state_max_h_set
edje_edit_state_max_w_set

Reviewers: cedric, seoz

CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D299

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
11 years agoedje: make edje_edit_group_*_*_set return Eina_Bool.
Andrii Kroitor [Wed, 30 Oct 2013 13:11:22 +0000 (22:11 +0900)]
edje: make edje_edit_group_*_*_set return Eina_Bool.

Make the following function return Eina_Bool so that the caller can detect errors :
edje_edit_group_min_w_set
edje_edit_group_min_h_set
edje_edit_group_max_w_set
edje_edit_group_max_h_set

Reviewers: cedric, seoz

CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D291

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
11 years agoedje: make function which change style tag param's (name, value) and delete tag retur...
m.biliavskyi [Wed, 30 Oct 2013 13:04:57 +0000 (22:04 +0900)]
edje: make function which change style tag param's (name, value) and delete tag return Eina_Bool.

This patch make the following function return Eina_Bool so the caller can detect errors.
edje_edit_style_tag_value_set
edje_edit_style_tag_name_set
edje_edit_style_tag_del

Reviewers: cedric, seoz

Reviewed By: cedric

CC: reutskiy.v.v, seoz
Differential Revision: https://phab.enlightenment.org/D294

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
11 years agoedje: make setters for "edje_edit_state_image_..." return Eina_Bool.
Vorobiov Vitalii [Wed, 30 Oct 2013 13:00:11 +0000 (22:00 +0900)]
edje: make setters for "edje_edit_state_image_..." return Eina_Bool.

This patch make the following function return Eina_Bool so the caller can
detect errors.
edje_edit_state_image_set
edje_edit_state_image_border_set
edje_edit_state_image_border_fill_set

Reviewers: cedric, seoz

CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D295

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
11 years agoedje: make edje edit rel setters return Eina_Bool.
Andrii Kroitor [Wed, 30 Oct 2013 12:54:23 +0000 (21:54 +0900)]
edje: make edje edit rel setters return Eina_Bool.

Make the following function return an Eina_Bool so the caller can detect
errors if it want :
edje_edit_state_rel1_relative_x_set
edje_edit_state_rel1_relative_y_set
edje_edit_state_rel2_relative_x_set
edje_edit_state_rel2_relative_y_set
edje_edit_state_rel1_offset_x_set
edje_edit_state_rel1_offset_y_set
edje_edit_state_rel2_offset_x_set
edje_edit_state_rel2_offset_y_set
edje_edit_state_rel1_to_x_set
edje_edit_state_rel1_to_y_set
edje_edit_state_rel2_to_x_set
edje_edit_state_rel2_to_y_set

Reviewers: cedric, seoz

CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D296

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
11 years agoedje: make setters for "edje_edit_state_color..." return Eina_Bool.
Vorobiov Vitalii [Wed, 30 Oct 2013 12:49:32 +0000 (21:49 +0900)]
edje: make setters for "edje_edit_state_color..." return Eina_Bool.

This patch start returning Eina_Bool for the following color setters to be
able to detect errors when calling them.
edje_edit_state_color_set
edje_edit_state_color2_set
edje_edit_state_color3_set

Reviewers: cedric, seoz

Reviewed By: cedric

CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D297

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
11 years agoedje: Make setters for "edje_edit_state_min/max..." return Eina_Bool
Vorobiov Vitalii [Wed, 30 Oct 2013 12:45:00 +0000 (21:45 +0900)]
edje: Make setters for "edje_edit_state_min/max..." return Eina_Bool

This patch start returning Eina_Bool for state's min and max value setters, so
we can now catch error when calling those function.
edje_edit_state_min_h_set
edje_edit_state_min_w_set
edje_edit_state_max_h_set
edje_edit_state_max_w_set

Reviewers: cedric, seoz

Reviewed By: cedric

CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D298

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
11 years agoevas/cserve2: Prevent another infinite loop (flush)
Jean-Philippe Andre [Wed, 30 Oct 2013 06:16:21 +0000 (15:16 +0900)]
evas/cserve2: Prevent another infinite loop (flush)

And add some error messages

11 years agoevas/cserve2: Prevent potential infinite loop (shutdown)
Jean-Philippe Andre [Wed, 30 Oct 2013 05:57:52 +0000 (14:57 +0900)]
evas/cserve2: Prevent potential infinite loop (shutdown)

In shutdown, I've encountered an infinite loop.
It SHOULD NOT possibly happen, but somehow some image
was marked as delete_me=1 but still present in the LRU.

11 years agoevas/cserve2: Fix crash in server when an image file changes
Jean-Philippe Andre [Tue, 29 Oct 2013 10:45:13 +0000 (19:45 +0900)]
evas/cserve2: Fix crash in server when an image file changes

Since cserve2 uses inotify to track image file updates,
it will drop its references to a specific file and all
the associated images.
Fix some logic in the deletion code.

11 years agoevas/cserve2: Fix image preload with gl-x11 engine
Jean-Philippe Andre [Tue, 29 Oct 2013 10:06:33 +0000 (19:06 +0900)]
evas/cserve2: Fix image preload with gl-x11 engine

Cserves supports only the SW (xlib) and GL (gl-x11) engines.
Also, improve cs2 support for some lesser used functions in the
gl_x11 engine.

11 years agocompliance/licensing - clarify, fix formatting and point to tldrlegal.com
Carsten Haitzler (Rasterman) [Wed, 30 Oct 2013 10:27:26 +0000 (19:27 +0900)]
compliance/licensing - clarify, fix formatting and point to tldrlegal.com

11 years agoevas - gif loader rewrite (clean up code, document it a lot AND fix bugs)
Carsten Haitzler (Rasterman) [Wed, 30 Oct 2013 09:16:09 +0000 (18:16 +0900)]
evas - gif loader rewrite (clean up code, document it a lot AND fix bugs)

after several days of beating head on desk, i gave up trying to find
the exact cause of some gifs not rendering right as animated gifs due
to the loader. it had something to do with dispose mode handling and
which frame it was applied to. i noticed the structure made it also
hard to fix, so this re-structures the entire thing with cleaner code,
less code AND more comments, with a limited memory cache (512k) for
previous frames per image (to avoid eating up huge memory blobs for
big/long animations - though at the expense of cpu), and with some
notes for future fixes - like fixing the "load 2 copies of the same
animated gif" issue... that's another day.

this does fix https://phab.enlightenment.org/T443 along with many
other things.

11 years agoevas - animated images. fix leak in not freeing the list of frames itself
Carsten Haitzler (Rasterman) [Wed, 30 Oct 2013 09:08:10 +0000 (18:08 +0900)]
evas - animated images. fix leak in not freeing the list of frames itself

11 years agoEvasGL: cleaning up unnecessary code.
Sung W. Park [Wed, 30 Oct 2013 01:47:52 +0000 (10:47 +0900)]
EvasGL: cleaning up unnecessary code.

Cleaning up unnecessary code.

11 years agoReturn Eina_Bool value for method which deleting style from edje_edit object.
m.biliavskyi [Tue, 29 Oct 2013 23:40:11 +0000 (08:40 +0900)]
Return Eina_Bool value for method which deleting style from edje_edit object.

Summary: This patch start returning Eina_Bool for deleting style from edje edit object to catch those error.

Reviewers: cedric

CC: reutskiy.v.v, seoz
Differential Revision: https://phab.enlightenment.org/D290

11 years agoecore_x/xlib/ecore_x_vsync.c uses dlopen and dlsym, but configure.ac
Albin Tonnerre [Tue, 29 Oct 2013 22:25:54 +0000 (23:25 +0100)]
ecore_x/xlib/ecore_x_vsync.c uses dlopen and dlsym, but configure.ac
only checks for this for the XCB variant. This results in linker errors
when using strict linker flags (-Wl,-z,defs)

11 years agoecore/wayland: Using underscore on private functions.
Rafael Antognolli [Tue, 29 Oct 2013 21:32:00 +0000 (19:32 -0200)]
ecore/wayland: Using underscore on private functions.

11 years agoecore/wayland: Oops, initialize member of malloc'ed struct.
Rafael Antognolli [Tue, 29 Oct 2013 21:14:59 +0000 (19:14 -0200)]
ecore/wayland: Oops, initialize member of malloc'ed struct.

11 years agoecore/wayland: Add some getters.
Rafael Antognolli [Tue, 29 Oct 2013 20:40:33 +0000 (18:40 -0200)]
ecore/wayland: Add some getters.

This centralizes the place where we have to wait for the init to have
finished before first using the compositor. It's also part of the later
step of hiding Ecore_Wl_* private structs.

11 years agoOn a focus_in event, if the ecore_evas already has focus, don't resend
Chris Michael [Tue, 29 Oct 2013 08:41:48 +0000 (08:41 +0000)]
On a focus_in event, if the ecore_evas already has focus, don't resend
a focus in. Similar change for focus_out also.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
11 years agoIf mouse is already inside the ecore_evas, then we don't need to call
Chris Michael [Tue, 29 Oct 2013 08:04:05 +0000 (08:04 +0000)]
If mouse is already inside the ecore_evas, then we don't need to call
the mouse_in function of the ecore_evas.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
11 years agoDon't send mouse_up or mouse_down events unless we have a focused
Chris Michael [Tue, 29 Oct 2013 08:01:41 +0000 (08:01 +0000)]
Don't send mouse_up or mouse_down events unless we have a focused
surface

Signed-off-by: Chris Michael <cp.michael@samsung.com>
11 years agoevas/cserve2: Fix error path in evas_cache2_image_writable()
Jean-Philippe Andre [Tue, 29 Oct 2013 06:12:58 +0000 (15:12 +0900)]
evas/cserve2: Fix error path in evas_cache2_image_writable()

Return NULL and check for nullity in the only calling function.

Fixes CID 1039461 (Logically dead code)

11 years agoevas/cserve2: Fix CID 1039286 (Resource leak)
Jean-Philippe Andre [Tue, 29 Oct 2013 06:03:14 +0000 (15:03 +0900)]
evas/cserve2: Fix CID 1039286 (Resource leak)

Close socket in case of connection failure.

11 years agoevas/cserve2: Fix new Coverity issues
Jean-Philippe Andre [Tue, 29 Oct 2013 04:54:15 +0000 (13:54 +0900)]
evas/cserve2: Fix new Coverity issues

Nothing extraordinary here.
Most potential crashes are extremely unlikely.

- Fix CID 1113444

- Fix CID 1113442

- Fix CID 1113441 (Logically dead code, can not be NULL)

- Fix CID 1113440: Explicit null dereferenced

This is actually an impossible situation.
Fixed by checking for nullity and printing out some error
messages instead of just crashing.

- Fix CID 1113439: Dereference after null check

Logically impossible code as both idxpath and datapath
must be either set or null at the same time.
Change the if logic to tell Coverity there's no bug.

- Fix CID 1113438 (Argument cannot be negative)

Fix wrong check of return value from shm_open.

- Fix CID 1113437 (Argument cannot be negative)

Fix wrong check of return value from shm_open.

- Fix CID 1113436 (Dereference null return value)

This case really shouldn't happen.
But the extra check does not hurt.

- Fix CID 1113435 (Dereference before null check)

Check for nullity after map open.

- Fix CID 1113434 (Extra sizeof expression)

Debug buggy debug tool :)

- Fix CID 1113433 (Uninitialized scalar variable)

Insignificant issue: only prints wrong debug logs :)

- Fix CID 1113431 (Uninitialized scalar value)

Check if (!found) only to print out logs. Not a big deal
if found was invalid.

- Fix CID 1039462 (Logically dead code)

11 years agoedje: return Eina_Bool values in setters for dragable confine and event params in...
m.biliavskyi [Tue, 29 Oct 2013 01:23:42 +0000 (10:23 +0900)]
edje: return Eina_Bool values in setters for dragable confine and event params in Edje_Edit API.

Many Edje_Edit API can fail and don't return any error information. This patch start returning
Eina_Bool for setters on dragable confine and event params to catch those error.

Reviewers: cedric

Reviewed By: cedric

CC: seoz
Differential Revision: https://phab.enlightenment.org/D274

Signed-off-by: Cedric Bail <cedric.bail@samsung.com>
11 years agoecore/wayland: Use sync callback to report end of ecore_wl_init().
Rafael Antognolli [Mon, 28 Oct 2013 16:07:25 +0000 (14:07 -0200)]
ecore/wayland: Use sync callback to report end of ecore_wl_init().

At the end of the ecore_wl_init() function, send a sync request to the
server, and add a callback listener to the "done" event. When this event
is received, we are sure that all the registry bind requests done so
far were processed already, and that the registry and globals are
available and can be used.

Now, on the functions that request interfaces or registry, we call
_ecore_wl_init_wait(), which will check if the callback was received
already (that means that all requests inside the init were processed).
If it was not yet, then we wait until receiving that callback, before
returning the requested data.

11 years agoecore/wayland: Add info about other bound interfaces.
Rafael Antognolli [Mon, 28 Oct 2013 16:12:27 +0000 (14:12 -0200)]
ecore/wayland: Add info about other bound interfaces.

Add output, seat, data_device_manager and subcompositor as possible
bound interfaces, on the ECORE_WL_EVENT_INTERFACES_BOUND event info.

11 years agoRevert "change init done bindings."
Rafael Antognolli [Mon, 28 Oct 2013 16:46:40 +0000 (14:46 -0200)]
Revert "change init done bindings."

This reverts commit b87afd1b943b260c92f8493647b7d9cae327656e.

Wrong branch, wrong commit.

11 years agochange init done bindings.
Rafael Antognolli [Mon, 28 Oct 2013 16:07:25 +0000 (14:07 -0200)]
change init done bindings.

11 years agoeina: long forgotten function in Eina_File for Windows.
Cedric Bail [Mon, 28 Oct 2013 10:47:40 +0000 (19:47 +0900)]
eina: long forgotten function in Eina_File for Windows.

11 years agoevas: fix leak of ellipsis object in Evas_Object_Text.
Cedric Bail [Mon, 28 Oct 2013 10:45:46 +0000 (19:45 +0900)]
evas: fix leak of ellipsis object in Evas_Object_Text.

11 years agoevas: fix possible memory leak in the ellipsis code.
Cedric Bail [Mon, 28 Oct 2013 09:44:26 +0000 (18:44 +0900)]
evas: fix possible memory leak in the ellipsis code.

11 years agoeet: help the kernel to actually load the eet file in memory more efficiently.
Cedric Bail [Mon, 28 Oct 2013 09:28:38 +0000 (18:28 +0900)]
eet: help the kernel to actually load the eet file in memory more efficiently.

When you open a theme, it is very likely that most of the data in it will be needed
at some point, that's why it is a good idea to tell it in advance to the kernel so
it could load them if it has some spare ressource.

We can't just blindly turn EINA_FILE_WILLNEED on any file or a wrong eet file would
be loaded in memory when we don't need it. So we shall keep the sequential load until
we are sure that the file is correct and then explicitely tell the kernel that the
rest of the data should be loaded in ram.

11 years agoeina: fix API as we don't and never will touch memory for write in that function.
Cedric Bail [Mon, 28 Oct 2013 09:26:10 +0000 (18:26 +0900)]
eina: fix API as we don't and never will touch memory for write in that function.

11 years agoeina: avoid possible race condition when unreffing an Eina_File.
Cedric Bail [Mon, 28 Oct 2013 09:23:02 +0000 (18:23 +0900)]
eina: avoid possible race condition when unreffing an Eina_File.

11 years agoEvas/cserve2: Merge branch 'devs/jpeg/cserve2'
Jean-Philippe Andre [Mon, 28 Oct 2013 06:50:57 +0000 (15:50 +0900)]
Evas/cserve2: Merge branch 'devs/jpeg/cserve2'

Improve stability, performance and overall support of
evas cserve2.

In particular:
- Implement shared indexes and memory pools to share cserve's
  internal state with all clients. Apps can then scan these
  indexes and avoid waiting for socket responses when loading
  resources.
- Implement crash resiliency in evas. If cserve2 crashes, apps
  can safely reconnect and continue working as if nothing
  happened.
- Implement support for the GL engine (very basic support so
  far, "just works").
- Improve performance by reusing the scalecache logic.

11 years agoevas/cserve2: Merge Glyph_Data and mempool index
Jean-Philippe Andre [Fri, 11 Oct 2013 08:18:42 +0000 (17:18 +0900)]
evas/cserve2: Merge Glyph_Data and mempool index

Glyphs were previously using 3 shared buffers, now reduce to 2:
- Memory pool (mempool) containing the glyph drawable data
- Index table (Shared_Index / array) containing only the
  indexes of the buffers in the mempool
- Glyph_Data table (array) containing the glyphs descriptors
  AS WELL as the buffer indexes.

So, we just merge the two index tables into one by using directly
objects of type Glyph_Data for the referencing of the mempool
buffers.

11 years agoevas/cserve2: Add debug and reduce number of GLYPHS_USED messages
Jean-Philippe Andre [Fri, 11 Oct 2013 06:36:11 +0000 (15:36 +0900)]
evas/cserve2: Add debug and reduce number of GLYPHS_USED messages

One socket message was sent per each glyph used ... which means
a LOT of messages when text is being redrawn.

Reduce this flow of messages by triggering send() only when
50+ items are being used.
Btw, USED is a bit useless as there is no UNUSED equivalent.

Also, slightly improve debug logs.

11 years agoevas/cserve2: Use Eina_Refcount instead of int
Jean-Philippe Andre [Fri, 11 Oct 2013 05:47:07 +0000 (14:47 +0900)]
evas/cserve2: Use Eina_Refcount instead of int

Use the refcount macros instead of manually handling
integers. Not sure if it really helps since the refcounting
in cs2 client is a bit special :)

11 years agoevas/cserve2: prevent unwanted remap of strings table
Jean-Philippe Andre [Fri, 11 Oct 2013 05:31:18 +0000 (14:31 +0900)]
evas/cserve2: prevent unwanted remap of strings table

In the client, string_get() can cause a remapping of the
strings index & mempool. This means that all pointers to
string data are invalid past that call.

Solution: add a safe_get() function that prevents remap
during search. It might prove faster also, but will
return NULL more often.

11 years agoevas/cserve2: catch only SIGINT from cserve2
Jean-Philippe Andre [Fri, 11 Oct 2013 03:07:43 +0000 (12:07 +0900)]
evas/cserve2: catch only SIGINT from cserve2

SIGTERM and SIGQUIT don't need to be caught.
the proper signal to ask cserve2 to exit cleanly is SIGINT.

enlightenment_start (or systemd) should be responsible for
restarting in case of crash / unexpected termination.

cserve2 will not restart if killed with signal SIGINT,
as it will then exit with return code 0 (normal)

11 years agoevas/cserve2: Reduce repacking and resizing of SHM
Jean-Philippe Andre [Thu, 10 Oct 2013 08:15:21 +0000 (17:15 +0900)]
evas/cserve2: Reduce repacking and resizing of SHM

These operations have tons of side effects and it's a lot
easier to just avoid doing them. Now, repacking will always
need to happen as applications will add/delete strings and
items, but the less frequent, the better :)

Also, align most arrays & mempools to 32K instead of the
default page size (4K). This will also reduce resizes.

11 years agoevas/cserve2: Fix font reloading after cserve2 restart.
Jean-Philippe Andre [Thu, 10 Oct 2013 00:26:42 +0000 (09:26 +0900)]
evas/cserve2: Fix font reloading after cserve2 restart.

Well it LOOKS like it's working properly.
Clients can safely keep running after cserve2 crashed and
restarted.

11 years agoevas/cserve2: Add PID to shm filenames
Jean-Philippe Andre [Tue, 8 Oct 2013 08:06:33 +0000 (17:06 +0900)]
evas/cserve2: Add PID to shm filenames

This will help identify new memory pools in case cserve2
restarts and reloads the same glyphs for instance.

11 years agoevas/cserve2: Fix refcount for glyphs & glyph buffers
Jean-Philippe Andre [Mon, 7 Oct 2013 06:59:13 +0000 (15:59 +0900)]
evas/cserve2: Fix refcount for glyphs & glyph buffers

Maybe a little overkill on the iterations (ref/unref),
but at least we can really track down which glyphs are
currently being used.

11 years agoevas/cserve2: Reconnect to cserve2 in case of server crash
Jean-Philippe Andre [Wed, 2 Oct 2013 11:23:14 +0000 (20:23 +0900)]
evas/cserve2: Reconnect to cserve2 in case of server crash

Try to reconnect to cserve2 if the socket connection was lost.
Resend some messages if necessary.

Images reload seems to be working.
Actually, the images don't change over time, so the clients just
keep the previous references to their images.

FONT RELOAD IS NOT WORKING:
- Crashes
- Invalid glyph data
- Infinite loop in _glyph_map_remap_check()

Root cause:
When new glyphs are requested from the server, they are added to
the mempool. So it is necessary to remap the font.
Unfortunately, in case of server reboot, we did not keep the mempool
so the old glyphs that were not requested again will not be valid.