platform/upstream/efl.git
8 years agoecore_cocoa: implement and const-correct window geometry getter
Jean Guyomarc'h [Tue, 5 Jan 2016 22:45:50 +0000 (23:45 +0100)]
ecore_cocoa: implement and const-correct window geometry getter

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agotests cxx: remove superfluous output to stdout
Stefan Schmidt [Wed, 2 Mar 2016 14:32:09 +0000 (15:32 +0100)]
tests cxx: remove superfluous output to stdout

These outputs are not giving any more information besides what we already get:

Ecore C++ headers compilePASS: tests/ecore_cxx/cxx_compile_test

(Ignoring the problem with the newline) The test name tells it all and we are
just filling the log.

8 years agobuild: fix problems with coverage check build where some files are not found
Stefan Schmidt [Wed, 2 Mar 2016 12:14:00 +0000 (13:14 +0100)]
build: fix problems with coverage check build where some files are not found

Switch to use a lcov config file which geninfo_auto_base and remove hard coding
the base dir  to src/lib. geninfo_auto_base is designed for a use case like
ours where we have several base dirs (lib, bin, tests, ...) and it detects them
automatically. This fixes failures in a coverage run where the file is simply
looked for in the wrong directory.

8 years agobuild: enhance generated html output from coverage report
Stefan Schmidt [Wed, 2 Mar 2016 09:02:37 +0000 (10:02 +0100)]
build: enhance generated html output from coverage report

We do not handle branch coverage so remove that part of the output. On the
other hand at a legend to allow people to understand the color meanings.

8 years agoEvas filters: Fix meaning of data 'execute' flag
Jean-Philippe Andre [Wed, 2 Mar 2016 03:01:15 +0000 (12:01 +0900)]
Evas filters: Fix meaning of data 'execute' flag

The doc said it would behave like "value = data" but actually
the data part was executed directly. This should fix that.

8 years agoEvas filters: Mark object as changed on data_set
Jean-Philippe Andre [Wed, 2 Mar 2016 02:37:36 +0000 (11:37 +0900)]
Evas filters: Mark object as changed on data_set

This fixes the new test case.

8 years agoEvas filter: Add new test case for state and data set
Jean-Philippe Andre [Mon, 29 Feb 2016 10:07:50 +0000 (19:07 +0900)]
Evas filter: Add new test case for state and data set

8 years agoEdje calc: Simplify code readability with eo_do
Jean-Philippe Andre [Mon, 29 Feb 2016 09:41:28 +0000 (18:41 +0900)]
Edje calc: Simplify code readability with eo_do

This removes an absolutely crazy use of eo_do where all calls
to the efl_gfx_filter functions where factorized in an unreadable
manner. Hopefully eo_do will disappear soon.

8 years agoEvas filters: Use fail_if instead of fail in test case
Jean-Philippe Andre [Mon, 29 Feb 2016 09:17:46 +0000 (18:17 +0900)]
Evas filters: Use fail_if instead of fail in test case

This will give more accurate information in case of failure.

8 years agoEvas text: Add legacy filter APIs
Jean-Philippe Andre [Mon, 29 Feb 2016 06:47:36 +0000 (15:47 +0900)]
Evas text: Add legacy filter APIs

Those should now be considered stable, even if their internals
may change. Also, these APIs are in Tizen so adding these will
help merging Tizen EFL and upstream.

8 years agoEvas filters: Fix bad stringshare usage
Jean-Philippe Andre [Mon, 29 Feb 2016 08:04:13 +0000 (17:04 +0900)]
Evas filters: Fix bad stringshare usage

Make sure the filter uses properly initialized state names and
don't call stringshare_del on a static string.

8 years agoEfl.Gfx.Filter: Rework APIs and mark as stable
Jean-Philippe Andre [Mon, 29 Feb 2016 06:23:18 +0000 (15:23 +0900)]
Efl.Gfx.Filter: Rework APIs and mark as stable

- Remove @beta flags,
- Update @since to match stabilization,
- Change methods to properties with keys,
- Use eo_prefix and add filter_ prefix to all properties since
  they use very generic names,

The filter API stays under Efl.Gfx since there are other kinds of
filters, and this one is the particular "graphical filter" or
"effect" API.

The EO API mostly not change from an application point of view,
except for "source_get" which now returns a string directly. Also,
state and data can now be queried.

8 years agoefl - fix threadqueue spinlock destruction on openbsd - doesn't like it
Carsten Haitzler (Rasterman) [Wed, 2 Mar 2016 01:33:40 +0000 (10:33 +0900)]
efl - fix threadqueue spinlock destruction on openbsd - doesn't like it

so the spinlock on the threadqueue block pool it taken on shutdownn,
while the block pool is freed up then its is destroyed, but openbsd
very much doesnt like this and returns an error, so release the lock
before destroying it.

@fix

8 years agoedje entry: fix gcc warnings about possibly uninitialized variables
Carsten Haitzler (Rasterman) [Tue, 1 Mar 2016 04:19:08 +0000 (13:19 +0900)]
edje entry: fix gcc warnings about possibly uninitialized variables

this fixes warnings from gcc specifically:

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

and the likes...

8 years agoedje epp - fix gcc warning about possible unused var usage
Carsten Haitzler (Rasterman) [Tue, 1 Mar 2016 04:15:41 +0000 (13:15 +0900)]
edje epp - fix gcc warning about possible unused var usage

gcc now is complaining about out ancient cpp code possibly using
newlines as undefined. this should keep this warning quiet - there
isnt a real performance issue here.

bin/edje/epp/cpplib.c: In function ‘cpp_get_token’:
bin/edje/epp/cpplib.c:4602:15: warning: ‘newlines’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
       else if (newlines > 0)

@fix

8 years agoevas render2 - move empty region data into const land so it is in RO mem
Carsten Haitzler (Rasterman) [Tue, 1 Mar 2016 04:13:33 +0000 (13:13 +0900)]
evas render2 - move empty region data into const land so it is in RO mem

this should ensure these constants are in read-only memory if
possible iof they are marked as const as well as static

8 years agoevas - render2 - silence new gcc warnings about possibly freeing static
Carsten Haitzler (Rasterman) [Tue, 1 Mar 2016 04:09:50 +0000 (13:09 +0900)]
evas - render2 - silence new gcc warnings about possibly freeing static

This one is new:

In file included from lib/evas/canvas/render2/evas_render2.c:5:0:
In function ‘_region_break.isra.5’,
    inlined from ‘region_add’ at
lib/evas/canvas/render2/region.c:847:41:
lib/evas/canvas/render2/region.c:107:62: warning: attempt to free a
non-heap object ‘_region_brokendata’ [-Wfree-nonheap-object]
 #define FREE_DATA(reg) if ((reg)->data && (reg)->data->size)
free((reg)->data)
                                                              ^
                                                              lib/evas/canvas/render2/region.c:184:4:
note: in expansion of macro ‘FREE_DATA’
    FREE_DATA(region);

While it won't actually free is because if using brokendata the size
is 0 and it'll skip it, add in a check to see if region->data is the
brokendata static

8 years agoeolian-cxx: Fix C++ events with new Eo_Event_Cb signature
Felipe Magno de Almeida [Mon, 29 Feb 2016 14:01:04 +0000 (11:01 -0300)]
eolian-cxx: Fix C++ events with new Eo_Event_Cb signature

8 years agoefl+edje: add EFL_VERSION_1_18 define for detecting 1.18 feature support
Mike Blumenkrantz [Mon, 29 Feb 2016 12:30:31 +0000 (07:30 -0500)]
efl+edje: add EFL_VERSION_1_18 define for detecting 1.18 feature support

this define means that any 1.18 feature can now be detected by testing for
the presence of this define, even before the release has gone out

for future (non-bugfix) releases, further defines should be created in addition
to this one in order to provide detection for features in each version

8 years agoEo: Add an interface for other interfaces to inherit from.
Tom Hacohen [Mon, 29 Feb 2016 11:56:17 +0000 (11:56 +0000)]
Eo: Add an interface for other interfaces to inherit from.

8 years agoUpdate documentation text
Shuhrat Dehkanov [Mon, 29 Feb 2016 12:02:20 +0000 (07:02 -0500)]
Update documentation text

Summary:
The word 'english' has several issues:
 - the whole documentation and source code is in English,
   there is no point in mentioning here specifically
 - the character 'E' needs to be capitalized, as in
   Ecore, Evas, Elementary

Reviewers: zmike, herdsman

Subscribers: cedric, seoz, jpeg

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

8 years agoEdje edit: Fix wrong return value type.
Tom Hacohen [Mon, 29 Feb 2016 11:50:52 +0000 (11:50 +0000)]
Edje edit: Fix wrong return value type.

8 years agoEo callbacks: Migrate all of the EFL to the new event cb signatures.
Tom Hacohen [Mon, 29 Feb 2016 10:18:40 +0000 (10:18 +0000)]
Eo callbacks: Migrate all of the EFL to the new event cb signatures.

8 years agoEo events: Change event callback signature.
Tom Hacohen [Mon, 29 Feb 2016 09:12:35 +0000 (09:12 +0000)]
Eo events: Change event callback signature.

Change the Eo event callback signature to what suggested by Marcel
Hollerbach in the ML (Thread: EFL interface change - Animator).

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

Where Eo_Event is a structure that holds these parameters.

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

@feature

8 years agoEvas textblock: add a stringshare fastpath to markup_set
Daniel Hirt [Sun, 28 Feb 2016 15:49:20 +0000 (17:49 +0200)]
Evas textblock: add a stringshare fastpath to markup_set

This optimization makes use of already stringshare'd text and avoids
unnecessary stringshare_add calls in markup_set. It improves the
performance of edje_calc when reapplying text to the textblock part.

8 years agoEvas textblock: fix cached markup's stringshare refs
Daniel Hirt [Sun, 28 Feb 2016 15:33:40 +0000 (17:33 +0200)]
Evas textblock: fix cached markup's stringshare refs

The last fix 34020ed131c7a5da4d60bb3a452fac0d9ee5fdd1 was missing a
stringshare_del for the NOP case of markup_set. It led to a
constantly increasing ref count of the cached markup.

@fix

8 years agoEvas textblock tests: Fix wrong test suite tests.
Tom Hacohen [Fri, 26 Feb 2016 09:34:36 +0000 (09:34 +0000)]
Evas textblock tests: Fix wrong test suite tests.

The tests were assuming that textblock returns a sanitised utf8 string.
This is not always correct, because textblock may cache and return the
set utf8 markup if the text hasn't changed since the last set.

8 years agoEvas Filter: Use Eo.Base.constructor in the mixin
Jean-Philippe Andre [Fri, 26 Feb 2016 09:24:47 +0000 (18:24 +0900)]
Evas Filter: Use Eo.Base.constructor in the mixin

This is made possible by inheriting first from an interface
instead of Eo.Base, thus implementing the Eo.Base interface.

8 years agoEdje textblock: Assume textblock knows to deal with setting the same markup.
Tom Hacohen [Fri, 26 Feb 2016 09:07:20 +0000 (09:07 +0000)]
Edje textblock: Assume textblock knows to deal with setting the same markup.

Edje was trying to be smart and ask textblock for its markup and compare
with its own cache before setting it again. This is completely wrong,
and textblock is smart enough to deal with it now.

@fix

8 years agoEvas textblock: Fix markup cache, was completely broken.
Tom Hacohen [Fri, 26 Feb 2016 09:06:00 +0000 (09:06 +0000)]
Evas textblock: Fix markup cache, was completely broken.

The markup cache was completely broken. It was not compared correctly,
so it wasn't even used, but regardless it was cleared just after being
set in some of the cases.

This is the first part of a performance regression fix in elm label.

@fix

8 years agoedje cc: make the unnamed party non-fatal but punishhed by a pause
Carsten Haitzler (Rasterman) [Wed, 24 Feb 2016 22:52:41 +0000 (07:52 +0900)]
edje cc: make the unnamed party  non-fatal but punishhed by a pause

allow old edc code that was bad with no named parts to still build BUT
punish with a sleep for 10 seconds to help it be noticed, yet still
work.

8 years agoedje: unset animator pointer after free in _edje_file_del()
Mike Blumenkrantz [Wed, 24 Feb 2016 16:52:56 +0000 (11:52 -0500)]
edje: unset animator pointer after free in _edje_file_del()

this function may be called repeatedly with no other animator created
in between, leading to invalid object access

@fix

8 years agoEdje_Edit: return accidently removed clip_to in code generation
Vitalii Vorobiov [Wed, 24 Feb 2016 13:55:14 +0000 (13:55 +0000)]
Edje_Edit: return accidently removed clip_to in code generation

Oops...

8 years agoEdje_Edit: support image border_scale and border_scale_by setters and getters
Vitalii Vorobiov [Wed, 24 Feb 2016 13:50:36 +0000 (13:50 +0000)]
Edje_Edit: support image border_scale and border_scale_by setters and getters

8 years agoEdje_Edit: support use_alternate_font_metrics setters and getters
Vitalii Vorobiov [Wed, 24 Feb 2016 11:45:49 +0000 (11:45 +0000)]
Edje_Edit: support use_alternate_font_metrics setters and getters

8 years agoeldbus: eldbus is already defined in eo
Marcel Hollerbach [Tue, 23 Feb 2016 17:57:04 +0000 (18:57 +0100)]
eldbus: eldbus is already defined in eo

the struct is already defined in eldbus_general.eoeldbus: eldbus is
already defined in eo

the struct is already defined in eldbus_general.eott

8 years agoEdje_Edit: allow to set NULL as text_class (unset text_class) into part's state
Vitalii Vorobiov [Tue, 23 Feb 2016 18:23:36 +0000 (18:23 +0000)]
Edje_Edit: allow to set NULL as  text_class (unset text_class) into part's state

8 years agoEdje_Edit: ability to set size class into certain part's state
Vitalii Vorobiov [Tue, 23 Feb 2016 18:07:12 +0000 (18:07 +0000)]
Edje_Edit: ability to set size class into certain part's state

API looks like this edje_edit_state_size_class_set

8 years agoEdje_Edit: Edje_Edit: update source generation to print size classes
Vitalii Vorobiov [Tue, 23 Feb 2016 17:27:25 +0000 (17:27 +0000)]
Edje_Edit: Edje_Edit: update source generation to print size classes

8 years agoEdje_Edit: support new edje top block "size classes" with edje_edit API
Vitalii Vorobiov [Tue, 23 Feb 2016 17:25:21 +0000 (17:25 +0000)]
Edje_Edit: support new edje top block "size classes" with edje_edit API

Plenty of new API:
edje_edit_size_classes_list_get - to return total list of size_classes inside of
loaded collection of groups
edje_edit_size_class_add - add new size class into loaded collection
edje_edit_size_class_del - deleting
edje_edit_size_class_name_set - renaming existing size class into something new
and some setters and getters for min and max (width and height) of size class.

8 years agoecore-x: add safety checks for _ecore_x_disp in some functions
Chris Michael [Tue, 23 Feb 2016 13:39:09 +0000 (08:39 -0500)]
ecore-x: add safety checks for _ecore_x_disp in some functions

xlib immediately crashes upon being passed a null DISPLAY object,
so every function in ecore-x should likely have safety checks such as these.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoEdje_Edit: update source generation to print text classes
Vitalii Vorobiov [Tue, 23 Feb 2016 11:50:12 +0000 (11:50 +0000)]
Edje_Edit: update source generation to print text classes

8 years agoEdje_Edit: support new edje top block "text classes" with edje_edit API
Vitalii Vorobiov [Tue, 23 Feb 2016 11:47:03 +0000 (11:47 +0000)]
Edje_Edit: support new edje top block "text classes" with edje_edit API

Plenty of new API:
edje_edit_text_classes_list_get - to return total list of text_classes inside of
loaded collection of groups
edje_edit_text_class_add - add new text class into loaded collection
edje_edit_text_class_del - deleting
edje_edit_text_class_name_set - renaming existing text class into something new
edje_edit_text_class_font_{get|set} - get/set font name
edje_edit_text_class_size_{get|set} - get/set font size

8 years agoedje_cc_handlers: font field in new text_class should be NULL at the begining
Vitalii Vorobiov [Tue, 23 Feb 2016 11:35:48 +0000 (11:35 +0000)]
edje_cc_handlers: font field in new text_class should be NULL at the begining

@fix

8 years agoedje_cc: abort compile when unnamed part exists
Vyacheslav Reutskiy [Tue, 23 Feb 2016 09:06:55 +0000 (11:06 +0200)]
edje_cc: abort compile when unnamed part exists

Summary: abort compile when unnamed part exists.

Reviewers: raster, reutskiy.v.v

Reviewed By: reutskiy.v.v

Subscribers: cedric, jpeg

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

8 years agoembryo: add tzdate function
Mike Blumenkrantz [Mon, 22 Feb 2016 17:35:27 +0000 (12:35 -0500)]
embryo: add tzdate function

in the case where a user wants to get the current date/time from a
specified timezone, this function allows a timezone string to be passed
as a parameter

@feature

8 years agoembryo: reformat the whole thing
Mike Blumenkrantz [Mon, 22 Feb 2016 17:16:16 +0000 (12:16 -0500)]
embryo: reformat the whole thing

so many tabs

8 years agoecore-x: add safety checks for _ecore_x_disp in some functions
Chris Michael [Mon, 22 Feb 2016 19:50:35 +0000 (14:50 -0500)]
ecore-x: add safety checks for _ecore_x_disp in some functions

xlib immediately crashes upon being passed a null DISPLAY object,
so every function in ecore-x should likely have safety checks such as these.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoecore-drm: Don't reset event modifiers on touch motion
Chris Michael [Mon, 22 Feb 2016 17:13:06 +0000 (12:13 -0500)]
ecore-drm: Don't reset event modifiers on touch motion

When we are sending an event for touch motion, we should be specifing
the modifers in the event structure (not setting them to zero).

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoecore evas: remove printfs
Carsten Haitzler (Rasterman) [Sat, 20 Feb 2016 14:12:17 +0000 (23:12 +0900)]
ecore evas: remove printfs

forgot i still had them (wa stestign wayland with no printfs in it)

8 years agoecore evas: fix configure request queue count to only count changes
Carsten Haitzler (Rasterman) [Sat, 20 Feb 2016 14:09:03 +0000 (23:09 +0900)]
ecore evas: fix configure request queue count to only count changes

we counted more requests outstanding than actually existed for x11 as
we sometimes sized to the SAME size or position. this keeps that
number more correct only incremeting outstanding count if we change.

@fix

8 years agoeldbus: print dbus errors incurred when failing at signal handler operations
Mike Blumenkrantz [Fri, 19 Feb 2016 18:23:24 +0000 (13:23 -0500)]
eldbus: print dbus errors incurred when failing at signal handler operations

seeing these errors is significantly more helpful when debugging why the system
is not responding as expected

8 years agoedje: clear pending programs upon calling stop_programs_on()
Mike Blumenkrantz [Fri, 19 Feb 2016 18:20:45 +0000 (13:20 -0500)]
edje: clear pending programs upon calling stop_programs_on()

pending programs have not started yet, so they are not directly attached
to the part. failing to remove them results in unexpected behavior from programs

ref 71ce70bc3f97853f3cfeb07ab0a9d8c213e322b1

@fix

8 years agoEdje_Edit: add forgotten since1.18 into documentation of newly implemented API
Vitalii Vorobiov [Fri, 19 Feb 2016 14:20:27 +0000 (14:20 +0000)]
Edje_Edit: add forgotten since1.18 into documentation of newly implemented API

8 years agoEdje_Edit: target can be insert into different place in program's target list
Vitalii Vorobiov [Fri, 19 Feb 2016 14:06:31 +0000 (14:06 +0000)]
Edje_Edit: target can be insert into different place in program's target list

Here is API for that:
> edje_edit_program_target_insert_at

8 years agoEdje_Edit: fix defect found by Coverity in ...state_tween_insert_at
Vitalii Vorobiov [Fri, 19 Feb 2016 11:22:07 +0000 (11:22 +0000)]
Edje_Edit: fix defect found by Coverity in ...state_tween_insert_at

Check constraits before creating image structures

CID 1351558

8 years agobuild: fix duplicated use of the variable in multiple Makefile_*.am.
Vincent Torri [Thu, 18 Feb 2016 21:25:21 +0000 (13:25 -0800)]
build: fix duplicated use of the variable in multiple Makefile_*.am.

GL_SHADERS_GEN is defined in the Makefile.am of Ector and Evas. As these
Mafile_*.am are included in the same Makefile.am, there is a warning with
multiple defined triggered by automake. So this patch rename these 2 variables

Test Plan: autogen.sH

Reviewers: jpeg, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoEvil: remove useless defines
Vincent Torri [Thu, 18 Feb 2016 21:20:00 +0000 (13:20 -0800)]
Evil: remove useless defines

Summary: Those defines are already defined in mingw-w64 header files

Test Plan: makE

Reviewers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoecore_drm: Check list presence by NULL test instead of counting
Derek Foreman [Thu, 18 Feb 2016 19:34:23 +0000 (13:34 -0600)]
ecore_drm: Check list presence by NULL test instead of counting

a count of < 1 will just be a NULL pointer, and a count of > 0 will
be non NULL, so we can simplify these conditionals.

8 years agoecore_evas_drm: enable pointer warping
Derek Foreman [Mon, 25 Jan 2016 22:20:27 +0000 (16:20 -0600)]
ecore_evas_drm: enable pointer warping

Use ecore_drm_device_pointer_warp() to warp the pointer

8 years agoecore_drm: Add pointer warping API
Derek Foreman [Mon, 25 Jan 2016 22:20:18 +0000 (16:20 -0600)]
ecore_drm: Add pointer warping API

Adds a new API: ecore_drm_device_pointer_warp() which warps the pointer
to the specified location.  All libinput seats with pointers are warped.

8 years agogl-drm: Some misc clean-ups
Derek Foreman [Fri, 22 Jan 2016 20:51:45 +0000 (14:51 -0600)]
gl-drm: Some misc clean-ups

Remove unused stuff from structs, cut out the EVAS_GL_DRM_BUFFERS env
var - it can't work anyway, gbm decides how many buffers it wants.

8 years agogl-drm: revise page flip logic
Derek Foreman [Fri, 22 Jan 2016 20:50:47 +0000 (14:50 -0600)]
gl-drm: revise page flip logic

We can't really drive this buffer unlocking from the page flip handler for
a lot of ugly reasons.  This will be better in the future when evas
supports multiple target buffers.  For now let's cut this down and keep
2 buffers locked at all times.

This gets drm-gl to work without massive tearing artifacts.

@fix

8 years agogl_drm: stop trying to figure out buffer age if gl extension isn't present
Derek Foreman [Fri, 22 Jan 2016 20:48:34 +0000 (14:48 -0600)]
gl_drm: stop trying to figure out buffer age if gl extension isn't present

If we don't have the right extension for age we probably don't have
partial updates either.  The code to get the age calculations right is
actually much nastier than this anyway since gbm can hand back buffers
in arbitrary order, and as many as it feels like.

8 years agogl_drm: remove frame_count
Derek Foreman [Fri, 22 Jan 2016 20:20:35 +0000 (14:20 -0600)]
gl_drm: remove frame_count

It was a write only variable, kill it.

8 years agoecore-drm: Only queue re-flip on the head that needs it
Derek Foreman [Tue, 26 Jan 2016 16:43:21 +0000 (10:43 -0600)]
ecore-drm: Only queue re-flip on the head that needs it

Prevents stuttering when a head that was successfully set bounces
back to a previous frame the other head failed to set.

8 years agoecore_drm: Refactor ecore_drm_fb_send into two functions
Derek Foreman [Tue, 26 Jan 2016 16:37:15 +0000 (10:37 -0600)]
ecore_drm: Refactor ecore_drm_fb_send into two functions

We'll need to set outputs individually from the page flip handle to handle
page flip problems, so we need the per output setting logic in its own
function.

8 years agoecore_drm: Change page flipping logic so we can't tear
Derek Foreman [Thu, 18 Feb 2016 19:22:19 +0000 (13:22 -0600)]
ecore_drm: Change page flipping logic so we can't tear

Summary:
Previously if we ever tried to queue up two page flips in less than a
retrace interval (which can easily happen since the evas clock isn't
based on vblank) we'd give up on ever using page flips again, and tear
on every screen update.

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

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

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

Reviewers: zmike, devilhorns

Subscribers: cedric, jpeg

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

8 years agoRevert "Eo: Print an ERR when deleting an object with data refs."
Tom Hacohen [Thu, 18 Feb 2016 19:28:41 +0000 (19:28 +0000)]
Revert "Eo: Print an ERR when deleting an object with data refs."

Revert this in the meanwhile. See discussion on the ML. This should be
enabled though, and issues fixed.

This reverts commit ec2f92e35f5a0836933d82b6b7f518a1d7550afc.

8 years agoecore_con: changing from Ecore.Con.Base to Efl.Network.Base.
Srivardhan Hebbar [Thu, 18 Feb 2016 00:57:29 +0000 (16:57 -0800)]
ecore_con: changing from Ecore.Con.Base to Efl.Network.Base.

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

Reviewers: cedric

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoEo: Print an ERR when deleting an object with data refs.
Tom Hacohen [Thu, 18 Feb 2016 15:53:40 +0000 (15:53 +0000)]
Eo: Print an ERR when deleting an object with data refs.

8 years agoEdje_Edit: fix warning on unsigned and signed int comparation
Vitalii Vorobiov [Thu, 18 Feb 2016 17:17:56 +0000 (17:17 +0000)]
Edje_Edit: fix warning on unsigned and signed int comparation

Oops!
Sorry, missed this one:

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

Now fixed

8 years agoEdje_Edit: ability to insert "after" program into specific position
Vitalii Vorobiov [Thu, 18 Feb 2016 17:10:24 +0000 (17:10 +0000)]
Edje_Edit: ability to insert "after" program into specific position

API looks like this:
> edje_edit_program_after_insert_at

8 years agoEdje_Edit: new API to insert tween into specified place
Vitalii Vorobiov [Thu, 18 Feb 2016 15:40:50 +0000 (15:40 +0000)]
Edje_Edit: new API to insert tween into specified place

> edje_edit_state_tween_insert_at

8 years agobuild: make sure eldbus_eolian_type_files lands in a tarball for distcheck
Stefan Schmidt [Thu, 18 Feb 2016 13:27:35 +0000 (14:27 +0100)]
build: make sure eldbus_eolian_type_files lands in a tarball for distcheck

This was missing when the new file was added in
63f717caaf92b87e272ac0790125246bba105468. Now its handled like we do it for
the ecore file types.

8 years agoeolian: re-enable strict validation
Daniel Kolesa [Thu, 18 Feb 2016 10:06:33 +0000 (10:06 +0000)]
eolian: re-enable strict validation

8 years agoedje_edit.c: it should be able to change item position
Vitalii Vorobiov [Thu, 18 Feb 2016 10:57:52 +0000 (10:57 +0000)]
edje_edit.c: it should be able to change item position

Few new API for inserting/mving items inside of BOX/TABLE
> edje_edit_part_item_insert_before
> edje_edit_part_item_insert_after
> edje_edit_part_item_insert_at
> edje_edit_part_item_move_below
> edje_edit_part_item_move_above

8 years agoEdje: add of some new features and fixes for Canvas3d types in edje_calc.
perepelits.m [Wed, 17 Feb 2016 22:48:33 +0000 (14:48 -0800)]
Edje: add of some new features and fixes for Canvas3d types in edje_calc.

Summary:
Adding of new properties for light in edje-3d. Recalculation of main properties in Canvas3D parts to provide animation (only those which I used in widgets).
Checking of frame existing when setting material.

Reviewers: cedric, raster, Hermet

Subscribers: jpeg, artem.popov

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoRevert "eolian: strict validation for EFL (errors by default)"
Cedric BAIL [Wed, 17 Feb 2016 22:34:20 +0000 (14:34 -0800)]
Revert "eolian: strict validation for EFL (errors by default)"

This reverts commit 21a2a8007dc53e11842526191abab9f393b3d777.

Please run make check from time to time.

8 years agoeina_strbuf: add test cases for eina strbuf prepend functions
Vivek Ellur [Wed, 17 Feb 2016 22:24:20 +0000 (14:24 -0800)]
eina_strbuf: add test cases for eina strbuf prepend functions

Summary:
Added test cases for eina_strbuf_prepend_printf and eina_strbuf_prepend_vprintf
functions

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

Subscribers: seoz, jpeg, raster, cedric

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

8 years agoecore_con: fix compilation issues on Windows
Srivardhan Hebbar [Wed, 17 Feb 2016 22:09:52 +0000 (14:09 -0800)]
ecore_con: fix compilation issues on Windows

Summary:
I do not have a windows setup. So tested by building with option --with-windows-version and it built successfully. Let me know if there are more
issues.

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

Reviewed By: cedric

Maniphest Tasks: T3192

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
8 years agoecore-wl2: do not send double mouse up events during input ungrab
Mike Blumenkrantz [Wed, 17 Feb 2016 18:14:38 +0000 (13:14 -0500)]
ecore-wl2: do not send double mouse up events during input ungrab

if the ungrab is triggered from a mouse up event, this ensures that a
mouse up will be sent from the ungrab function. continuing to send a
mouse up event in addition to this will guarantee multiple mouse events
are emitted

@fix

8 years agoecore-x: Add safety checks for NULL display in dpms functions
Chris Michael [Wed, 17 Feb 2016 13:16:29 +0000 (08:16 -0500)]
ecore-x: Add safety checks for NULL display in dpms functions

xlib immediately crashes upon being passed a NULL display object,
so every function in ecore-x should likely have safety checks such as these.

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoeolian: strict validation for EFL (errors by default)
Daniel Kolesa [Wed, 17 Feb 2016 13:00:41 +0000 (13:00 +0000)]
eolian: strict validation for EFL (errors by default)

8 years agoEvas image: Migrate all the remaining types to Eolian.
Tom Hacohen [Wed, 17 Feb 2016 12:11:46 +0000 (12:11 +0000)]
Evas image: Migrate all the remaining types to Eolian.

8 years agoEldbus: Move more types to eldbus_types.eot.
Tom Hacohen [Wed, 17 Feb 2016 11:49:28 +0000 (11:49 +0000)]
Eldbus: Move more types to eldbus_types.eot.

8 years agoEldbus: Create eldbus_types.eot and start using it.
Tom Hacohen [Wed, 17 Feb 2016 11:28:21 +0000 (11:28 +0000)]
Eldbus: Create eldbus_types.eot and start using it.

8 years agoEvas canvas3d: Fix Eolian warnings.
Tom Hacohen [Wed, 17 Feb 2016 10:22:34 +0000 (10:22 +0000)]
Evas canvas3d: Fix Eolian warnings.

This includes either migrating types to eolian, fixing namespace or
importing extra types.

8 years agoEldbus model arguments: Fix Eolian warnings.
Tom Hacohen [Wed, 17 Feb 2016 10:17:59 +0000 (10:17 +0000)]
Eldbus model arguments: Fix Eolian warnings.

This includes either migrating types to eolian, fixing namespace or
importing extra types.

8 years agoEvas canvas3d mesh: Fix Eolian warnings.
Tom Hacohen [Wed, 17 Feb 2016 10:00:11 +0000 (10:00 +0000)]
Evas canvas3d mesh: Fix Eolian warnings.

This includes either migrating types to eolian, fixing namespace or
importing extra types.

8 years agoEina types: add missing extern to matrix3 type.
Tom Hacohen [Wed, 17 Feb 2016 09:58:12 +0000 (09:58 +0000)]
Eina types: add missing extern to matrix3 type.

8 years agoEvas canvas3d texture: Fix Eolian warnings.
Tom Hacohen [Wed, 17 Feb 2016 09:48:34 +0000 (09:48 +0000)]
Evas canvas3d texture: Fix Eolian warnings.

This includes either migrating types to eolian, fixing namespace or
importing extra types.

8 years agoEcore con eet: Fix Eolian warnings.
Tom Hacohen [Wed, 17 Feb 2016 09:39:53 +0000 (09:39 +0000)]
Ecore con eet: Fix Eolian warnings.

This includes either migrating types to eolian, fixing namespace or
importing extra types.

8 years agoEvas font: allow ":fallbacks" keyword when Evas parses font keyword
Youngbok Shin [Wed, 17 Feb 2016 09:23:06 +0000 (09:23 +0000)]
Evas font: allow ":fallbacks" keyword when Evas parses font keyword

Summary:
Developers could use fallback fonts using only font_fallbacks keyword.
The keyword is only allowed for Evas Textblock. It has to be common
feature for other text type objects.
Applying this patch, Text and Textgrid can add fallback fonts.
@feature

Test Plan:
Set font like the following example to Textblock, Text, Textgrid.
Sans:fallbacks=Inconsolata

Reviewers: tasn, herdsman, woohyun

Subscribers: cedric, jpeg

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

8 years agoevas/gl_x11: fix build warning related to the uninitialized value
Jihoon Kim [Wed, 17 Feb 2016 08:48:26 +0000 (17:48 +0900)]
evas/gl_x11: fix build warning related to the uninitialized value

8 years agoeina log: print formatted string when log domain is invalid
Jean-Philippe Andre [Wed, 17 Feb 2016 06:40:43 +0000 (15:40 +0900)]
eina log: print formatted string when log domain is invalid

Before this patch, eina_log would simply record a non-formatted
entry like:
  unknown domain -1, original message format 'proxy=%p, obj=%p'

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

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

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

I actually wonder if the logs shouldn't actually be forwarded
to the standard log callback instead of just stderr. This may
be useful for logging with dlog or journald (atm we will simply
lose all logs without a valid domain). This would mean eina_log
itself requires a log domain.

8 years agotests: Fix evas 3d tests after previous commit
Jean-Philippe Andre [Wed, 17 Feb 2016 05:49:23 +0000 (14:49 +0900)]
tests: Fix evas 3d tests after previous commit

8 years agoevas: Update evas_3d_utils, replace Evas_Vec.
se.osadchy [Wed, 17 Feb 2016 05:26:40 +0000 (14:26 +0900)]
evas: Update evas_3d_utils, replace Evas_Vec.

Summary: Change Evas_Vec2(3) to Eina_Vector2(3).

Reviewers: cedric, Hermet, jpeg

Subscribers: jpeg

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

8 years agoevas: Update eina_vector, add new function.
se.osadchy [Wed, 17 Feb 2016 05:14:24 +0000 (14:14 +0900)]
evas: Update eina_vector, add new function.

Summary: Add direction transform for eina_vector3.

Reviewers: cedric, Hermet, jpeg

Reviewed By: jpeg

Subscribers: jpeg

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

8 years agoector gl: Use proper PRIx64 to print a uint64_t
Jean-Philippe Andre [Wed, 17 Feb 2016 04:34:01 +0000 (13:34 +0900)]
ector gl: Use proper PRIx64 to print a uint64_t

Thanks @vtorri for the report.
Closes D3698