platform/upstream/efl.git
8 years agoEvil: fix compilation warning
Vincent Torri [Mon, 28 Dec 2015 22:15:29 +0000 (23:15 +0100)]
Evil: fix compilation warning

getenv() requires stdlib.h

8 years agoEvil: integrate the dlfcn code into Evil
Vincent Torri [Mon, 28 Dec 2015 13:22:29 +0000 (14:22 +0100)]
Evil: integrate the dlfcn code into Evil

This will remove some incompatibilities with other packages,
especially for win-builds

8 years agoEvas: Implement ARGY88 and GRY8 conversion to ARGB8888
Jean-Philippe Andre [Tue, 29 Dec 2015 13:01:16 +0000 (22:01 +0900)]
Evas: Implement ARGY88 and GRY8 conversion to ARGB8888

This is adding support for a deprecated function, but apparently
it is used.

Also, remove crazy abort() inside the data_put function.

Fixes T2991

8 years agoEo: Prevent shutdown from actually doing anything
Jean-Philippe Andre [Tue, 29 Dec 2015 11:29:36 +0000 (20:29 +0900)]
Eo: Prevent shutdown from actually doing anything

Currently, eo_shutdown can't work.

Every Eo_Class ID is stored inside its class_get() function as a
static variable. This means any call to class_get() after eo_shutdown()
(even if eo_init was done properly) will lead to using an invalid ref
for the class id. In other words, the class is not valid anymore,
and objects can't be created.

Resetting the pointer to NULL would be possible, if we passed it
during the class creation. But this would lead to potential crashes
if a class was created from a now dlclosed library.

The only solution I can envision here is to check that class_get
actually returns a valid ref with the right class name. Most likely
the performance impact is not acceptable.

This fixes make check for me (with systemd module for ecore).

8 years agoEo: Add internal function call on pointer errors
Jean-Philippe Andre [Tue, 29 Dec 2015 10:42:05 +0000 (19:42 +0900)]
Eo: Add internal function call on pointer errors

Useful for GDB: break on this function when things go wrong.
Similar to eina_safety.

I guess we could set some Eina_Error and maybe even have error
callbacks for easier application debugging. Later.

8 years agoEcore Eldbus: Work around circular dependencies
Jean-Philippe Andre [Tue, 29 Dec 2015 08:06:53 +0000 (17:06 +0900)]
Ecore Eldbus: Work around circular dependencies

eldbus initializes ecore that may then init eldbus again,
since one of the systemd modules is for eldbus.
eldbus_shutdown() is then no longer functional, as there are
two refs on eldbus.

This patch solves this problem by removing the extra ref on
eldbus from the module if it was already initialized.

This patch now introduces really bad issues since there are now
EO classes that fail to work after module load-unload-reload.

8 years agoEet: Fail gracefully on invalid input
Jean-Philippe Andre [Tue, 29 Dec 2015 06:56:24 +0000 (15:56 +0900)]
Eet: Fail gracefully on invalid input

Consider infinity and NaN as invalid input for
put_float and put_double, since the underlying convert
function can't process them.

This fixes potential errors with incomplete / invalid evas 3d models

8 years agoEina: Fix potential crash in eina_convert_dtoa
Jean-Philippe Andre [Tue, 29 Dec 2015 06:45:35 +0000 (15:45 +0900)]
Eina: Fix potential crash in eina_convert_dtoa

Infinity and NaN should probably just not be converted.

An error would happen in make check while saving evas 3d models.

8 years agoEvas 3d: Fix some potential crashes
Jean-Philippe Andre [Tue, 29 Dec 2015 06:41:51 +0000 (15:41 +0900)]
Evas 3d: Fix some potential crashes

Those were happening before the previous patches.

8 years agoEvas 3d: Fix some issues in model test case
Jean-Philippe Andre [Tue, 29 Dec 2015 06:02:52 +0000 (15:02 +0900)]
Evas 3d: Fix some issues in model test case

Fix some errors, check that file_set and file_save actually work
(rather than have them both fail and pass the test since 0 == 0),
fix temp paths and cleanup unused file.

8 years agoEvas 3d: Improve error messages in model load & save
Jean-Philippe Andre [Tue, 29 Dec 2015 05:51:28 +0000 (14:51 +0900)]
Evas 3d: Improve error messages in model load & save

See make check's evas_suite ouput

8 years agoEvas: Fix potential crash with extraneous eet_shutdown
Jean-Philippe Andre [Tue, 29 Dec 2015 05:33:21 +0000 (14:33 +0900)]
Evas: Fix potential crash with extraneous eet_shutdown

Shutdown eet only if it was actually initialized.

This fixes make check (for me) after applying the previous patch.
It seems on my machine, the gl cache files are not saved properly
from within the make check environment.

8 years ago[Evas] Refactor model's savers and loaders.
perepelits.m [Tue, 29 Dec 2015 04:28:55 +0000 (13:28 +0900)]
[Evas] Refactor model's savers and loaders.

Summary:
Move common part to a separated document.
Make code more readable using smaller functions. (from Task T2713)

Everything is OK with make check.

Reviewers: cedric, raster, Hermet, stefan_schmidt

Reviewed By: stefan_schmidt

Subscribers: jpeg, artem.popov

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

8 years agoecore_con: fix typo preventing IPv6 multicast to work.
Cedric BAIL [Mon, 28 Dec 2015 22:01:15 +0000 (14:01 -0800)]
ecore_con: fix typo preventing IPv6 multicast to work.

Thanks Vincent Torri for spotting it.

8 years agoeo: Fix resource leak
Chris Michael [Mon, 28 Dec 2015 15:09:36 +0000 (10:09 -0500)]
eo: Fix resource leak

Coverity CID1339783 says that we have a potential resource leak here.
'cb' gets allocated via calloc, but is not freed if we end up
returning here

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoecore-drm: Add APIs to support key remap functionality
Sung-Jin Park [Mon, 28 Dec 2015 14:18:05 +0000 (09:18 -0500)]
ecore-drm: Add APIs to support key remap functionality

Summary:
This adds two new APIs to enable/set key remap functionality and
a number of keys to be remapped to the other keys. As of now there is no
api to do this therefore we need to remap using linux utility such as
'setkeycodes'. By adding/calling these apis, each Ecore_Drm_Evdev device
will have its specific key remap hash and we can apply each remapping keys
for each key/keyboard device.

Test Plan:
(1) Enable key remap and set remapping of a key on a specific keyboard device
(2) Plug in the keyboard device and check the key is being remapped or not
(3) Check the other keys are coming normally
(4) Check the the remapping key on a specific keyboard doesn't affect to any other devices

Signed-off-by: Sung-Jin Park <input.hacker@gmail.com>
Reviewers: raster, zmike, gwanglim, ManMower, devilhorns

Subscribers: JHyun, ohduna, cedric, jpeg

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

8 years agoecore-wl2: Fix MIN() macro comparing int vs unsigned int
Chris Michael [Mon, 28 Dec 2015 14:15:01 +0000 (09:15 -0500)]
ecore-wl2: Fix MIN() macro comparing int vs unsigned int

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agowayland: use wl_surface.damage_buffer if available
Derek Foreman [Mon, 28 Dec 2015 14:09:04 +0000 (09:09 -0500)]
wayland: use wl_surface.damage_buffer if available

Summary:
wl_surface.damage_buffer() takes surface damage in buffer co-ordinates.

Right now since we don't use wayland's scaling, transforms, or viewports
it's exactly the same as wl_surface.damage().  In the future if we start
using those features it's much easier to do so with damage_buffer().

Reviewers: zmike, devilhorns

Subscribers: cedric, jpeg

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

8 years agoedje: add text_classes syntax to EDC
Jee-Yong Um [Thu, 24 Dec 2015 06:55:17 +0000 (15:55 +0900)]
edje: add text_classes syntax to EDC

Summary:
text_class can be defined in text_classes block.

T2900

@feature

Reviewers: jpeg, raster

Subscribers: raster, cedric, Jaehyun_Cho, CHAN, kimcinoo

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

8 years ago ecore_x: fix memory leak
Ji-Youn Park [Thu, 24 Dec 2015 04:41:45 +0000 (13:11 +0830)]
   ecore_x: fix memory leak

   fix memory leak in xcb event handler.
   @fix

8 years agoevas: Fix wrong display texture on object.
se.osadchy [Thu, 24 Dec 2015 04:15:37 +0000 (13:15 +0900)]
evas: Fix wrong display texture on object.

Summary:
Fix siquence in multiply of matrices. Need multiply position on scale,
otherwise we have wrong texture.

Reviewers: cedric, Hermet, raster

Subscribers: jpeg

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

8 years agoefl-js: JavaScript Eolian binding
Felipe Magno de Almeida [Mon, 1 Sep 2014 18:08:49 +0000 (15:08 -0300)]
efl-js: JavaScript Eolian binding

To configure efl sources with bindings to use in nodejs add ––with-js=nodejs in configure flags to generate node files

$ configure --with-js=nodejs

and compile normally with:

$ make
$ make install

To use, you have to require efl:

efl = require('efl')

The bindings is divided in two parts: generated and manually
written. The generation uses the Eolian library for parsing Eo files
and generate C++ code that is compiled against V8 interpreter library
to create a efl.node file that can be required in a node.js instance.

@feature

8 years ago ecore_x: fix memory leak
Ji-Youn Park [Thu, 24 Dec 2015 01:27:34 +0000 (09:57 +0830)]
   ecore_x: fix memory leak

   check return value type of XGetWindowProperty.
   @fix

8 years agorename an author.
Hermet Park [Thu, 24 Dec 2015 00:22:00 +0000 (09:22 +0900)]
rename an author.

8 years agoefreetd: send ipc for EFREET_EVENT_DESKTOP_CACHE_BUILD...always
Mike Blumenkrantz [Wed, 23 Dec 2015 18:38:05 +0000 (13:38 -0500)]
efreetd: send ipc for EFREET_EVENT_DESKTOP_CACHE_BUILD...always

since the conversion from dbus -> ecore-ipc, efreetd has failed to
notify when a cache build has completed, instead only sending the current
state of the desktop cache: not built

fix T2733

@fix

8 years agoecore_drm: fix out of source tree compilation
Jérémy Zurcher [Wed, 23 Dec 2015 16:38:02 +0000 (17:38 +0100)]
ecore_drm: fix out of source tree compilation

issue introduces by 10fa1b5

ecore_drm_private.h includes Eldbus.h
Eldbus.h includes Efl.h since 10fa1b5

8 years agoedje - list mouse pressed signals as they are new in edcref
Carsten Haitzler (Rasterman) [Wed, 23 Dec 2015 12:53:55 +0000 (21:53 +0900)]
edje - list mouse pressed signals as they are new in edcref

8 years agoedje_embryo: Fix null dereference issue
Vivek Ellur [Wed, 23 Dec 2015 10:12:06 +0000 (19:12 +0900)]
edje_embryo: Fix null dereference issue

Summary:
Fix Coverity issue ID 1299026

Signed-off-by: Vivek Ellur <vivek.ellur@samsung.com>
Reviewers: cedric, raster

Reviewed By: raster

Subscribers: raster, cedric

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

8 years agoedje_callbacks: Add mouse,pressed,in/out signal.
woochan lee [Wed, 23 Dec 2015 09:58:43 +0000 (18:58 +0900)]
edje_callbacks: Add mouse,pressed,in/out signal.

Summary:
The mouse,in/out signal has missing parts to use.

When user send down event on specific object, then move cursor to outside of object.
the mouse,in signal must be called in case. but it's not in traditional implement.

So i added this signal for support above use case.
In order to satisfy above use case, user can add both of the signals(mouse,in mouse,pressed,in).
(Adding new name of signals to do not break compatibility with before implements.)

@feature

Test Plan:
Add mouse,pressed,in/out program to object.
Press object which added signals before.
Move mouse cursor to out of object, then check the program works.

Reviewers: Hermet, cedric, raster

Subscribers: cedric

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

8 years agoevas: handle existing pointer grabs when changing object pointer mode
Mike Blumenkrantz [Tue, 22 Dec 2015 21:10:36 +0000 (16:10 -0500)]
evas: handle existing pointer grabs when changing object pointer mode

in the case that pointer mode is changed on an object at any time after
a grab has been acquired by the object, grabs/flags must be adjusted for
this and other "pointer-in" objects in order to avoid permanently
breaking canvas events

@fix

8 years agoevas: unset pointer ungrabs when using EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN
Mike Blumenkrantz [Tue, 22 Dec 2015 21:06:30 +0000 (16:06 -0500)]
evas: unset pointer ungrabs when using EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN

I have no idea what this mode was intended to do since there are no docs
and the related code in evas events is undocumented, so I can only speculate.

what I can say for certain is that this mode does grab, in opposition to its name,
and that until this commit any object which sets this pointer mode will
permanently break mouse eventing on the canvas

ref evas SVN 67264

@fix

8 years agoEdje entry: Fix cursor position on mouse up and down
Subodh Kumar [Mon, 21 Dec 2015 14:27:43 +0000 (14:27 +0000)]
Edje entry: Fix cursor position on mouse up and down

Summary:
Fix cursor position on mouse up/down

When mouse down/up over top and bottom  part textblock is not able to set the
char coordinate as it is not inside actual text, edje entry tries to manage it
but textblock has that handling. As a result the cursor jump to first char for
single line and at the last in the multiline last line.

So this patch fixes this and manage to keep the  the mouse coordinate inside
the textblock.

In mobile device this is not really acceptable when user taps over the entry
at some position and cursor jumps to  some arbitrary position.

@fix

Test Plan:
1. Elementary Test
2. Entry 3 (any entry)
3. Try to click little below or above the text in first entry
     single line.Observe cursor jumps to first position
4. Do as above for multiline entry (try to click at the last line little below)
observe cursor jumps to last char.

Reviewers: thiepha, herdsman, tasn

Subscribers: jpeg, tasn, cedric

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

8 years agoEcore wl2: Limit scope of variable (fix shadow warning).
Tom Hacohen [Mon, 21 Dec 2015 11:15:24 +0000 (11:15 +0000)]
Ecore wl2: Limit scope of variable (fix shadow warning).

8 years agoStatic deps unibreak: Update to latest version.
Tom Hacohen [Mon, 21 Dec 2015 11:10:35 +0000 (11:10 +0000)]
Static deps unibreak: Update to latest version.

This version supports Unicode 8.0 and includes fixes over the previous
version.
Reference version: 03ae8dd7d6ce6d19a38c1e62c70afc6ad82513bc

@feature

8 years agoemotion - fix gst back-end to report title and other meta changes
Carsten Haitzler (Rasterman) [Mon, 21 Dec 2015 05:40:41 +0000 (14:40 +0900)]
emotion - fix gst back-end to report title and other meta changes

gst1 back-end didnt report changes in title or other metadata to the
frontend and thusapps never knew it was changing. this fixes that.

@fix

8 years agoEvas textblock: Fix some indentation and formatting.
Subodh Kumar [Fri, 18 Dec 2015 15:14:05 +0000 (15:14 +0000)]
Evas textblock: Fix some indentation and formatting.

Summary: Fix some indentation and formatting.

Reviewers: herdsman, cedric, tasn

Reviewed By: cedric

Subscribers: jpeg, cedric

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

8 years agoecore_wayland: rename session recovery to align namespace
Stefan Schmidt [Fri, 18 Dec 2015 13:51:04 +0000 (14:51 +0100)]
ecore_wayland: rename session recovery to align namespace

Align out extension naming with other unstable wayland protocols.
The unstable protocols from the wayland-protocols repo are prefixed
with a zwp additionally we keep a e prefix for now as we are still
developing this here. No functional change, just rename.

Pointed out by Derek that the session-recovery interface name is a
bit to generic here.

8 years agoecore_idle_exiter: return NULL in eo_finalize() when Ecore_Task_Cb is not set
Sung-Taek Hong [Fri, 18 Dec 2015 08:58:53 +0000 (17:58 +0900)]
ecore_idle_exiter: return NULL in eo_finalize() when Ecore_Task_Cb is not set

Summary: - ecore_idle_exiter_add should return NULL, when Ecore_Task_Cb is not set.

Reviewers: jpeg, woohyun, jaehwan, Jaehyun

Subscribers: cedric, jpeg

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

8 years agoevas/gl : Do not re-preload image data if texture is successfully uploaded with image...
Minkyoung Kim [Fri, 18 Dec 2015 07:49:17 +0000 (16:49 +0900)]
evas/gl : Do not re-preload image data if texture is successfully uploaded with image data.

Summary:
'cached' flag is not enough to check whethere data is loaded and texture is uploaded.
so check more options for prevent re-preload image data on gl-backend.

Test Plan: Local Test (elementary_test : elm images)

Reviewers: jpeg, eunue

Reviewed By: jpeg

Subscribers: cedric, jiin.moon, wonsik, spacegrapher

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

8 years agoEina test: fix warning
Vincent Torri [Fri, 18 Dec 2015 07:45:38 +0000 (16:45 +0900)]
Eina test: fix warning

Reviewers: jpeg

Subscribers: cedric

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

8 years agoEfreet: support language, country and modifer on Windows
Vincent Torri [Fri, 18 Dec 2015 07:45:29 +0000 (16:45 +0900)]
Efreet: support language, country and modifer on Windows

Summary:
On Windows, the environment variables LANG, LC_ALL and LC_MESSAGES
do not exist, so retrieve langage and country modifier directly from the systeM

Test Plan: verify the value with some ptrinF

Reviewers: jpeg

Subscribers: cedric

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

8 years agoEvas examples: Fix examples data dir for out-of-tree builds
Jean-Philippe Andre [Fri, 18 Dec 2015 07:43:47 +0000 (16:43 +0900)]
Evas examples: Fix examples data dir for out-of-tree builds

This is a quick fix to make out-of-tree builds of the examples
work fine. Don't pass "." as teh resource dir root, instead
pass the path to the source files' folder.

8 years agoEvas 3d: Add example for convex hull
perepelits.m [Fri, 18 Dec 2015 04:50:17 +0000 (13:50 +0900)]
Evas 3d: Add example for convex hull

Summary: This example is a testing example for comparison convex
hulls built by our algorithm and in Blender.

Reviewers: raster, Hermet, cedric, jpeg, perepelits.m

Subscribers: jpeg, artem.popov

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

8 years agoecore-wl2: do not flush wl_display during cleanup
Mike Blumenkrantz [Thu, 17 Dec 2015 18:10:22 +0000 (13:10 -0500)]
ecore-wl2: do not flush wl_display during cleanup

this serves no functional purpose and deadlocks compositors

8 years agoRevert "evas: fix some indentation and formatting in textblock."
Tom Hacohen [Thu, 17 Dec 2015 12:51:37 +0000 (12:51 +0000)]
Revert "evas: fix some indentation and formatting in textblock."

This patch was *REJECTED*. I don't understand why it was snuck in among
a batch of 24 other unrelated patches. That made me miss it originally,
  but found it now. This is wrong and shouldn't be in.

This reverts commit 3f0d0daf0d1a9b96cf112a0ee741b4549e9d2828.

8 years agoEdje entry: Fix issue with width calculation and padding
Jaeyong Hwang [Thu, 17 Dec 2015 12:44:29 +0000 (12:44 +0000)]
Edje entry: Fix issue with width calculation and padding

Summary:
The size of the style pad isn't considered when the min value of the
textblock is calculated.  In case of putting the lable that there is an
outline in the box, the letter is cut.  So, I revised so that
evas_object_textblock_style_insets_get could be called after a
evas_object_textblock_size_formatted_get in
_edje_object_size_min_restricted_calc function.  And then the style pad was
considered in the result value of the edje_object_size_min_calc.

@fix

Test Plan:

EAPI_MAIN int
elm_main(int argc, char **argv)
{
   Evas_Object *box, *label;
   Evas_Object *win;

   elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);

   win = elm_win_util_standard_add("Font", "FONT");
   elm_win_autodel_set(win, EINA_TRUE);

   box = elm_box_add(win);
   elm_box_padding_set(box, 10, 0);
   elm_box_align_set(box, 1, 0.5);
   evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
   evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
   elm_win_resize_object_add(win, box);
   evas_object_show(box);

   label = elm_label_add(box);
   elm_object_text_set(label, "<font=default align=rignt color=#ffffff font_size=200 style=soft_outline outline_color=#ff0000ff>label");
   elm_box_pack_end(box, label);
   evas_object_show(label);

   evas_object_resize(win, 500, 300);
   evas_object_show(win);
   elm_run();

   return 0;
}
ELM_MAIN();

Reviewers: herdsman, tasn

Reviewed By: tasn

Subscribers: id213sin, cedric, jpeg

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

8 years agoEvas textblock: Use width of item format to position cursor.
Subodh Kumar [Thu, 17 Dec 2015 11:54:35 +0000 (11:54 +0000)]
Evas textblock: Use width of item format to position cursor.

Summary:
Use width of item format to position cursor.

Sometimes it becomes very difficult to
position cursor over item and selection
becomes very difficult as we position the
cursor once the input X coord reached end of the item,
like one attached in the test plan. So this patch
decides over 50% of item width for X coord reaches
to position it at start or end.

@ix

Test Plan:
Attached setup shows how difficult to position cursor at the end when clicked
over item and selection is also very difficult. Consider such case in mobile
device, its becomes impossible to position cursor at the end and selection is
too much difficult.

{F27036}

Also added test cases in evas test suite

Reviewers: herdsman, tasn

Subscribers: cedric, jpeg

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

8 years agoevas_callback: Remove callbacks in reverse order with evas_event_callback_del
Sung-Taek Hong [Thu, 17 Dec 2015 07:03:26 +0000 (16:03 +0900)]
evas_callback: Remove callbacks in reverse order with evas_event_callback_del

Summary:
 - This function is deprecated, because del_full should be used instead.
 - Still, the documentation specifies in which order the callbacks should
 - be deleted.

Reviewers: Hermet, jpeg, jaehwan

Subscribers: cedric, jpeg

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

8 years agoecore_wayland: add listener for uuid and provide already existing one
Stefan Schmidt [Mon, 7 Dec 2015 23:08:20 +0000 (00:08 +0100)]
ecore_wayland: add listener for uuid and provide already existing one

Setup a listener to receive an uid from the compositor. If we already have
one during creation, aka we are re-connecting to recover a session, we provide
it to the compositor so it can look our attributes up based on it. Again hidden
behind and env var to avoid problems with other developments, for now.

ref T2922

8 years agoecore_wayland: store uuid received from compositor
Stefan Schmidt [Mon, 7 Dec 2015 23:06:38 +0000 (00:06 +0100)]
ecore_wayland: store uuid received from compositor

If we get an uuid assigned from the compositor we will store them locally to
provide it later on if needed.

ref T2922

8 years agoecore_wayland: create session recovery listener only if env var is set
Stefan Schmidt [Mon, 7 Dec 2015 22:39:10 +0000 (23:39 +0100)]
ecore_wayland: create session recovery listener only if env var is set

Same as for the global we make sure here we only add the listener if the,
for now, needed env var is set.

ref T2922

8 years agoecore_wayland: only bind session recovery interface when env var is set
Stefan Schmidt [Mon, 7 Dec 2015 22:31:13 +0000 (23:31 +0100)]
ecore_wayland: only bind session recovery interface when env var is set

To avoid trouble for other wayland testing we hide the session recovery work
behind EFL_WAYLAND_SESSION_RECOVERY. Without this env var being set we do not
bind the global.

ref T2922

8 years agoecore_wayland: remove disabled code for session recovery listener
Stefan Schmidt [Mon, 7 Dec 2015 22:07:28 +0000 (23:07 +0100)]
ecore_wayland: remove disabled code for session recovery listener

The listener is handled inside ecore_wl_window. Remove the dead code from here.

8 years agoedje_cc: redo part type setting to be even more correct
Mike Blumenkrantz [Wed, 16 Dec 2015 20:53:50 +0000 (15:53 -0500)]
edje_cc: redo part type setting to be even more correct

when changing the type of a part which already has descriptions, it's
necessary to avoid copying any of the previous type-specific desc data

this should be the last of them...

@fix

8 years agoedje_cc: correctly copy part descriptions when setting part type
Mike Blumenkrantz [Wed, 16 Dec 2015 19:35:19 +0000 (14:35 -0500)]
edje_cc: correctly copy part descriptions when setting part type

in the case where a part is inherited, changing the type will lead to
broken part/program lookups for the part during resolving in write-out;
memcpy alone is not enough to fix this.

@fix

8 years agoedje_cc: move part desc free function within file
Mike Blumenkrantz [Wed, 16 Dec 2015 19:38:07 +0000 (14:38 -0500)]
edje_cc: move part desc free function within file

no funcitonal changes

8 years agoedje_cc: terminate filter file scripts
Mike Blumenkrantz [Wed, 16 Dec 2015 19:34:20 +0000 (14:34 -0500)]
edje_cc: terminate filter file scripts

==24030== Invalid read of size 1
==24030==    at 0x4A0AC77: strcmp (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030==    by 0x598A9DC: _eet_dictionary_lookup (eet_dictionary.c:69)
==24030==    by 0x598AA93: eet_dictionary_string_add (eet_dictionary.c:103)
==24030==    by 0x598107B: eet_data_put_string (eet_data.c:857)
==24030==    by 0x598213F: eet_data_put_type (eet_data.c:1433)
==24030==    by 0x59895AB: eet_data_put_unknown (eet_data.c:4798)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x59894A4: eet_data_put_array (eet_data.c:4760)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x5989617: eet_data_put_unknown (eet_data.c:4807)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x5983E06: eet_data_write_cipher (eet_data.c:2396)
==24030==    by 0x5983E92: eet_data_write (eet_data.c:2412)
==24030==    by 0x406BC2: data_thread_head (edje_cc_out.c:674)
==24030==    by 0x406D51: data_write_header (edje_cc_out.c:717)
==24030==    by 0x40B52E: data_write (edje_cc_out.c:2439)
==24030==    by 0x40563D: main (edje_cc.c:399)
==24030==  Address 0xf45cb7b is 0 bytes after a block of size 347 alloc'd
==24030==    at 0x4A089C7: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030==    by 0x414BAC: mem_alloc (edje_cc_mem.c:15)
==24030==    by 0x41B66A: st_filters_filter_file (edje_cc_handlers.c:4718)
==24030==    by 0x410EDA: new_statement (edje_cc_parse.c:229)
==24030==    by 0x41227C: parse (edje_cc_parse.c:719)
==24030==    by 0x412E5C: compile (edje_cc_parse.c:1044)
==24030==    by 0x405624: main (edje_cc.c:394)
==24030==
==24030== Invalid read of size 1
==24030==    at 0x4A0AC77: strcmp (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030==    by 0x598AAFB: eet_dictionary_string_add (eet_dictionary.c:109)
==24030==    by 0x598107B: eet_data_put_string (eet_data.c:857)
==24030==    by 0x598213F: eet_data_put_type (eet_data.c:1433)
==24030==    by 0x59895AB: eet_data_put_unknown (eet_data.c:4798)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x59894A4: eet_data_put_array (eet_data.c:4760)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x5989617: eet_data_put_unknown (eet_data.c:4807)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x5983E06: eet_data_write_cipher (eet_data.c:2396)
==24030==    by 0x5983E92: eet_data_write (eet_data.c:2412)
==24030==    by 0x406BC2: data_thread_head (edje_cc_out.c:674)
==24030==    by 0x406D51: data_write_header (edje_cc_out.c:717)
==24030==    by 0x40B52E: data_write (edje_cc_out.c:2439)
==24030==    by 0x40563D: main (edje_cc.c:399)
==24030==  Address 0xf45cb7b is 0 bytes after a block of size 347 alloc'd
==24030==    at 0x4A089C7: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030==    by 0x414BAC: mem_alloc (edje_cc_mem.c:15)
==24030==    by 0x41B66A: st_filters_filter_file (edje_cc_handlers.c:4718)
==24030==    by 0x410EDA: new_statement (edje_cc_parse.c:229)
==24030==    by 0x41227C: parse (edje_cc_parse.c:719)
==24030==    by 0x412E5C: compile (edje_cc_parse.c:1044)
==24030==    by 0x405624: main (edje_cc.c:394)

@fix

8 years agoedje_cc: track parts for descriptions, ensure part types match when inheriting
Mike Blumenkrantz [Wed, 16 Dec 2015 19:31:49 +0000 (14:31 -0500)]
edje_cc: track parts for descriptions, ensure part types match when inheriting

since it's now possible to inherit parts, it's possible that inheriting from
a different part type can lead to memory errors in the case where one part
has a larger desc struct than the other

@fix

8 years agoefreet_icon_cache_create: null theme eet file to avoid double free
Mike Blumenkrantz [Wed, 16 Dec 2015 18:39:33 +0000 (13:39 -0500)]
efreet_icon_cache_create: null theme eet file to avoid double free

@fix

8 years agolz4: Update our internal copy to release r131
Stefan Schmidt [Wed, 16 Dec 2015 10:53:11 +0000 (11:53 +0100)]
lz4: Update our internal copy to release r131

Clang and GCC optimizations and bug fixes. Have a look at the NEWS file for
more details.

8 years agoeina: API for base64url decode.
Srivardhan Hebbar [Wed, 16 Dec 2015 07:15:43 +0000 (16:15 +0900)]
eina: API for base64url decode.

Summary:
eina_base64url_decode API.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: jpeg, cedric

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

8 years agoeina: Added testcase for base64url encoding API.
Srivardhan Hebbar [Wed, 16 Dec 2015 07:11:27 +0000 (16:11 +0900)]
eina: Added testcase for base64url encoding API.

Summary:
Depends on D414

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: jpeg, cedric

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

8 years agoEvas GL: Fix shaders for bigendian
Jean-Philippe Andre [Wed, 16 Dec 2015 06:55:10 +0000 (15:55 +0900)]
Evas GL: Fix shaders for bigendian

Fixes T2918

8 years agoedje: add size_class test case
Jee-Yong Um [Wed, 16 Dec 2015 05:53:59 +0000 (14:53 +0900)]
edje: add size_class test case

Summary: add edje size_class APIs' test case

Reviewers: jpeg

Reviewed By: jpeg

Subscribers: cedric

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

8 years agoemile: fix compilation with --enable-liblz4
Hein-Pieter van Braam [Wed, 16 Dec 2015 01:15:46 +0000 (17:15 -0800)]
emile: fix compilation with --enable-liblz4

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoevas: update/clarify RENDER_FLUSH callback docs
Mike Blumenkrantz [Tue, 15 Dec 2015 22:57:37 +0000 (17:57 -0500)]
evas: update/clarify RENDER_FLUSH callback docs

8 years agoevas: do not unset/delete master clip after every frame
Mike Blumenkrantz [Tue, 15 Dec 2015 22:21:42 +0000 (17:21 -0500)]
evas: do not unset/delete master clip after every frame

this is not ideal since it triggers a client-side rerender of every object
which was clipped to the master clip (double render) and then this ends up
forcing the server to rerender the same area twice as well

not only that, it causes all surface damages to to be the size of the entire
window - framespace for every frame

@fix

8 years agoevas: trigger FLUSH_PRE callback prior to kicking off an async render
Mike Blumenkrantz [Tue, 15 Dec 2015 22:18:36 +0000 (17:18 -0500)]
evas: trigger FLUSH_PRE callback prior to kicking off an async render

while not occurring immediately before flush as in sync rendering, this
is functionally close enough that it will serve the purpose for which the
callback was intended, namely receiving a callback that occurs after render
update calculations have occurred but before flush happens

@fix

ref cbb447c878ef779230ebf4470b615b8276c50fa2

8 years agoevas: resize master clip if framespace|viewport.changed is set
Mike Blumenkrantz [Tue, 15 Dec 2015 22:17:36 +0000 (17:17 -0500)]
evas: resize master clip if framespace|viewport.changed is set

8 years agoevas: do not add unclipped smart members to the master clip
Mike Blumenkrantz [Tue, 15 Dec 2015 22:16:26 +0000 (17:16 -0500)]
evas: do not add unclipped smart members to the master clip

this is probably a pretty unlikely scenario, but messing with smart
members in this way is probably not a great idea

@fix

8 years agoecore-evas wayland: move frame sending to pre-flush callback
Mike Blumenkrantz [Tue, 15 Dec 2015 22:14:43 +0000 (17:14 -0500)]
ecore-evas wayland: move frame sending to pre-flush callback

it was possible to deadlock rendering if a pre-render occurred but
the resulting render had no updated regions

@fix

8 years agoecore-drm: Fix failure of setting/closing evdev->fd which causes fd leak
Duna Oh [Tue, 15 Dec 2015 15:02:49 +0000 (10:02 -0500)]
ecore-drm: Fix failure of setting/closing evdev->fd which causes fd leak

Summary:
When a input device is plugged in, _cb_open_restricted() is called before creating evdev.
So setting fd value on evdev was failed in _cb_open_restricted() and also closing evdev->fd was invalid.
Using a eina_hash which has 'path-fd' pairs, we can find fd value after evdev is created.

@fix

Test Plan:
(1) Multiple input devices are connected. Their evdev->fd remains zero or initial value.
(2) When one of those devices are plugged out, fd leak would happen.

Reviewers: raster, zmike, gwanglim, stefan_schmidt, devilhorns, ManMower

Subscribers: cedric, jpeg, Jeon, input.hacker

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

8 years agoEina safety: Set error flag in case of safety check error
Jean-Philippe Andre [Tue, 15 Dec 2015 08:39:37 +0000 (17:39 +0900)]
Eina safety: Set error flag in case of safety check error

Eina_Error is almost not used at all. Meh.

8 years agoEina safety: Add internal function to log errors
Jean-Philippe Andre [Tue, 15 Dec 2015 07:56:13 +0000 (16:56 +0900)]
Eina safety: Add internal function to log errors

The main reason is convenience for debugging when using GDB,
this will give a simple breakpoint for all safety check failures.

Also, this creates a more visible log domain (red).

8 years agoEina log: Disable backtrace by default for dev builds
Jean-Philippe Andre [Tue, 15 Dec 2015 06:27:20 +0000 (15:27 +0900)]
Eina log: Disable backtrace by default for dev builds

The EINA_LOG_BACKTRACE thing is aimed at production environments,
so we can extract a backtrace from a log file post-mortem, but not
for continuous development of EFL itself.

I know this should make a few people happy.

8 years agoEina log: Fix meaning of EINA_LOG_BACKTRACE env
Jean-Philippe Andre [Tue, 15 Dec 2015 06:20:12 +0000 (15:20 +0900)]
Eina log: Fix meaning of EINA_LOG_BACKTRACE env

Most eina log env vars mean "if loglevel <= val then print log"
but eina_log_backtrace was "if loglevel < val" which I thought
was a bit confusing. The default behaviour is unchanged.

8 years agoExamples: Remove strange characters at beginning of file
Jean-Philippe Andre [Tue, 15 Dec 2015 05:55:20 +0000 (14:55 +0900)]
Examples: Remove strange characters at beginning of file

8 years agoExamples, Evas: remove MAX_PATH, which is already defined on Windows, and not used...
Vincent Torri [Tue, 15 Dec 2015 05:49:33 +0000 (14:49 +0900)]
Examples, Evas: remove MAX_PATH, which is already defined on Windows, and not used in this example

Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: jpeg

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

8 years agoExample, Ecore: fix compilation on Windows
Vincent Torri [Tue, 15 Dec 2015 05:48:36 +0000 (14:48 +0900)]
Example, Ecore: fix compilation on Windows

Summary:
The socket API is different on Windows and on Linux.

This is the perfect example where we need to abstract the socket API in Eina :
1) to avoid all these includes specific to sockets
2) to avoid on Windows undefined behavior : close(socket); is undefined behavior if socket is indeed a socket

Reviewers: jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Projects: #efl

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

8 years agoExamples Evas: 'far' and 'near' are Windows keywords, so rename them to far_ and...
Vincent Torri [Tue, 15 Dec 2015 05:48:18 +0000 (14:48 +0900)]
Examples Evas: 'far' and 'near' are Windows keywords, so rename them to far_ and near_

Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: jpeg

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

8 years agoExamples: Fix compilation on Windows for eina, eio, elocation and eolian_cxx
Vincent Torri [Tue, 15 Dec 2015 05:43:27 +0000 (14:43 +0900)]
Examples: Fix compilation on Windows for eina, eio, elocation and eolian_cxx

Summary:
When compiling on Windows, Evil.h must be included, so update Makefile.am
accordinglY

Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: jpeg

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

8 years agoEvas VG: Fix clang warning
Jean-Philippe Andre [Tue, 15 Dec 2015 05:35:58 +0000 (14:35 +0900)]
Evas VG: Fix clang warning

8 years agoEina Xml: Fix clang warnings
Jean-Philippe Andre [Tue, 15 Dec 2015 05:35:46 +0000 (14:35 +0900)]
Eina Xml: Fix clang warnings

8 years agoEvas GL: Fix clang warnings
Jean-Philippe Andre [Tue, 15 Dec 2015 05:12:43 +0000 (14:12 +0900)]
Evas GL: Fix clang warnings

Use pragma diagnostic like with GCC since we want to set the function
pointer even though we deprecate the function.

8 years agoEina value: Fix clang warnings (use NULL instead of bool)
Jean-Philippe Andre [Tue, 15 Dec 2015 05:12:21 +0000 (14:12 +0900)]
Eina value: Fix clang warnings (use NULL instead of bool)

8 years agoEvas filters: Temporarily disable failing tests
Jean-Philippe Andre [Mon, 14 Dec 2015 11:28:13 +0000 (20:28 +0900)]
Evas filters: Temporarily disable failing tests

Apparently a special font makes the vflip tests crash. vflip
definitely needs to be fixed.

I'm currently working on the filters, so I'll get back to these.
This is a temporary patch.

8 years agoEolian gen: Don't fail if file is empty (--gi)
Jean-Philippe Andre [Mon, 14 Dec 2015 07:14:29 +0000 (16:14 +0900)]
Eolian gen: Don't fail if file is empty (--gi)

@fix

8 years agoEcore_Win32: let cursors on the non-client area (the borders) be like the default...
Vincent Torri [Sat, 12 Dec 2015 12:41:04 +0000 (13:41 +0100)]
Ecore_Win32: let cursors on the non-client area (the borders) be like the default ones

After the support of the X11 cursors on Windows, the cursors were set for the whole
window (even the borders). Now we let the system use the default cursors for the borders
and we use the cursors set by the API for the client area only

8 years agoEolian test: use eina_environment_tmp_get() instead of deprecated code
Vincent Torri [Sat, 12 Dec 2015 10:54:33 +0000 (11:54 +0100)]
Eolian test: use eina_environment_tmp_get() instead of deprecated code

8 years agoEina test: declare clock_gettime() by including time.h, like it should be
Vincent Torri [Sat, 12 Dec 2015 10:53:35 +0000 (11:53 +0100)]
Eina test: declare clock_gettime() by including time.h, like it should be

8 years agoEina test strbuf: the macro TEXT already exists on Windows so rename it to TEST_TEXT
Vincent Torri [Sat, 12 Dec 2015 10:37:54 +0000 (11:37 +0100)]
Eina test strbuf: the macro TEXT already exists on Windows so rename it to TEST_TEXT

8 years agoEvas example: fix warning
Vincent Torri [Sat, 12 Dec 2015 10:26:36 +0000 (11:26 +0100)]
Evas example: fix warning

Summary:

Test Plan:

Reviewers: cedric

Subscribers:

8 years agoEvas Textblock: Fix NULL dereferencing issue
Youngbok Shin [Sun, 13 Dec 2015 15:13:13 +0000 (17:13 +0200)]
Evas Textblock: Fix NULL dereferencing issue

Summary:
Even if the given two cursor is NULL, it shouldn't be crashed.
@fix

Test Plan:
Test case included in Evas test suite.
Run "make check".

Reviewers: herdsman, tasn

Subscribers: cedric, jpeg

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

8 years agoevas - fix evas module locks to init/del when movile created/destroyed
Carsten Haitzler (Rasterman) [Sat, 12 Dec 2015 14:37:16 +0000 (23:37 +0900)]
evas - fix evas module locks to init/del when movile created/destroyed

we initted when we load and unload. this led to races with
locking/unlocking elsewhere as these expected us to be initted and we
were not yet. this fixes that!

@fix

8 years agoecore-evas-wl: Fix copy/paste errors
Chris Michael [Fri, 11 Dec 2015 16:34:42 +0000 (11:34 -0500)]
ecore-evas-wl: Fix copy/paste errors

This fixes fat-finger copy/paste errors when copying functions from
ecore_evas_wayland_shm to ecore_evas_wayland_egl

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-evas-wl: Defer creating surfaces for wayland canvas
Chris Michael [Fri, 11 Dec 2015 16:26:24 +0000 (11:26 -0500)]
ecore-evas-wl: Defer creating surfaces for wayland canvas

This code adds support for deferring of surface creation and showing
inside Ecore_Evas Wayland. This is needed for Enlightenment so that it
does not try to create or show surfaces until the compositor has had a
chance to sync globals. This fixes an issue where early surface
creation would cause a crash in the compositor due to globals not
being syncd.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoecore-wl2: Add new event for sync done
Chris Michael [Fri, 11 Dec 2015 16:24:32 +0000 (11:24 -0500)]
ecore-wl2: Add new event for sync done

This removes the usage of ecore_main_loop_iterate inside of the
display_connect function. It creates a new event type for when display
sync is done, this was we can defer surface creation and EE showing
until the compositor has had a chance to synchronize globals. We need
this for Enlightenment so that it does not try to create error dialogs
too early and thus crash due to not having sync'd globals yet

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
8 years agoDraw: Fix compile error by removing duplicate definition.
Jaehyun Cho [Fri, 11 Dec 2015 07:58:55 +0000 (16:58 +0900)]
Draw: Fix compile error by removing duplicate definition.

8 years agoRevert "evas: trigger RENDER_FLUSH callbacks during async render"
Carsten Haitzler (Rasterman) [Fri, 11 Dec 2015 06:10:53 +0000 (15:10 +0900)]
Revert "evas: trigger RENDER_FLUSH callbacks during async render"

This reverts commit cbb447c878ef779230ebf4470b615b8276c50fa2.

1. this is wrong because evas_render_pipe_wakeup() is being called IN
THE RENDER THREAD. it... SENDS a wakeup back to the mainloop with

   evas_async_events_put(data, 0, NULL, evas_render_async_wakeup);

and you can see that evas_render_async_wakeup() calls
evas_render_wakeup() and in evas_render_wakeup() flush pre/post are
called, but since the trhead does the flush we cant realyl call
before/after, but it retains order... IF there are updates (haveup).

so calling these callbacks FROM a thread is now leading to apps
mysteriously exiting. this is mucho bad. just at random i now have my
terminals exiting.

8 years agoEvas GL: Fix compile error by comment out removed function.
Jaehyun Cho [Fri, 11 Dec 2015 05:10:43 +0000 (14:10 +0900)]
Evas GL: Fix compile error by comment out removed function.