platform/upstream/efl.git
8 years agoEet test: renamed shadowing variable.
Tom Hacohen [Tue, 12 Apr 2016 14:40:42 +0000 (15:40 +0100)]
Eet test: renamed shadowing variable.

8 years agoElm test web: Correctly disable the web tests.
Tom Hacohen [Tue, 12 Apr 2016 14:39:36 +0000 (15:39 +0100)]
Elm test web: Correctly disable the web tests.

This gets rid of some clang warnings.

8 years agoEo event: rename Eo_Event->event_info to Eo_Event->info.
Tom Hacohen [Tue, 12 Apr 2016 14:23:55 +0000 (15:23 +0100)]
Eo event: rename Eo_Event->event_info to Eo_Event->info.

The previous naming was redundant and too long.

8 years agoctxpopup: implement Efl.Orientation interface functions
Amitesh Singh [Tue, 12 Apr 2016 12:09:50 +0000 (17:39 +0530)]
ctxpopup: implement Efl.Orientation interface functions

Also move horizontal_set/get as legacy APIs.

8 years agoecas gl: ensure make current/window/outpbut enabled before flushing
Carsten Haitzler (Rasterman) [Tue, 12 Apr 2016 08:30:48 +0000 (17:30 +0900)]
ecas gl: ensure make current/window/outpbut enabled before flushing

this should cover up possible texture leaks from gl engine with a null
context on font freeing.

@fix

8 years agoecore - system modules - fix eldbus interdependency and complaints
Carsten Haitzler (Rasterman) [Tue, 12 Apr 2016 05:11:32 +0000 (14:11 +0900)]
ecore - system modules - fix eldbus interdependency and complaints

so ecore uses ecore system modules ... that use eldbus. eldbus inits
ecore. this is a vicious cycle. eldbus shouldnt init ecore. it's a
dependency but should be provided outside of initting eldbus. this all
led to hack-arounds on initting eldbus in these ecore modules that
just break things like shutting down eldbus when still in use.

this ensures any pending messages are canceled on ecore module shutdown.
this ensures every ecore module fully inits and shuts down eldbus as
they should so refcounting the inits works.
this stops eldbus from inittign ecore to avoid the circuluar dependency.

this stops lots of CRI/ERR complaints eg if you run elua with no
cmdline options.

this is just better.

@fix

8 years agoecore system upower - silence if service doesnt exist
Carsten Haitzler (Rasterman) [Tue, 12 Apr 2016 03:51:48 +0000 (12:51 +0900)]
ecore system upower - silence if service doesnt exist

this silences come complaint warnings that should not be noisy - eg if
upower dbus service doesn't exist.

8 years agoevas gl - fix leak with font glyph textures
Carsten Haitzler (Rasterman) [Tue, 12 Apr 2016 03:47:30 +0000 (12:47 +0900)]
evas gl - fix leak with font glyph textures

some font glyphs are still allocated after tyhe last gl window is
freed which means we can't make current anymore to free textures after
that. this fixes that by flushing gl texture info from the font cache
when the last gl windows are gone.

@fix

8 years agoelementary: we actually need to include this generated files or make dist will fail.
Cedric BAIL [Mon, 11 Apr 2016 18:26:06 +0000 (11:26 -0700)]
elementary: we actually need to include this generated files or make dist will fail.

8 years agoevas.canvas3d: Add FXAA post processing render.
Oleksandr Shcherbina [Mon, 11 Apr 2016 15:50:46 +0000 (00:50 +0900)]
evas.canvas3d: Add FXAA post processing render.

Summary:
Add post processing render function as rendering full screen quard after
rendering to texture.
Add possibility use size of current frame in shader.
Add FXAA shader source files

Reviewers: raster, cedric, Hermet

Subscribers: jpeg

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

8 years agoelementary/scroller: code refactoring.
Hermet Park [Mon, 11 Apr 2016 15:36:12 +0000 (00:36 +0900)]
elementary/scroller: code refactoring.

try to update scroller size when popup layout is updated.

8 years agoelc_popup: If popup's parent is resized, popup need to resized, too
Jinyong Park [Mon, 11 Apr 2016 15:28:55 +0000 (00:28 +0900)]
elc_popup: If popup's parent is resized, popup need to resized, too

Summary:
When window's size is not enough to show popup, popup resize smaller to show it in appropriate size.
But if window resize larger enough to show popup, popup is locked in small size.
On the contrary to this case, if window resize too smaller, popup has still large size, so popup doesn't display properly.

Test Plan:
1. elementary_test popup
2. maximize test list window
3. click 8th item, "popup-center-title + items + 3 buttons"
4. restore window size
5. close popup, resize window to smaller than popup in 3).
6. click 8th item, "popup-center-title + items + 3 buttons"
7. restore window size
popup size of 4. and 7. is different

Reviewers: jaehwan, cedric, raster, id213sin, singh.amitesh, SanghyeonLee

Subscribers: jpeg

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

8 years agoupdated po
Hermet Park [Mon, 11 Apr 2016 15:27:55 +0000 (00:27 +0900)]
updated po

8 years agodocs: add descriptions for ecore_con_eet_{client,server} EO classes
Stefan Schmidt [Mon, 11 Apr 2016 14:24:37 +0000 (16:24 +0200)]
docs: add descriptions for ecore_con_eet_{client,server} EO classes

8 years agodocs: add description to ecore_con_eet_base class
Stefan Schmidt [Mon, 11 Apr 2016 13:39:59 +0000 (15:39 +0200)]
docs: add description to ecore_con_eet_base class

8 years agodocs: document ecore_animator EO class.
Stefan Schmidt [Mon, 11 Apr 2016 13:01:48 +0000 (15:01 +0200)]
docs: document ecore_animator EO class.

Keep it brief as we want the larger parts being editable from the wiki part of
the new doc system.

8 years agopopup : fix scale calculation in _scroller_size_calc
Jinyong Park [Mon, 11 Apr 2016 14:31:03 +0000 (23:31 +0900)]
popup : fix scale calculation in _scroller_size_calc

Summary:
when calculate real size of action area in _scroller_size_calc,
edje base scale is omitted.

Reviewers: jaehwan, id213sin, cedric, raster, singh.amitesh, SanghyeonLee, Hermet

Reviewed By: Hermet

Subscribers: Hermet, herb, jpeg

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

8 years agoElm_icon: fix build error. --;
Ji-Youn Park [Mon, 11 Apr 2016 13:18:46 +0000 (21:48 +0830)]
Elm_icon: fix build error. --;

8 years agoElm_icon: move thumb_set API from eo to legacy.
Ji-Youn Park [Mon, 11 Apr 2016 13:14:31 +0000 (21:44 +0830)]
Elm_icon: move thumb_set API from eo to legacy.

8 years agoElm_thumb: move all api from eo to legacy
Ji-Youn Park [Mon, 11 Apr 2016 13:01:42 +0000 (21:31 +0830)]
Elm_thumb: move all api from eo to legacy

elm_thumb,elm_icon,elm_photo will be removed.

8 years agobuild: make sure generated files in examples get cleaned up
Stefan Schmidt [Mon, 11 Apr 2016 12:05:48 +0000 (14:05 +0200)]
build: make sure generated files in examples get cleaned up

Distcheck pointed these out as not being cleaned up and it was right. Make sure
we handle these generated files during cleanup.

8 years agogenlist: do not evaluate against max coord if the value is negative
Shuhrat Dehkanov [Mon, 11 Apr 2016 12:11:28 +0000 (17:41 +0530)]
genlist: do not evaluate against max coord if the value is negative

Summary:
If x is already less than '0', there is no need to check if it is
bigger than pan_max_x. Likewise, if y is already less than '0',
there is no need to check if it is bigger than pan_max_y.

Reviewers: Hermet, cedric, SanghyeonLee, singh.amitesh

Reviewed By: singh.amitesh

Subscribers: seoz, minkyu, sju27, jpeg

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

8 years agoElm_image: remove no_scale and resizable property.
Ji-Youn Park [Mon, 11 Apr 2016 11:33:25 +0000 (20:03 +0830)]
Elm_image: remove no_scale and resizable property.

elm image add new API to deal with scale type.
if we use scale type for elm_image, we don't need to use no_scale and resizable property

8 years agoElm_photo: move api from eo to legacy.
Ji-Youn Park [Mon, 11 Apr 2016 04:51:05 +0000 (13:21 +0830)]
Elm_photo: move api from eo to legacy.

elm_photo will be deprecated in the future.
so move all api from eo to legacy.

8 years agoeolian: Make promise eolian generation use macros for hooks
Felipe Magno de Almeida [Mon, 11 Apr 2016 03:53:03 +0000 (00:53 -0300)]
eolian: Make promise eolian generation use macros for hooks

Modify the way hooks are defined and used by promise generation in
Eolian in the Eo API.

Instead of passing macro names as parameters to EO_FUNC_BODY macros,
just re-define the actual hooks when it is needed.

8 years agovpath - use double-happy format as poposed by onefang
Carsten Haitzler (Rasterman) [Mon, 11 Apr 2016 02:45:46 +0000 (11:45 +0900)]
vpath - use double-happy format as poposed by onefang

vpath now uses a simley at the start and end of a special meta
location. i.e.:

(:home:)/blah.png
(:app.data:)/blah.jpg

8 years agoelementary: fix dependencies to build clean examples.
Cedric Bail [Sun, 10 Apr 2016 19:04:29 +0000 (12:04 -0700)]
elementary: fix dependencies to build clean examples.

8 years agoCtxPopup: fix auto-hide property setting
Daniel Zaoui [Sun, 10 Apr 2016 11:55:05 +0000 (14:55 +0300)]
CtxPopup: fix auto-hide property setting

Set and get functions are inconsistent one with the other. When set
function is used with a certain value, one expects the get function
to return this value.

8 years agoEcore Exe: check parameter validity
Daniel Zaoui [Tue, 5 Apr 2016 11:53:02 +0000 (14:53 +0300)]
Ecore Exe: check parameter validity

8 years agoEdje: check parameter validity
Daniel Zaoui [Tue, 5 Apr 2016 07:32:59 +0000 (10:32 +0300)]
Edje: check parameter validity

8 years agoEcore_Con: protect access to internal data
Daniel Zaoui [Tue, 5 Apr 2016 07:32:25 +0000 (10:32 +0300)]
Ecore_Con: protect access to internal data

8 years agoecore: fix documentation of Ecore_Exe_Event_Del
Jean Guyomarc'h [Sat, 9 Apr 2016 19:41:37 +0000 (21:41 +0200)]
ecore: fix documentation of Ecore_Exe_Event_Del

8 years agoelementary: restore examples build.
Cedric BAIL [Fri, 8 Apr 2016 23:00:49 +0000 (16:00 -0700)]
elementary: restore examples build.

8 years agoevas: don't track some forgotten example
Cedric BAIL [Fri, 8 Apr 2016 23:00:27 +0000 (16:00 -0700)]
evas: don't track some forgotten example

8 years agoelua: unbreak make install-examples
Cedric BAIL [Fri, 8 Apr 2016 18:35:37 +0000 (11:35 -0700)]
elua: unbreak make install-examples

8 years agoecore_evas: make it easier to have custom dependencies per module.
Cedric BAIL [Fri, 1 Apr 2016 23:17:35 +0000 (16:17 -0700)]
ecore_evas: make it easier to have custom dependencies per module.

8 years agoelm_win: force opaque update on maximize state change
Mike Blumenkrantz [Fri, 8 Apr 2016 19:50:09 +0000 (15:50 -0400)]
elm_win: force opaque update on maximize state change

enforce csd recalc to ensure accurate maximize sizing

@fix

8 years agotests/eloian: ship eo file needed for tests in tarball
Stefan Schmidt [Fri, 8 Apr 2016 13:41:03 +0000 (15:41 +0200)]
tests/eloian: ship eo file needed for tests in tarball

Without this the make check run inside distcheck fails.

8 years agoElm tests: Silence warnings in the unused elm prefs test.
Tom Hacohen [Fri, 8 Apr 2016 10:35:18 +0000 (11:35 +0100)]
Elm tests: Silence warnings in the unused elm prefs test.

8 years agoEvas langauge: Prevent potential buffer overflow and clean code.
Tom Hacohen [Fri, 8 Apr 2016 10:34:53 +0000 (11:34 +0100)]
Evas langauge: Prevent potential buffer overflow and clean code.

We were copying a user defined string into a fixed size buffer
without doing any boundary checks. This commit fixes that.
Also cleaned up similar code that was using hardcoded numbers.

@fix.

8 years agoEvas: Add API to reinit the language and use it in elementary.
Youngbok Shin [Fri, 8 Apr 2016 10:17:51 +0000 (11:17 +0100)]
Evas: Add API to reinit the language and use it in elementary.

Summary:
evas_common_language_from_locale_* functions kept static pointers
inside of its functions. Once these function was called, it was never reset.
It made big problems for harfbuzz and hyphenation. Also, Elementary
provides elm_language_set() API. Then we need to support it fully.
@fix

Test Plan: Test case for hyphenation is included in Evas test suite.

Reviewers: raster, tasn, herdsman, woohyun, z-wony, Blackmole, minudf

Subscribers: cedric, jpeg

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

8 years agolist: fix item highlight geometry correctly
Jee-Yong Um [Fri, 8 Apr 2016 08:47:11 +0000 (17:47 +0900)]
list: fix item highlight geometry correctly

Summary:
Calculation for item highlight geometry is incorrect when item
is larger than viewport geometry.
This patch adjusts highlight geometry to fit visible item size.

Test Plan: enventor (look "Settings-Text Editor-Font Names" list)

Reviewers: Jaehyun_Cho

Subscribers: jpeg, cedric

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

8 years agoelm_win: Fix warning (unused variable)
Jean-Philippe Andre [Fri, 8 Apr 2016 05:18:38 +0000 (14:18 +0900)]
elm_win: Fix warning (unused variable)

8 years agodoc: fix typo in 410cdd1501c0f7
Amitesh Singh [Fri, 8 Apr 2016 04:44:15 +0000 (10:14 +0530)]
doc: fix typo in 410cdd1501c0f7

8 years agodoc: add widget_preview_nstate.c to noinst_PROGRAMS
Amitesh Singh [Fri, 8 Apr 2016 04:17:55 +0000 (09:47 +0530)]
doc: add widget_preview_nstate.c to noinst_PROGRAMS

8 years agoefreetd - dont use netdb.sh as per man page on windows
Carsten Haitzler (Rasterman) [Fri, 8 Apr 2016 03:56:11 +0000 (12:56 +0900)]
efreetd - dont use netdb.sh as per man page on windows

8 years agoefreet - use eina tmp dir instead of /tmp dir
Carsten Haitzler (Rasterman) [Fri, 8 Apr 2016 03:52:36 +0000 (12:52 +0900)]
efreet - use eina tmp dir instead of /tmp dir

use eina_environment_tmp_get() for windows

8 years agotheme: add nstate.edc in Makefile.am
Amitesh Singh [Fri, 8 Apr 2016 03:49:02 +0000 (09:19 +0530)]
theme: add nstate.edc in Makefile.am

fixes make dist

8 years agodoc: add elm nstate preview
Amitesh Singh [Fri, 8 Apr 2016 03:39:59 +0000 (09:09 +0530)]
doc: add elm nstate preview

8 years agoefreetd - fix more cache path handling to live in the cache dir
Carsten Haitzler (Rasterman) [Fri, 8 Apr 2016 03:41:36 +0000 (12:41 +0900)]
efreetd - fix more cache path handling to live in the cache dir

follow on fixes from 5028a8807780892c361ae976b567cd924fa529b1

@fix

8 years agoefreet: fix tmp file/dir/log handling to not leave a mess and work
Carsten Haitzler (Rasterman) [Fri, 8 Apr 2016 03:12:21 +0000 (12:12 +0900)]
efreet: fix tmp file/dir/log handling to not leave a mess and work

so efreets tmp file/cache/log file handling was broken, using
filenames in tmp and renaming them to a caceh dir that can be on
different filesystems. also log file should have been in a tmp dir ...
and subsidrs cache didnt get renamed properly at all and thus not
updated.

@fix

8 years agodoc: Remove widget_preview_nstate.c
Jean-Philippe Andre [Fri, 8 Apr 2016 02:21:45 +0000 (11:21 +0900)]
doc: Remove widget_preview_nstate.c

These is no such file.
Hopefully this will fix make dist.

8 years agoefl_vpath: Fix compilation for windows
Jean-Philippe Andre [Fri, 8 Apr 2016 01:51:20 +0000 (10:51 +0900)]
efl_vpath: Fix compilation for windows

Patch by @vtorri

Fixes T3431

8 years agoEvas 3d: Fix compilation for Windows
Jean-Philippe Andre [Fri, 8 Apr 2016 01:38:15 +0000 (10:38 +0900)]
Evas 3d: Fix compilation for Windows

near and far are #defined in windows.h. Old legacy stuff.
To be sure the code compiles, rename the variables.

Fixes T3423

8 years agoeina tmp get - support other tmp dir env vars and dont use xdg runtime
Carsten Haitzler (Rasterman) [Fri, 8 Apr 2016 02:03:44 +0000 (11:03 +0900)]
eina tmp get - support other tmp dir env vars and dont use xdg runtime

xdg runtime dir is NOT a tmp dir in the normal sense. it's not world
writable nor world readable. only for the user.  using
eina_environment_tmp_get() would imply that it is a regular tmp dir,
not a per-user private only runtime dir. that is something else
entirely.

@fix

8 years agoefl vpath - fix fallback handling to use right buffer for stat
Carsten Haitzler (Rasterman) [Fri, 8 Apr 2016 01:50:48 +0000 (10:50 +0900)]
efl vpath - fix fallback handling to use right buffer for stat

8 years agowayland: hook engine data from elm_win and update rect with evas size
Mike Blumenkrantz [Thu, 7 Apr 2016 18:14:14 +0000 (14:14 -0400)]
wayland: hook engine data from elm_win and update rect with evas size

the only way to accurately calculate the "evas" size in the engine from
window geometry is to have the size of the frame available to subtract from
window geometry

window geometry is NOT framespace--framespace is the entire csd region, possibly
containing a shadow, and window geometry is explicitly the region occupied by the
window, ie. not the shadowed part.

not my ideal solution to the synchronization issue here, but I guess this is a
benefit of the unified tree

fix T3396

8 years agoecore-wl2: redo Ecore_Wl2_Event_Window_Configure entirely
Mike Blumenkrantz [Thu, 7 Apr 2016 18:09:51 +0000 (14:09 -0400)]
ecore-wl2: redo Ecore_Wl2_Event_Window_Configure entirely

this is an event representing the "new" state of the surface after a
configure event. it must contain the exact states which could potentially
have changed in the configure in order to ensure synchronization between
csd states and window size.

ecore events for xdg-shell configures must be sent only upon receiving a
configure event since states are set by the compositor and not by the client

@fix

 #hoorayforbeta

8 years agoelm_win: handle icon object lifetimes more accurately, use icon_name in csd icon
Mike Blumenkrantz [Thu, 7 Apr 2016 18:04:21 +0000 (14:04 -0400)]
elm_win: handle icon object lifetimes more accurately, use icon_name in csd icon

in the case where an icon existed upon having an icon object set, the previous icon
object would be orphaned while still being visible. the new icon would then never
be set into the csd.

@fix

8 years agoelm_win: move frame obj creation/deletion for fullscreen property to state change cb
Mike Blumenkrantz [Wed, 6 Apr 2016 20:44:44 +0000 (16:44 -0400)]
elm_win: move frame obj creation/deletion for fullscreen property to state change cb

this was broken if the compositor unset fullscreen without being prompted by
the client (eg. ctrl+alt+f). it also created timing differences for csd calcs based
on when the fullscreen call occurred in the render cycle

@fix

8 years agoecore-wl2: remove maximized/fullscreen/transient from window types enum
Mike Blumenkrantz [Wed, 6 Apr 2016 20:48:58 +0000 (16:48 -0400)]
ecore-wl2: remove maximized/fullscreen/transient from window types enum

these aren't real window types and only complicate internals/api

 #hoorayforbeta

8 years agoecore_x: fix emission of ECORE_X_EVENT_XKB_NEWKBD_NOTIFY
Marcel Hollerbach [Tue, 5 Apr 2016 13:11:29 +0000 (15:11 +0200)]
ecore_x: fix emission of ECORE_X_EVENT_XKB_NEWKBD_NOTIFY

Summary:
the event XkbNewKeyboardNotify was never selected with
XkbSelectEventDetails so the event type could never occur.

The event is now each time emitted when a new event to the keyboard
happens. To clarify a bit: A new keyboard is always detected in x when
the set of keymaps changes.

@fix

Reviewers: raster, devilhorns, zmike

Subscribers: cedric, jpeg

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

8 years agoElm_image: remove elm_image_sizing_eval from eo to legacy.
Ji-Youn Park [Thu, 7 Apr 2016 10:38:41 +0000 (19:08 +0830)]
Elm_image: remove elm_image_sizing_eval from eo to legacy.

elm_image_object_get api will be deprecated, so moved sizing eval func to legacy

8 years agoefl.progress: Rename property from value to progress_value
Yeshwanth Reddivari [Thu, 7 Apr 2016 09:55:44 +0000 (18:55 +0900)]
efl.progress: Rename property from value to progress_value

Reviewers: jpeg, singh.amitesh

Subscribers: cedric

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

8 years agoelm_nstate: introduce nstate widget and inherit check from it
Amitesh Singh [Thu, 7 Apr 2016 09:25:59 +0000 (18:25 +0900)]
elm_nstate: introduce nstate widget and inherit check from it

Test Plan:
elementary_test -to "nstate"

@feature

Reviewers: yashu21985, tasn, Hermet, seoz, smohanty, felipealmeida, JackDanielZ, jypark, woohyun, herdsman, raster, cedric, jpeg

Subscribers: saurabhbunty, seoz

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

8 years agoEfl: Rename flip and orient enums
Jean-Philippe Andre [Thu, 7 Apr 2016 08:32:40 +0000 (17:32 +0900)]
Efl: Rename flip and orient enums

Efl.Flip is now the enum, the interface is Flipable.
We could even use names like Efl.IFlip a la Java.

eo_prefix is used to have pretty names in C. legacy: null
is removed from the enums. orient_x0 is removed and only
defined in C with #define

8 years agoInterface: Progress - Add common interface for Slider and Progressbar
Yeshwanth Reddivari [Thu, 7 Apr 2016 07:50:03 +0000 (16:50 +0900)]
Interface: Progress - Add common interface for Slider and Progressbar

Summary:
Implement common interface efl_ui_progress and inherit slider and progressbar from common interface.
Currently legacy APIs will also call interface functions and later it can be deprecated.
This interface will be moved to EFL in src/lib/efl/interfaces when elementary is merged into efl.

Test Plan:
elementary_test -to 'slider'
elementary_test -to 'progressbar'

Reviewers: singh.amitesh, raster, tasn, felipealmeida, woohyun, cedric, jpeg

Subscribers: saurabhbunty, alok25

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

8 years agoEo: Try to fix windows build
Jean-Philippe Andre [Thu, 7 Apr 2016 06:46:47 +0000 (15:46 +0900)]
Eo: Try to fix windows build

For windows, EAPI needs to be redefined as dllexport/dllimport.
Since we marked all EO APIs as weak, we had two different EAPI
macros: EAPI and EWAPI. Unfortunately, EWAPI was never redefined
(only declared inside Eo.h).

See also a1a506e13e276d8ef6e522ae9.

See T3423. Thanks @vtorri for the report.

8 years agoEo: Mark class_get() as weak APIs
Jean-Philippe Andre [Thu, 7 Apr 2016 06:36:20 +0000 (15:36 +0900)]
Eo: Mark class_get() as weak APIs

While eolian-gen was generating EWAPI (weak) class_get()
symbol declarations, they were implemented as EAPI (strong).
Not sure if this mismatch had any significant effect.

This patch tries to address T3423 (windows build).
The mismatch between EAPI and EWAPI might be the problem.

8 years agoEcore: Try to fix build for windows
Jean-Philippe Andre [Thu, 7 Apr 2016 06:25:42 +0000 (15:25 +0900)]
Ecore: Try to fix build for windows

Move efl.h above ecore.h to not mess with EAPI's dllimport
vs. dllexport definition. This addresses T3423.

8 years agoEfl: Add internal strong symbol to fix build on GCC < 5.3
Jean-Philippe Andre [Thu, 7 Apr 2016 05:40:10 +0000 (14:40 +0900)]
Efl: Add internal strong symbol to fix build on GCC < 5.3

This fixes a crash in ecore_init, calling a weak function from
libefl that was resolved to NULL.

So, here's a fun thing happening with GCC < 5.3. Since a1a506e13e2
all EOAPI and EO class_get() functions are weak symbols. This means
that all APIs inside libefl.so are weak.

As a result, gcc linker with --as-needed skipped linking to libefl
since not a single strong symbol from libefl was required by
libecore. This is actually a bug in gcc linker since we do in fact
use symbols from libefl, just weak ones.

GCC 5.3 seems to be fixed, so people with GCC 5.3+ will not
experience any build/runtime issue. The current patch is
a workaround that bug, by artifically creating a strong symbol
required by ecore.

Other libraries than ecore might also need to call
__efl_internal_init, if they end up not being linked to libefl.

8 years agoecore: attempt to fix windows build by putting header in a more logical place.
Cedric Bail [Wed, 6 Apr 2016 21:34:45 +0000 (14:34 -0700)]
ecore: attempt to fix windows build by putting header in a more logical place.

8 years agoeolian: add Eolian support for Eina Promises
Felipe Magno de Almeida [Sat, 2 Apr 2016 01:50:28 +0000 (22:50 -0300)]
eolian: add Eolian support for Eina Promises

Add a promise object to allows Eolian interface to include promises
as a way to have asynchronous value return and composibility.

The usage is like this in a .eo file:

class Foo {
   methods {
      bar {
         params {
            @inout promise: Promise<int>;
         }
      }
   }
}

Which will create the following API interface:

void foo_bar(Eo* obj, Eina_Promise** promise);

and a Eina_Promise_Owner for the implementation, like this:

void _foo_bar(Eo* obj, Private_Data* pdata, Eina_Promise_Owner* promise);

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
8 years agoeo: add before and after macro hooks for API generation functions
Felipe Magno de Almeida [Fri, 11 Mar 2016 20:22:59 +0000 (17:22 -0300)]
eo: add before and after macro hooks for API generation functions

Add two parameters for macros that generate API functions in Eo so
that the generation can be customized with macros used by Eolian.

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
8 years agoRevert "Eo: Fix rare crash after call_resolve"
Tom Hacohen [Wed, 6 Apr 2016 10:17:05 +0000 (11:17 +0100)]
Revert "Eo: Fix rare crash after call_resolve"

I'm reverting this because according to jpeg it was possibly fixed in
5284b62e930f0bef0ed3125b3a485e0599451ef8.
I reverted this patch after his fix and followed his reproduction cases
and it seems that his second patch does indeed fix this issue so this
patch is no longer needed.

This reverts commit 0862b9d08384bc1d862b90952130ec988f56b33b.

8 years agoEo tests: Also test function calls in reinit test.
Tom Hacohen [Wed, 6 Apr 2016 09:16:24 +0000 (10:16 +0100)]
Eo tests: Also test function calls in reinit test.

Since we cache ops we also need to check function calls work
when we reinit eo, not just class_get functions.

This commit essentially verifies that
5284b62e930f0bef0ed3125b3a485e0599451ef8 was done correctly.

8 years agoefl build - ecore - add efl link as a PUBLIC link as efl headers it in
Carsten Haitzler (Rasterman) [Wed, 6 Apr 2016 09:18:58 +0000 (18:18 +0900)]
efl build - ecore - add efl link as a PUBLIC link as efl headers it in

I added Efl.h to Ecore.h - because we really want to use efl
interfaces ... like everywhere. so add it to the link too.

8 years agoelm_test: Fix warning with clang
Jean-Philippe Andre [Wed, 6 Apr 2016 07:36:55 +0000 (16:36 +0900)]
elm_test: Fix warning with clang

Invalid enum type

8 years agoelm_glview: Fix warning with clang
Jean-Philippe Andre [Wed, 6 Apr 2016 07:34:53 +0000 (16:34 +0900)]
elm_glview: Fix warning with clang

I'm using the same gcc construct to initiliaze a complex
struct with {} instead of {0}.

8 years agoelm_config: Fix typo and warning
Jean-Philippe Andre [Wed, 6 Apr 2016 07:33:16 +0000 (16:33 +0900)]
elm_config: Fix typo and warning

A major typo (hard to find with the naked eye) was present in
elm_config's list of text & color classes. See D3487.

I'm pretty sure this feature has not been used at all.

8 years agoels_box: Fix warning with clang
Jean-Philippe Andre [Wed, 6 Apr 2016 06:16:37 +0000 (15:16 +0900)]
els_box: Fix warning with clang

warning: comparison of constant 100 with expression of type
         'Evas_Aspect_Control' is always true
         [-Wtautological-constant-out-of-range-compare]

8 years agoelm: Fix some warnings with clang
Jean-Philippe Andre [Wed, 6 Apr 2016 06:22:20 +0000 (15:22 +0900)]
elm: Fix some warnings with clang

warning: missing field 'desc' initializer
         [-Wmissing-field-initializers]

Solution: use gcc extension to init structs with {}.
This is a bit ugly, but having too many warnings leads to
ignoring them and not noticing valid ones.

The warning is triggered because the first member of Eo_Event
is not a primitive type (it's a struct _Eo_Opaque *).

8 years agoelm_web: Fix warning (missing initializer)
Jean-Philippe Andre [Wed, 6 Apr 2016 07:24:33 +0000 (16:24 +0900)]
elm_web: Fix warning (missing initializer)

8 years agoelm_image: Fix warning (wrong enum type)
Jean-Philippe Andre [Wed, 6 Apr 2016 05:10:15 +0000 (14:10 +0900)]
elm_image: Fix warning (wrong enum type)

8 years agoEo: Fix function cache after eo reinit
Jean-Philippe Andre [Wed, 6 Apr 2016 05:02:05 +0000 (14:02 +0900)]
Eo: Fix function cache after eo reinit

The function call resolve cache may be broken after an eo
shutdown + init cycle, leading to calls to invalid functions.
This adds an static uint for each and every single EO API
entry point, as well as an extra if() check.

Now I'm not sure if the previous commit 0862b9d08384bc1d8 is
still necessary.

8 years agoEfl vpath: Fix usage of @class function
Jean-Philippe Andre [Wed, 6 Apr 2016 04:27:09 +0000 (13:27 +0900)]
Efl vpath: Fix usage of @class function

Calling an @class function with a real object is not safe.
Missing check somewhere? I believe this should have failed safely.

8 years agoEo: Fix rare crash after call_resolve
Jean-Philippe Andre [Wed, 6 Apr 2016 02:25:29 +0000 (11:25 +0900)]
Eo: Fix rare crash after call_resolve

It seems that calling a @class function with an EO object
(that was not the required Eo_Class) lead to a situation
where func->func was NULL. And that meant a crash after
call_resolve.

The proper fix is to properly call a @class function with a
class object.

8 years agoInterface: Flip and orientation interface
Yeshwanth Reddivari [Wed, 6 Apr 2016 01:46:04 +0000 (10:46 +0900)]
Interface: Flip and orientation interface

Summary:
Added flip and orientation interface and used them in evas_image.
Removed efl_image_orientation_set API and used efl_orientation_set and efl_flip_set API.
In implementation part, converted enums back and forth in order to keep current implementation as it is.

Test Plan: src/examples/evas/evas-images5.c

Reviewers: singh.amitesh, raster, tasn, herdsman, woohyun, cedric, felipealmeida, jpeg

Subscribers: cedric, jpeg

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

8 years agoelm_layout: Attach object to iterator
Jean-Philippe Andre [Mon, 4 Apr 2016 12:39:29 +0000 (21:39 +0900)]
elm_layout: Attach object to iterator

This is part of a new API, not a fix

This was missing in 3c40ebb99887ba4c74c40e4509c49cc675877886

8 years agoelm_box: Minor fixes
Jean-Philippe Andre [Mon, 4 Apr 2016 09:57:26 +0000 (18:57 +0900)]
elm_box: Minor fixes

8 years agoElementary: Don't send selected signal to a part with no selected state. Removes...
Stephen Houston [Wed, 6 Apr 2016 01:39:35 +0000 (20:39 -0500)]
Elementary: Don't send selected signal to a part with no selected state.  Removes warnings.

8 years agoelm_win: update wayland opaque region during pre-flush...always
Mike Blumenkrantz [Tue, 5 Apr 2016 19:10:57 +0000 (15:10 -0400)]
elm_win: update wayland opaque region during pre-flush...always

@fix

8 years agoeo-cxx: Fix warning on weak symbols with inline functions
Felipe Magno de Almeida [Tue, 5 Apr 2016 18:38:49 +0000 (15:38 -0300)]
eo-cxx: Fix warning on weak symbols with inline functions

Removed the EOAPI which is not necessary as the function is already inlined

8 years agoecore: add tests for promises with ecore_thread_promise_run
Felipe Magno de Almeida [Sat, 2 Apr 2016 01:24:19 +0000 (22:24 -0300)]
ecore: add tests for promises with ecore_thread_promise_run

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
8 years agoecore: add promise for Ecore_Thread
Felipe Magno de Almeida [Fri, 1 Apr 2016 18:37:42 +0000 (15:37 -0300)]
ecore: add promise for Ecore_Thread

Add ecore_thread_promise_run function that returns a Promise
and runs function in another thread which you can set the
value on a Eina_Promise_Owner.

Eina_Promise* promise;
Ecore_Thread* thread = ecore_thread_promise_run
( &function_heavy, &cancellation_function, private_data,
sizeof(ValueType), &promise);

This calls function_heavy on another thread and returns
the Ecore_Thread and a Eina_Promise as an out-parameter.

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
8 years agoeina: add tests for promises
Felipe Magno de Almeida [Fri, 1 Apr 2016 18:30:37 +0000 (15:30 -0300)]
eina: add tests for promises

8 years agoeina: add promise
Felipe Magno de Almeida [Fri, 1 Apr 2016 17:49:58 +0000 (14:49 -0300)]
eina: add promise

Add a promise object that will allows Eolian interface to include promises
as a way to have asynchronous value return and composibility.

To understand better, let see the coming usage in a .eo file:

class Foo {
   methods {
      bar {
         params {
            @inout promise: Promise<int>;
         }
      }
   }
}

Which will create the following API interface:

void foo_bar(Eo* obj, Eina_Promise** promise);

and the equivalent declaration for implementation.

However, the API function will instantiate the Promise for the user
and the implementer of the class automatically. So the user of this
function will treat it as a @out parameter, while the developer of the
function will treat it like a @inout parameter.

So, the user will use this function like this:

Eina_Promise* promise; // No need to instantiate
foo_bar(obj, &promise);
eina_promise_then(promise, callback);

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
8 years agoecore-xcb: Add implementation for missing API function
Chris Michael [Tue, 5 Apr 2016 15:43:14 +0000 (11:43 -0400)]
ecore-xcb: Add implementation for missing API function

This patch adds an xcb implementation for missing
ecore_x_randr_crtc_panning_area_set function

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoecore-xcb: Add implementation for missing API function
Chris Michael [Tue, 5 Apr 2016 14:14:19 +0000 (10:14 -0400)]
ecore-xcb: Add implementation for missing API function

This patch adds an xcb implementation for missing
ecore_x_randr_edid_display_interface_type_get function

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
8 years agoecore-xcb: Add implementation for missing API function
Chris Michael [Tue, 5 Apr 2016 13:58:11 +0000 (09:58 -0400)]
ecore-xcb: Add implementation for missing API function

This patch adds an xcb implementation for missing function
ecore_x_randr_screen_backlight_level_set

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>