Tom Hacohen [Tue, 30 Jul 2013 13:12:03 +0000 (14:12 +0100)]
eo2: revert "eo2_add accepts non-defauld constructors"
We want to have normal functions as non-default constructors, not va_arg
ones. What we should do is split the object creation to two parts again.
The creation, the constructing (changes using the macro) and the
verification/end part that checks the constructor has been called.
This reverts commit
2ff2ce1894f173b306a896bda595e1a7768c074d.
Jérémy Zurcher [Tue, 30 Jul 2013 13:02:35 +0000 (15:02 +0200)]
eo2: implement class function support
Jérémy Zurcher [Mon, 29 Jul 2013 21:57:45 +0000 (23:57 +0200)]
eo2: eo_del_internal use same logic as in eo_add_internal
Jérémy Zurcher [Mon, 29 Jul 2013 21:52:46 +0000 (23:52 +0200)]
eo2: fix indent
Jérémy Zurcher [Thu, 26 Dec 2013 15:23:55 +0000 (16:23 +0100)]
eo2: eo2_add accepts non-defauld constructors
Jérémy Zurcher [Mon, 29 Jul 2013 20:13:13 +0000 (22:13 +0200)]
eo2: call _eo2_class_funcs_set from _eo_class_constructor
Tom Hacohen [Mon, 29 Jul 2013 16:50:56 +0000 (17:50 +0100)]
eo2: cleaned up EO2_CLASS_DESCRIPTION_OPS and OP_DESC_SIZE (renamed).
Tom Hacohen [Mon, 29 Jul 2013 16:32:20 +0000 (17:32 +0100)]
eo2: fixed dbg_info_get function to accept the correct number of params.
Tom Hacohen [Mon, 29 Jul 2013 15:11:47 +0000 (16:11 +0100)]
eo2: cleaned up eo2_do macros.
cleaned up the cleanup attribute usage.
don't use objid more than once (it's a macro).
Jérémy Zurcher [Thu, 26 Dec 2013 15:16:55 +0000 (16:16 +0100)]
eo2: do not call eo2_do_end() if eo2_do_start() fail
Jérémy Zurcher [Wed, 25 Dec 2013 15:22:42 +0000 (16:22 +0100)]
eo2: eo2_do() uses __attribute__ cleanup
to protect us against bad use of break, goto, return ... in eo2_do,
we use __attribute__((cleanup(eo2_do_end))) to ensure that eo2_do_end()
is called whatever.
Jérémy Zurcher [Sat, 27 Jul 2013 20:46:50 +0000 (22:46 +0200)]
eo2: add eo2_call_stack_depth
Jérémy Zurcher [Sat, 27 Jul 2013 20:42:24 +0000 (22:42 +0200)]
eo2: EO2_CALL_STACK_SIZE -> EO2_CALL_STACK_DEPTH
Jérémy Zurcher [Fri, 26 Jul 2013 15:14:52 +0000 (17:14 +0200)]
eo2: add virtual func support
Tom Hacohen [Fri, 26 Jul 2013 09:29:54 +0000 (10:29 +0100)]
eo2: compile eo2_base_class when compiling libeo.
Tom Hacohen [Fri, 26 Jul 2013 09:27:08 +0000 (10:27 +0100)]
eo2: explicitly put void as the arguments in a zero argument function (macro).
Jérémy Zurcher [Fri, 26 Jul 2013 06:39:34 +0000 (08:39 +0200)]
eo2: _eo2_api_desc_get() searches the class hierarchy
Jérémy Zurcher [Fri, 26 Jul 2013 01:05:06 +0000 (03:05 +0200)]
eo2: oops, forgot to init desc to NULL in eo2_api_op_id_get()
Jérémy Zurcher [Fri, 26 Jul 2013 00:47:59 +0000 (02:47 +0200)]
eo2: can't detect return in a eo2_do macro, *sigh*
Jérémy Zurcher [Fri, 26 Jul 2013 00:34:46 +0000 (02:34 +0200)]
eo2: eo2_base_class uses eo2 stuff only, I hope
Jérémy Zurcher [Fri, 26 Jul 2013 00:34:16 +0000 (02:34 +0200)]
eo2: eo2_api_op_id_get search in parent klasses too
Jérémy Zurcher [Wed, 25 Dec 2013 15:14:55 +0000 (16:14 +0100)]
eo2: EO2_OP_FUNC_OVERRIDE copy doc from overriden func
Jérémy Zurcher [Wed, 25 Dec 2013 15:13:14 +0000 (16:13 +0100)]
eo2: set eo2_constructor and eo2_destructor chaining
Jérémy Zurcher [Wed, 24 Jul 2013 22:11:00 +0000 (22:11 +0000)]
eo2: use EO2_VERSION
Jérémy Zurcher [Wed, 24 Jul 2013 22:10:26 +0000 (22:10 +0000)]
eo2: add cur_klass in call Stack and eo2_do_super
in eo2_do_start(), reuse previous stack fetched pointers when possible
Jérémy Zurcher [Wed, 24 Jul 2013 22:08:37 +0000 (22:08 +0000)]
eo2: improve func overriding
add klass_id parameter to eo2_get_op_id()
in op descriptions, allow NULL fct pointer for virtual,
and use EO2_OP_OVERRIDE to declare overriding.
Jérémy Zurcher [Wed, 24 Jul 2013 22:01:14 +0000 (22:01 +0000)]
eo2: eo2_base_class, one step further
Jérémy Zurcher [Wed, 25 Dec 2013 14:19:07 +0000 (15:19 +0100)]
eo2: Eo.h swallows eo2_base_class.h
Jérémy Zurcher [Wed, 25 Dec 2013 14:16:34 +0000 (15:16 +0100)]
eo2: call stack Proof Of Concept
no grow/shrink or thread local storage
Jérémy Zurcher [Wed, 25 Dec 2013 14:13:41 +0000 (15:13 +0100)]
eo2: eo2_base_class on it's way
Jérémy Zurcher [Wed, 25 Dec 2013 14:12:06 +0000 (15:12 +0100)]
eo2: better op_descs integration
struct _Eo_Class_Description swallows
Eo2_Op_Description *descs2;
Jérémy Zurcher [Wed, 25 Dec 2013 14:10:42 +0000 (15:10 +0100)]
eo2: use EO2 instead of EO in macro names
Jérémy Zurcher [Wed, 25 Dec 2013 14:09:16 +0000 (15:09 +0100)]
eo2: add EO_FUNC_BODY_VOID and EO_FUNC_BODY_VOIDV macros
Jérémy Zurcher [Mon, 22 Jul 2013 17:31:58 +0000 (17:31 +0000)]
eo2: rename func parameter into _func_
Jérémy Zurcher [Wed, 25 Dec 2013 14:05:44 +0000 (15:05 +0100)]
eo2: add macros to feed op_descs
Jérémy Zurcher [Wed, 25 Dec 2013 14:04:26 +0000 (15:04 +0100)]
eo2: _Eo_Class_Description swallows op_descs
remove OpDescs argument from macros,
eo2_get_op_id() uses binary search
Jérémy Zurcher [Mon, 22 Jul 2013 14:06:29 +0000 (14:06 +0000)]
eo2: clear _obj_ ptr at the end of eo2_do
Jérémy Zurcher [Wed, 25 Dec 2013 14:02:25 +0000 (15:02 +0100)]
eo2: add optional macros eo2_call[v]
Jérémy Zurcher [Thu, 18 Jul 2013 07:10:07 +0000 (07:10 +0000)]
eo2: add comments end clean up
Jérémy Zurcher [Thu, 11 Jul 2013 12:15:39 +0000 (14:15 +0200)]
eo2: use internal unref, break if eo2_start returns NULL
Jérémy Zurcher [Wed, 25 Dec 2013 13:51:52 +0000 (14:51 +0100)]
eo2: eliminate the need of OPID and Eo_Op_Func_Description
at class elaboration, sort the op descriptions using the function pointer.
when calling a function, do a dichotomic search in the
class op descriptions to find the corresponding OP_ID,
then keep it in a static variable.
Cedric Bail [Wed, 25 Dec 2013 13:34:26 +0000 (14:34 +0100)]
eo2: make macro pass C++ compiler.
Jérémy Zurcher [Wed, 10 Jul 2013 07:24:59 +0000 (09:24 +0200)]
eo2: fix obj_data retrieval and speed up
obj_data which is built from func->src not obj->klass.
replace eo2_func_get() and eo2_data_scope_get() calls
with one call to eo2_call_resolve().
Jérémy Zurcher [Tue, 9 Jul 2013 15:43:46 +0000 (17:43 +0200)]
eo2: add macros for functions with no argument
Tom Hacohen [Tue, 9 Jul 2013 14:49:45 +0000 (15:49 +0100)]
eo2: pass the object id and data to function call
Jérémy Zurcher [Tue, 9 Jul 2013 12:21:11 +0000 (14:21 +0200)]
eo2: add eo2_data_scope_get()
use it in function body
Jérémy Zurcher [Tue, 9 Jul 2013 12:11:05 +0000 (14:11 +0200)]
eo2: EO_FUNC -> EO_FUNC_BODY
use macro to build the function body,
the function prototype is a regular one
Jérémy Zurcher [Tue, 9 Jul 2013 11:59:34 +0000 (13:59 +0200)]
eo2: macro eo_o => eo2_o for clarity
Tom Hacohen [Tue, 9 Jul 2013 09:48:30 +0000 (10:48 +0100)]
eo2: fix wrong eo2_do macro as reported by Jeremy.
Tom Hacohen [Mon, 8 Jul 2013 15:31:36 +0000 (16:31 +0100)]
eo2: Eo2 first commit.
Daniel Zaoui [Thu, 3 Apr 2014 13:20:58 +0000 (16:20 +0300)]
Eolian: add support for functions scope.
This patch adds support for protected functions.
In the .eo file, the scope (public by default) has to be added before
the function name e.g:
protected foo ...
To access the protected APIs, #define (CLASS)_PROTECTED is needed e.g:
#define ELM_BUTTON_PROTECTED
Daniel Zaoui [Sun, 30 Mar 2014 13:22:14 +0000 (16:22 +0300)]
Eolian: generation of Eo2.
The generation of Eo2 can be enabled by defining EO flag in
common_funcs.h.
Daniel Kolesa [Wed, 9 Apr 2014 14:48:41 +0000 (15:48 +0100)]
eina: a highly irritating error in eina_file documentation
Wonguk Jeong [Wed, 9 Apr 2014 10:45:30 +0000 (19:45 +0900)]
ecore_evas_extn: update plug image object after disconnection
Summary:
plug image object was not cleaned after server disconnection.
specifically, image data was cleaned (NULL), but it was not updated for real on screen
--> set dirty of plug image object
@fix
Test Plan: elementary_test -> open window socket -> open window plug -> close window socket -> plug should be cleaned up
Reviewers: raster, cedric
Reviewed By: raster
CC: seoz, cedric
Differential Revision: https://phab.enlightenment.org/D703
wonguk.jeong [Wed, 9 Apr 2014 10:21:30 +0000 (19:21 +0900)]
ecore_evas_extn: initialize server handle on server deletion
Summary:
Since plug sends message by using deleted server handle (dangling pointer),
I could see glorious error message as below:
*** ECORE ERROR: Ecore Magic Check Failed!!!
*** IN FUNCTION: ecore_con_server_send()
ERR<842>:ecore lib/ecore/ecore.c:729 _ecore_magic_fail() Input handle pointer is NULL!
ERR<842>:ecore lib/ecore/ecore.c:740 _ecore_magic_fail() *** NAUGHTY PROGRAMMER!!!
*** SPANK SPANK SPANK!!!
*** Now go fix your code. Tut tut tut!
Therefore, I initialized server handle on server deletion
@fix
Test Plan: create socket -> create plug -> destroy socket -> mouse move on plug area
Reviewers: raster, cedric
Reviewed By: raster
CC: seoz, cedric
Differential Revision: https://phab.enlightenment.org/D701
Felipe Magno de Almeida [Wed, 9 Apr 2014 10:12:46 +0000 (19:12 +0900)]
eina-cxx: Modified eina C++ log use syntax
Summary:
Modified syntax for eina C++ log to imitate the macro call as returning a stream. So, instead of:
EINA_CXX_DOM_LOG_CRIT(efl::eina::global_domain, "foo " << 5);
It is now used as:
EINA_CXX_DOM_LOG_CRIT(efl::eina::global_domain) << "foo " << 5;
Which more closely resambles using IOStreams in C++.
@feature
Reviewers: cedric, barbieri, smohanty
Reviewed By: barbieri
CC: cedric
Differential Revision: https://phab.enlightenment.org/D623
Felipe Magno de Almeida [Wed, 9 Apr 2014 10:11:46 +0000 (19:11 +0900)]
eet-cxx: Renamed a few local variables and avoided other warnings
Summary: Renamed a few local variables to avoid excessive warnings with -Wshadow warning. Also made construction of a few objects pass all arguments for explicit initialization to avoid other harmless warning.
Reviewers: cedric, tasn, smohanty, raster
Reviewed By: raster
CC: cedric
Differential Revision: https://phab.enlightenment.org/D698
Chris Michael [Wed, 9 Apr 2014 08:44:16 +0000 (09:44 +0100)]
ecore-evas-wl: Reduce useless compositor redraws during render update
and update input & opaque regions after resizing.
@bugfix: We do not need to call ecore_wl_window_damage & commit here.
The damages are already handled in the evas engine for both shm & egl.
Those damages are sent to the compositor Already from the evas engine,
so we don't need to send the same damages twice. This reduces more
useless compositor redraws as we are not constantly sending damages &
calling commit twice for every frame.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 9 Apr 2014 08:41:02 +0000 (09:41 +0100)]
ecore-wl: Optimize setting of window input region
@bugfix: Store the input region into the window structure, and don't
re-add a duplicate input region (done by comparison of saved region).
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 9 Apr 2014 08:38:16 +0000 (09:38 +0100)]
ecore-wl: Store window input region into structure
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Wed, 9 Apr 2014 08:34:18 +0000 (09:34 +0100)]
ecore-wl: Optimize opaque region setting for surface and reduce
unnecessary calls to surface commit.
@bugfix: We don't need to call surface_commit if we are just setting
the opaque (or input) region(s). This reduces some overhead on the
compositor side (and thus reduces useless redraws). Also, optimize
opaque_region_set to not Reset to the same region; we do this by
storing the opaque region into the window structure, and on calls to
opaque_region_set we can compare those values and not re-apply the
same opaque region.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Yossi Kantor [Thu, 3 Apr 2014 10:58:34 +0000 (13:58 +0300)]
Eolian: Legacy generator generates const return value for legacy header if needed
Yossi Kantor [Wed, 2 Apr 2014 13:12:23 +0000 (16:12 +0300)]
Eolian: Legacy generator - no semicolon after EINA_WARN_UNUSED_RESULT
Stefan Schmidt [Tue, 8 Apr 2014 14:22:59 +0000 (16:22 +0200)]
rg_etc: Fix local shadow problems
Make it clear which local variable we really want to use by changing
the names. All of these seem to be fine but this can really bite us
so have better clarity here.
Stefan Schmidt [Tue, 8 Apr 2014 09:06:49 +0000 (11:06 +0200)]
build: Give correct path for test files
Another breakage coming in with the rg_etc changes. Image files
have been missing the correct location to pick them up for distcheck.
Stefan Schmidt [Tue, 8 Apr 2014 08:56:42 +0000 (10:56 +0200)]
build: Fix make distcheck for tgv saver
Classical copy and paste bug in Makefle.am. The saver src dir only has
the *save* code.
Jean-Philippe Andre [Tue, 8 Apr 2014 08:23:04 +0000 (17:23 +0900)]
Evas gl: Remove unused variable
Stefan Schmidt [Tue, 8 Apr 2014 08:45:44 +0000 (10:45 +0200)]
rg_etc: Really fix debug build.
Finally finishing what
2e8c7cad3a89dfce5b9bf95f42a91da625036ea5 tried to fix.
Jean-Philippe Andre [Tue, 8 Apr 2014 06:57:27 +0000 (15:57 +0900)]
ETC1 encoding: fix typo in TGV and EET savers
If quality is >30 && <=70 then choose medium params, not low.
Spotted by Snacker, thanks.
Yossi Kantor [Tue, 1 Apr 2014 14:35:04 +0000 (17:35 +0300)]
Eolian: Fix legacy generation.
Semicolon was misplaced when function flags are needed.
Daniel Zaoui [Sun, 6 Apr 2014 14:10:05 +0000 (17:10 +0300)]
Eolian: clean API.
defines used as keys for internal hash tables are now replaced by
functions giving access to the internal data.
Daniel Zaoui [Sun, 6 Apr 2014 13:41:45 +0000 (16:41 +0300)]
Eolian: rename enums.
Add the EOLIAN namespace to the function types.
zmike [Mon, 7 Apr 2014 17:15:40 +0000 (13:15 -0400)]
reformat edje_player
ffs these tabs
Mike Blumenkrantz [Mon, 7 Apr 2014 13:54:42 +0000 (09:54 -0400)]
+eeze_udev_get()
@feature
Ryuan Choi [Mon, 7 Apr 2014 01:21:19 +0000 (10:21 +0900)]
configure: Fix the possible build break after
83af91c8b
Added eet into internal dependencies for ecore_evas_connect, ethumb, ethumb_client
I got below errors for ecore_evas_connect, ethumb, ethumb_client
lib/evas/.libs/libevas.so: undefined reference to `eet_data_image_colorspace_get'
lib/evas/.libs/libevas.so: undefined reference to `eet_data_image_read_to_cspace_surface_cipher'
collect2: error: ld returned 1 exit status
Carsten Haitzler (Rasterman) [Sat, 5 Apr 2014 13:21:13 +0000 (22:21 +0900)]
fix swap buffers with damage to not detect if ext str is not there
@fix
Carsten Haitzler (Rasterman) [Fri, 4 Apr 2014 10:35:16 +0000 (19:35 +0900)]
ecore-con - deal with internal buffer growing over 2g in size
@fix this fixes a corner case where you may buffer 2g or more of data
in ecore-con buffers. this leads to a stall. @fix
Jean-Philippe Andre [Fri, 4 Apr 2014 09:35:22 +0000 (18:35 +0900)]
Evas filters: Remove useless include
Jean-Philippe Andre [Fri, 4 Apr 2014 09:06:26 +0000 (18:06 +0900)]
Evas: Fix harmless typo in eet image loader
Spotted by Snacker, thanks.
Stefan Schmidt [Fri, 4 Apr 2014 07:39:28 +0000 (09:39 +0200)]
rg_etc: Fix debug build
In
4053911e we tried to fix the debug build and failed. The function API
actually asks for coords as first parameter. Our nightly builds expose
this debug build and have been failing due to this.
It also makes clear that the debug part of this code was never really
used upstream...
Chris Michael [Fri, 4 Apr 2014 06:51:06 +0000 (07:51 +0100)]
evas-drm: Remove all async_page_flip options/references
Async page flip can cause tearing, is not supported on all cards, and
apparently requires a specific libdrm patchlevel...in general, more
trouble than it's worth, so let's just remove it.
@bugfix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Chris Michael [Fri, 4 Apr 2014 06:31:45 +0000 (07:31 +0100)]
evas-drm: Default async page flip to false as this can cause tearing
Async page flip can cause visual tearing, so disable by default for
all cards.
@bugfix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
wonguk.jeong [Fri, 4 Apr 2014 03:16:39 +0000 (12:16 +0900)]
ecore_evas_extn: fix doxygen sample
Summary:
fix doxygen sample according to D690
@fix
Reviewers: raster
Reviewed By: raster
CC: seoz, cedric
Differential Revision: https://phab.enlightenment.org/D697
Jean-Philippe Andre [Fri, 4 Apr 2014 01:28:45 +0000 (10:28 +0900)]
Evas cserve2: Fix crash in elm_test GLView
This whole cache/cache2 API duplication is a complete mess.
Jean-Philippe Andre [Thu, 3 Apr 2014 10:18:52 +0000 (19:18 +0900)]
Evas gl: Fix colors when using ETC1 textures
We need to use the RGBA shader to invert R and B otherwise
those will be inverted on the screen.
Jean-Philippe Andre [Thu, 3 Apr 2014 09:39:53 +0000 (18:39 +0900)]
Evas: Fix TGV loader to properly copy ETC1 data
There was some invalid arithmetics with the buffer offset.
Jean-Philippe Andre [Thu, 3 Apr 2014 08:28:57 +0000 (17:28 +0900)]
Evas gl: Fix dlsym usage for glCompressedTexImage2d
This symbol should be part of the loaded libraries, can be found
using dlsym, even if eglGetProcAddress() returns NULL.
Add etc1 flag in the debug output.
Jean-Philippe Andre [Thu, 3 Apr 2014 03:26:46 +0000 (12:26 +0900)]
Evas gl: Use implicit cast to DATA8 with image.data8
data8 is there precisely to avoid casting the iamge data when
handling it as DATA8.
This is purely a cosmetic change
Jean-Philippe Andre [Wed, 2 Apr 2014 10:03:03 +0000 (19:03 +0900)]
Evas: Add support for AGRY88 in image creation functions
- evas_common_rgba_image_from_data
- evas_common_rgba_image_colorspace_set
- evas_common_image_colorspace_normalize
Jean-Philippe Andre [Wed, 2 Apr 2014 10:01:05 +0000 (19:01 +0900)]
Evas: Add support for AGRY88 in evas_common_rgba_image_from_copied_data
This should fix a potential abort().
Carsten Haitzler (Rasterman) [Thu, 3 Apr 2014 11:57:04 +0000 (20:57 +0900)]
since event is for server, bdata->image is null anyway
wonguk.jeong [Thu, 3 Apr 2014 11:55:38 +0000 (20:55 +0900)]
ecore_evas_extn: give proper event data to callbacks
Summary:
extn send ecore event when plug is connected/disconnect
(ECORE_EVAS_EXTN_CLIENT_ADD/ECORE_EVAS_EXTN_CLIENT_ADD)
By the way, the event data is currently "Ecore_Evas_Engine_Buffer_Data" which should be hidden
Moreover, when I make multiple sockets,
I need a event data to distinguish which socket is connected by client.
Therefore, I recommend to use Ecore_Evas as event data.
@fix
Reviewers: raster, Hermet, woohyun, cedric, seoz
Reviewed By: raster
CC: seoz, cedric
Differential Revision: https://phab.enlightenment.org/D690
Carsten Haitzler (Rasterman) [Thu, 3 Apr 2014 10:56:04 +0000 (19:56 +0900)]
it seems the if 0'd code was wrong and ecore win32 doesnt support nocursor
Tom Hacohen [Thu, 3 Apr 2014 10:52:00 +0000 (11:52 +0100)]
Revert "tests: Add a case for ellipsis in complex markup text."
Opened a task (1151) for it and should revert this when ready to fix.
This reverts commit
9128ac82a0c0b6081d0065891d746768be21ccd5.
Daniel Zaoui [Thu, 3 Apr 2014 07:24:44 +0000 (10:24 +0300)]
Eolian: use legacy_prefix: null for interfaces.
legacy set to null was used for every function to not generate a legacy
API. legacy_prefix set to null indicates no legacy has to be generated
for all the class.
Carsten Haitzler (Rasterman) [Wed, 2 Apr 2014 23:06:04 +0000 (08:06 +0900)]
unbreak edje multisense after eolian changes to ecore_audio
fixes break in
70b39368e61e6740e741f8ff34bb0c1bddbaaacd
Tom Hacohen [Wed, 2 Apr 2014 13:54:16 +0000 (14:54 +0100)]
Ecore X: Correctly handle autogen generated ecore_x_version.h
This is by no means a built_source, and it should not be cleaned.
Fixes T1148.
Tom Hacohen [Wed, 2 Apr 2014 13:34:47 +0000 (14:34 +0100)]
Ecore audio: Fix casting of int to void *.
When doing that, intptr_t shoud be used as well.
Yossi Kantor [Thu, 27 Mar 2014 12:05:41 +0000 (14:05 +0200)]
Eolian: Integration of Ecore Audio In Tone
Yossi Kantor [Thu, 27 Mar 2014 11:34:01 +0000 (13:34 +0200)]
Eolian: Integration of Ecore Audio Out Pulse