Commit Graph

3135 Commits

Author SHA1 Message Date
Cedric Bail 725237df0a edje: It should never happen, but apparently it does, so assert to get a proper bt. 2013-10-11 15:15:54 +09:00
Cedric Bail 64b2b9c2b2 edje: fix a memory leak of Edje_Part_Element for any .edj using them. 2013-10-11 14:47:44 +09:00
Cedric Bail c718a41728 eet: log size of subtype added to an Eet_Data_Descriptor.
This is really useful to track down a leak of a memory piece allocated by an
eet_data function. If you know the size of the leaked structure (valgrind
give you the total allocated size and the number of structure in it, so you
need to divide before having the right number), you just need to do :
EINA_LOG_LEVELS=eet:3 my_app 2>&1 | grep the_size

And there will be very few line matching reducing what you should be looking at.
2013-10-11 14:43:35 +09:00
Cedric Bail 7caef271dc ecore: Use Eina_Spinlock for Ecore_Thread. 2013-10-11 11:08:17 +09:00
Cedric Bail 6dcffec491 evas: Use Eina_Spinlock for Evas_Scalecache, Evas_Async_Events and Image_Entry. 2013-10-11 11:08:17 +09:00
Cedric Bail 12d34309c7 eina: use Eina_Spinlock for Eina_Chained_Mempool. 2013-10-11 11:08:17 +09:00
Cedric Bail b9d8a7af3a eet: use Eina_Spinlock instead of Eina_Lock for Eet_Dictionary. 2013-10-11 11:08:17 +09:00
Cedric Bail 435caae51a eo: use Eina_Spinlock instead of Eina_Lock.
This is an ABI/API break for Eo, you will need to rebuild everything that use Eo.
2013-10-11 11:08:17 +09:00
Cedric Bail 0aa77d7dde eina: use Eina_Spinlock in Eina_Stringshare instead of Eina_Lock. 2013-10-11 11:08:17 +09:00
Cedric Bail 82d86ea42d eina: use Eina_Spinlock for Eina_Log. 2013-10-11 11:08:17 +09:00
Cedric Bail 1b07350a46 eina: add Eina_Spinlock API. 2013-10-11 11:08:17 +09:00
Jihoon Kim 98fac39cb9 ecore_imf_example: notify the cursor information in focus-in handler 2013-10-11 10:23:19 +09:00
Carsten Haitzler 8ed6324a31 ecore-con - followup commit to curl dynamic load - support win and osx names 2013-10-11 08:13:35 +09:00
Rafael Antognolli f2d1a21147 ecore/wayland: Add subsurface handling APIs. 2013-10-10 13:24:22 -03:00
Rafael Antognolli 1cef77bfd7 ecore/wayland: Add and initialize subcompositor inside Ecore_Wayland. 2013-10-10 13:24:22 -03:00
U. Artie Eoff d201747cc8 ecore/wayland: detect wayland-scanner
We need the wayland-scanner program to auto-generate the
subsurface protocol source files from subsurface.xml

Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
2013-10-10 13:24:17 -03:00
Rafael Antognolli f26f2da5ea adding wayland subsurfaces protocol file. 2013-10-10 13:21:40 -03:00
Carsten Haitzler 2c1c6b9335 ecore-con: make curl support entirely runtime loaded via eina_module
this makes curl support a pure runtime-only thing. libcurl is loaded by
eina_module (dlopen/dlsym) when curl is actually first needed (when a
url connection/object is created). this means that ecore-con has no
link or compile dependencies on curl, only runtime, AND this saves
memory (due to curl inits using apparently a chunk of private pages).
so this saves memory and moves the dependency to runtime (though still
consider libcurl a dependency of efl - but like a binary executed,
it's at runtime).
2013-10-10 22:31:18 +09:00
Michaël Bouchaud (yoz) 4ce3e1e72f emotion: add two events to trigger when a webcam is plugged or unplugged 2013-10-09 12:29:04 +02:00
discomfitor 80bcfac650 also unbreak ecore-wl header with previous reverts... 2013-10-05 16:38:55 +01:00
discomfitor 8f493ab6c5 Revert "ecore/wayland: Add subsurface handling APIs."
This reverts commit 65b960f4a6.

Conflicts:
	src/lib/ecore_wayland/ecore_wl.c
2013-10-05 16:26:24 +01:00
discomfitor f66eceed10 Revert "ecore/wayland: Add and initialize subcompositor inside Ecore_Wayland."
This reverts commit 7994b62c6b.
2013-10-05 16:23:38 +01:00
discomfitor 06a5ba2118 Revert "adding wayland subsurfaces protocol file."
This reverts commit ad27efcb39.
2013-10-05 16:22:15 +01:00
maxerba 8de703279c Adding italian entries in desktop files 2013-10-05 11:17:58 +02:00
Rafael Antognolli 9506fd5db7 evas/image: Add video surface caps.
Wayland subsurfaces can be used as video surfaces too, similarly to
Ecore_X windows. However, they support a different set of features. Some
of them, like subsurface clipping and scaling, might be added in the
future, but so far we must work with what we have.

This commit allows to set an enum bitfield to the Video_Surface, with
the default value being one that will keep the same behavior as before,
for Ecore_X window. Thus, backward compatibility should not be broken.

It's possible to inform Evas that the surface in question is not able to
resize or scale, or that it's above or below the original canvas
surface. This allows Evas to show the surface itself, or use a buffer of
pixels instead, when the capabilities are not available.
2013-10-04 18:28:51 -03:00
Rafael Antognolli d1c6266c45 evas/image: Delay some video overlay operations.
If we are running on async render, some operations must be delayed, so
they will happen at the same time that the canvas rendering result gets
updated on the window/surface.
2013-10-04 18:26:57 -03:00
Rafael Antognolli 22f9a6e8f0 evas/image: Take framespace into account when moving video surface. 2013-10-04 18:23:58 -03:00
Rafael Antognolli 65b960f4a6 ecore/wayland: Add subsurface handling APIs. 2013-10-04 18:23:58 -03:00
Rafael Antognolli 7994b62c6b ecore/wayland: Add and initialize subcompositor inside Ecore_Wayland. 2013-10-04 18:23:58 -03:00
Rafael Antognolli ad27efcb39 adding wayland subsurfaces protocol file. 2013-10-04 18:23:57 -03:00
Cedric Bail fe25608edd eina: handle more compiler strangeness for bswap.
So current order is :
- __builtin_bswap*() for compiler that provide it
- _byteswap_*() for MSVC
- bswap_*() for older Linux and some BSD
- own C code when everything else fall appart.

The reason for this order is that the builtin will always generate
the best assembly possible. On my system bswap_*() are not changing
in all version to the best solution as they are almost equivalent to
the C macro.
2013-10-04 12:49:02 +09:00
Cedric Bail d52f825de6 eina: in case of an error we should exit not continue and manipulate dead data.
This should fix a warning catched by LLVM/Clang.
2013-10-04 10:56:05 +09:00
Tom Hacohen 82f5f78dac Revert "evas/textblock - null check."
I'm sorry, but those kind of commit messages are unacceptable for code
I'm the only maintainer of. It's bad enough that to have them in the
project in general, but this I won't accept.

I wanted to review this commit, but the lack of explanation about what
you are trying to fix and why you think this is the good fix prevents me
from doing my job. However, without really looking too much into it,
this commit looks wrong. evas_textblock_cursor_format_is_visible_get
should verify there's a format node...

Please come up with a better commit message and re-commit.

This reverts commit fe33aa7408.
2013-10-03 18:45:07 +01:00
ChunEon Park fe33aa7408 evas/textblock - null check. 2013-10-04 02:43:20 +09:00
ChunEon Park 18be4c50d9 eina/eina_file - fix eina_file_map_lines() to not drop of one character in the last line. 2013-10-04 01:58:35 +09:00
Cedric Bail 44988e4798 evas: more fix for ellipsis.
This one fix size of the object that didn't take into account the style
of the text since we added the support of ellipsis in Evas. It also
correctly detect when we insert an ellipsis in the text to relayout
properly on resize.
2013-10-02 20:57:29 +09:00
Cedric Bail 4c572c827a evas: we actually need to take those additional value into account. 2013-10-02 20:57:29 +09:00
Cedric Bail 672bd97cea ecore_ipc: use the new eina_swap*(). 2013-10-02 20:54:50 +09:00
Cedric Bail ff3d2a68d5 eina: add infrastructure to handle more CPU and compiler builtin information. 2013-10-02 20:54:50 +09:00
Tom Hacohen 04b28686af Evas Textblock: Use font underline properties.
This change causes textblock to use the font properties when drawing
underline.
2013-10-02 11:46:25 +01:00
Tom Hacohen fca131d6fa Evas font: Added functions to query the underline properties.
This will let us query the position and thickness as requested by the font.
2013-10-02 11:46:25 +01:00
Carsten Haitzler 6a2aafeac3 evas - more deadlocks found. fixed. 2013-10-02 17:06:26 +09:00
Carsten Haitzler 48a3f299b0 evas - fix deadlock in preload that we seemm to never have hit before... 2013-10-02 16:32:33 +09:00
Cedric Bail 3b93896e54 evas: fix Evas_Object_Text alignment with ellipsis. 2013-10-02 11:02:05 +09:00
U. Artie Eoff 4606c0b95e examples/ecore: don't use ECORE_CON_LIBS
We can't use ECORE_CON_LIBS at the examples/ "make" context
since it defines libraries relative to the src/ directory
(e.g. lib/ecore/libecore.la).  Use ECORE_CON_COMMON_LDADD instead.

This fixes the following link error with ecore_fd_handler_gnutls_example
when the project is configured with --with-crypto=gnutls:

libtool: link: cannot find the library `lib/ecore/libecore.la'

Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
2013-10-01 13:53:29 -07:00
U. Artie Eoff 65b11e98c8 examples/ecore: ecore_pipe_gstreamer_example must go in HAVE_GSTREAMER guard
Only specify ecore_pipe_gstreamer_example in EXTRA_PROGRAMS inside the
HAVE_GSTREAMER makefile guard.

Fixes: https://phab.enlightenment.org/T423

Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
2013-10-01 13:46:57 -07:00
Carsten Haitzler 32514b7271 evas - clean up tiler code a lot and remove old commented out stuff 2013-10-01 20:57:39 +09:00
Carsten Haitzler e383e3096d evas - try cleanup pipe_region_intersects again.. this time without bugs. 2013-10-01 20:57:39 +09:00
Cedric Bail 5487b75635 evas: fix some ellipsis case. 2013-10-01 20:45:21 +09:00
Cedric Bail fdea402d32 evas: try to set EAPI correctly. 2013-10-01 17:24:37 +09:00
Cedric Bail 2e5a0215e6 evas: reduce number of relayout of text object to the strict minimum. 2013-10-01 16:38:47 +09:00
Vincent Torri 3b8b2ac66c evas: add JPEG 2000 loader.
This add finally support for JPEG 2000, but be aware that libopenjpeg
is very badly managed. There is currently only version 1.5.x that does
provide the right files, is usable by a third party and portable. You
can seriously forget any other version.
2013-10-01 16:38:44 +09:00
Cedric Bail 83eaf14f32 evas: make Evas_Loader.h a real public API. 2013-10-01 16:38:44 +09:00
Tom Hacohen bb84a01f7c Evas textblock: Moved relayout checks to a function.
This cleans up the code a bit and makes it a bit simpler.
2013-09-30 16:15:16 +01:00
Carsten Haitzler a4a285089f evas - improve textblock logic to reduce num of layouts when used - faster
when using genlist and the edje item objects, there seem to be a lot
of excess textblock layouts happening. i was seeing about 12 layouts per tb
part in the edje before this patch. with this it's down to about 3.
2013-09-30 23:31:48 +09:00
Tom Hacohen baf0fc4268 Eo: Don't compare desc to NULL as it can never be NULL at that stage.
Fixes coverity CID1039420.
2013-09-30 14:32:47 +01:00
Tom Hacohen de6f57fac0 Eina inlist: Removed redundant if in EINA_INLIST_FOREACH_SAFE.
If it is not NULL, so will EINA_INLIST_GET. As that returns a pointer to an
area after it.
2013-09-30 14:28:38 +01:00
Tom Hacohen 104a57b58a Eo callbacks: Fix a possible issue of corrupted callback list.
This happens when we delete more than one callback at the beginning
of the list (i.e 2 or more) in one go.
2013-09-30 14:16:46 +01:00
Tom Hacohen f5d4a807c8 Eo: Don't write to pointer after free.
Fixes coverity: CID 1039898.
2013-09-30 14:15:37 +01:00
Tom Hacohen 42d29b55e5 Eo: don't va_start without a matching va_end.
Fixes coverity CID1099707.
2013-09-30 14:10:21 +01:00
Tom Hacohen 8ca320a1fc Eo: don't va_start without a matching va_end.
Fixes coverity CID1099708.
2013-09-30 14:07:20 +01:00
Stefan Schmidt 642e4293ff evas/textblock: Remove null statement. 2013-09-30 09:48:34 +01:00
Cedric BAIL 5f630e8653 evas: let's inline data to get a little speedup when matching kerning. 2013-09-29 13:43:46 +02:00
Cedric BAIL 5d37215d26 evas: let's micro optimize the parsing of format.
Only the key is worth being a stringshare as it is used to do an efficient
binary comparison instead of iterating over all possibility. Also reused
some already known value and a few other speedup.
2013-09-29 13:43:46 +02:00
ChunEon Park 3b6961e175 evas/canvas - code refactoring. more clean code. 2013-09-29 17:31:56 +09:00
Daniel Zaoui 203b6295e9 Reduce the number of deleted objects to reduce the number of expected error prints 2013-09-29 09:34:03 +03:00
Daniel Zaoui 334ac705f3 Eo: fix when detaching the composite of its parent ... that has to exist 2013-09-29 08:50:32 +03:00
Tom Hacohen cb92a60a61 Eo: merge _eo_obj_dov_internal and _eo_class_dov_internal.
They are the same except for really minor differences.
2013-09-27 17:21:08 +01:00
Tom Hacohen e6886e05b1 Eo: get rid of eo_class_do(_super) which we don't need anymore.
We now completely use eo_do(_super), so those are not needed.
2013-09-27 17:01:51 +01:00
Tom Hacohen 7ed7d7da8b Eo: class_get on a class should not return itself.
This is there until we create a Class class of which all classes are
instances.
2013-09-27 16:50:34 +01:00
Tom Hacohen c1e5fb7cf8 Eo tests: Fixed wrong prototype in one of the tests in the suite. 2013-09-27 16:44:00 +01:00
Tom Hacohen 682c69764d Revert "eo: libs,test,benchmarks Eo_Class -> Eo"
This reverts commit 1714fe93f4.

We actually want this type, it makes things clearer.

Conflicts:
	src/tests/eo/function_overrides/function_overrides_inherit2.c
	src/tests/eo/function_overrides/function_overrides_simple.c
	src/tests/eo/suite/eo_test_class_simple.c
2013-09-27 16:40:32 +01:00
Tom Hacohen 832fc5b5ce Manually revert "eo: replace Eo_Class with Eo"
This reverts commit ee1b0833ed

I did it manually because the code changed too much.

We actually want this type, it makes things more clear and easier to
understand.
2013-09-27 16:40:32 +01:00
Tom Hacohen ba5af54f6d Eo: Fixed the type _eo_id_get accepts. 2013-09-27 14:01:47 +01:00
Tom Hacohen e3cb9195c2 Eo: Explicitly include Eina.h in eo_private.h.
It's uses eina stuff, we can't just assume eina is already included.
2013-09-27 14:01:47 +01:00
Tom Hacohen 01effff86f Eo: Get rid of the _Eo type, it's not needed.
We have Eo_Base for that.
2013-09-27 14:01:47 +01:00
Tom Hacohen c64637e500 Eo: Use __FILE__ and __LINE__ instead of random values. 2013-09-27 14:01:47 +01:00
Tom Hacohen 1059f802bf Eo: Rename Eo_Header to Eo_Base. 2013-09-27 14:01:47 +01:00
Tom Hacohen 828928601e Eo: Added an Eo_Class type just for compat. Should be removed. 2013-09-27 14:01:47 +01:00
Tom Hacohen e17e66db8c Eo: Get rid of handle. Use the shared header for detection. 2013-09-27 14:01:47 +01:00
Tom Hacohen 5e90d51013 Eo: Merge common part of class and object.
First step toward getting rid of "handle".
2013-09-27 14:01:47 +01:00
Tom Hacohen 8dbbc16731 Eo: Class_Id and Object_Id are now the same type. 2013-09-27 14:01:47 +01:00
Tom Hacohen 2a82ff95e4 Eo: unify the class func and normal func prototypes.
Conflicts:
	src/lib/eo/eo.c
2013-09-27 14:01:47 +01:00
Tom Hacohen 298527191e Eo: Fixed unused warnings when have EO_ID. 2013-09-27 14:01:47 +01:00
Jérémy Zurcher 9fa35820ca eo: ojb_ref -> class_ref 2013-09-27 14:01:46 +01:00
Jérémy Zurcher f4c1bff0f3 eo: eo_do_super_internal() supports objects and classes
eo_class_do_super() macro calls eo_do_super()
eo_class_do_super_internal() and _eo_class_op_internal() are removed

Conflicts:
	src/lib/eo/eo.c
2013-09-27 14:01:46 +01:00
Jérémy Zurcher c4b40aae0d eo: eo_class_get() supports objects and classes 2013-09-27 14:01:46 +01:00
Jérémy Zurcher 8855024e16 eo: eo_class_name_get() supports objects and classes 2013-09-27 14:01:46 +01:00
Jérémy Zurcher ef62885c93 eo: eo_vdo_internal() supports objects and classes
Conflicts:
	src/lib/eo/Eo.h
	src/lib/eo/eo.c
2013-09-27 14:01:46 +01:00
Jérémy Zurcher 12bfc76483 eo: eo_do_internal() supports objects and classes
eo_class_do() macro calls eo_do()
eo_class_do_internal()  is removed
op_type argument is remove from eo_do, eo_vdo_internal

Conflicts:
	src/lib/eo/eo.c
2013-09-27 14:01:46 +01:00
Jérémy Zurcher c24775c58d eo: add union _Eo to unify objects and classes internal pointers 2013-09-27 14:01:46 +01:00
Jérémy Zurcher f43287a261 eo: add _eo_is_a_class(const Eo *obj_id) 2013-09-27 14:01:46 +01:00
Jérémy Zurcher 41bd91379e eo: _Eo -> _Eo_Object
Conflicts:
	src/lib/eo/eo.c
2013-09-27 14:01:46 +01:00
Jérémy Zurcher 1714fe93f4 eo: libs,test,benchmarks Eo_Class -> Eo
Conflicts:
	src/tests/eo/suite/eo_test_general.c
2013-09-27 14:01:46 +01:00
Jérémy Zurcher ee1b0833ed eo: replace Eo_Class with Eo 2013-09-27 14:01:46 +01:00
Jérémy Zurcher a246e581a6 eo: if HAVE_EO_ID use MBS to tag Eo_Id
a bit is taken from generation bits to tag objects references so that we
know if a Eo* is a class or an object
2013-09-27 14:01:46 +01:00
Jérémy Zurcher 5913f78b4f eo: if !HAVE_EO_ID front-pad _Eo_Class and _Eo_Object with _Eo_Handle
this is the first step on the road to remove class specific EAPI from Eo.h
using this handle we will know if a Eo* is a class or an object pointer

Conflicts:
	src/lib/eo/eo.c
2013-09-27 14:01:46 +01:00
Carsten Haitzler 0732fef6ec Revert "evas gl engine - simplify and optimise pipe region intersection checks."
This reverts commit d486150412.
2013-09-27 17:57:41 +09:00
Tom Hacohen 933998b93d Evas image: Moved a variable decl into the ifdef.
This variable is only ever used in the ifdef so there it should
reside.
2013-09-26 16:57:37 +01:00
Tom Hacohen 1845ffe5b0 Eo: remove the classe's EINA_MAGIC when using eo_id. 2013-09-26 16:26:55 +01:00
Chris Michael 3cc4efaf50 Fix doxy typo/grammar
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-26 12:16:10 +01:00
Carsten Haitzler d486150412 evas gl engine - simplify and optimise pipe region intersection checks. 2013-09-26 19:20:22 +09:00
Mike Blumenkrantz dfb0e32bb6 edje swallowing on the currently-swallowed part, which is a noop, now once again returns true 2013-09-26 09:02:54 +01:00
Cedric Bail b125a9afa6 gitignore: do not track generated files. 2013-09-26 15:51:25 +09:00
Cedric Bail 46ca166599 eina: improve benchmark logic to be able to choose which one to run.
Note: Eina_Hash benchmark is not really matching all our usecase.
We need a better tests that would expand the bench with a wider range
of key size. Basically giving a 3d dimension to our gnuplot. Don't know
if it is doable.
2013-09-26 15:51:25 +09:00
Cedric Bail 295babadb1 eina: check if the complete hash match before checking if the key match during children walk.
This give an interesting +15% for all Eina_Hash user whatever hash function they use. The inlined
djb2 is still the fastest one and all other give very close result.

This idea was given by Lucas De Marchi's blog :
http://www.politreco.com/2013/09/optimizing-hash-table-with-kmod-as-testbed/

I do believe that rolling a crc32 implementation as a hash function should give interesting result
in our test.
2013-09-26 15:51:25 +09:00
Lucas De Marchi ad76ce025c Revert "eina: add functions to alloc strings from a printf fmt"
This reverts commit b5fce696c7 and fixes
to NEWS and @since that came later.

These functions are pretty trivial and their functionality can be
obtained with asprintf() and snprintf. The first is not available only
on windows, but there's an implementation for that one on Evil, that
should be used instead.
2013-09-25 22:51:03 -03:00
Tom Hacohen f03148f9e3 Evas font: Fixed evas_font_path_* functions to apply to fontconfig.
Until now those were only used for custom fonts, and not for fontconfig
searches. With this commit, fontconfig will also start looking in those
dirs.
2013-09-25 15:07:39 +01:00
Tom Hacohen baf018d659 Evas font: Use our own custom fontconfig config.
This will make sure people that change the default config don't affect us.
2013-09-25 15:07:38 +01:00
Tae-Hwan Kim 54551defa6 eina: add EINA_INLIST_REVERSE_FOREACH_FROM. 2013-09-25 18:29:23 +09:00
Vorobiov Vitalii 4033943a0d edje: add text min and max getters/setter to edje_edit. 2013-09-25 16:18:05 +09:00
Cedric Bail 5b7063b62a eo: fix those anoying check. 2013-09-25 15:29:19 +09:00
Cedric Bail b37494503f evas: update to new eo_parent_get/set API. 2013-09-25 13:34:18 +09:00
Cedric Bail 5166bab675 ecore: update to new eo_parent_get/set API. 2013-09-25 13:34:18 +09:00
Cedric Bail 936a8072f2 eo: make eo_parent_get/set part of eo_base_class. 2013-09-25 13:34:18 +09:00
Carsten Haitzler b5472db51d fix if obj->layer is null during shutdown 2013-09-25 13:05:41 +09:00
Jérémy Zurcher 3ea1f7ae7c eo: rename _Eo_Internal -> _Eo_Object 2013-09-24 14:53:49 +01:00
Jérémy Zurcher dc63739a9d eo: typedef uintptr_t Eo_Id; as Eo_Class_Id 2013-09-24 14:53:05 +01:00
Chris Michael eeb6f1e59f Do not call actual wl_surface_commit unless we have a buffer attached.
NB: Fixes zmike multi-client problem

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-24 11:34:10 +01:00
Chris Michael deedad61b9 Add structure member to mark if window has an actual buffer
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-24 11:34:10 +01:00
Mike Blumenkrantz 21daab2c62 evas render bug--
objects that were visible and marked as "render del" rects during render are now detected when they magically change visibility during the same render loop, fixing a very hard to reproduce E19 corner case related to fullscreen client rendering with nocomp disabled

<raster> for now all i can say is "put the patch in and lets see if things break"
2013-09-24 11:34:21 +01:00
Christophe Sadoine 87b17f1ce9 eet: added EET_DATA_DESCRIPTOR_ADD_SUB_NESTED(). 2013-09-24 15:10:44 +09:00
Cedric Bail a7fe49139d eina: fix @since to be a proper revision number. 2013-09-24 15:03:24 +09:00
Jorge Zapata b5fce696c7 eina: add functions to alloc strings from a printf fmt 2013-09-24 12:20:27 +09:00
Jorge Zapata b98ee971f3 eina: add a substraction in rectangles and more helpers
Also add functions to cut a rectangle in the different
lengths/coordinates.
Add helper macros to printf a rectangle
2013-09-24 12:20:27 +09:00
Jorge Zapata 538821f09d eina: add double_from/to and helper defines in f16p16 2013-09-24 12:20:27 +09:00
Tom Hacohen 4850c4660f Evas textblock: Fixed broken test.
Item is not meant to take the size of the max ascent, just the ascent.
2013-09-23 14:37:19 +01:00
Tom Hacohen 2ab088aeea Evas textblock: Fixed native size calculation. 2013-09-23 14:37:18 +01:00
Tom Hacohen 2173652b4d Evas textblock: Fix format based line size calculation.
Format based line size modifiers were not applied.
2013-09-23 14:37:18 +01:00
Tom Hacohen cbde2bef69 Evas textblock: Fixed max descent adjustment and a related bug.
The bug caused wrong line sizing in some situations (appending new
paragraphs to a textblock).
2013-09-23 14:37:18 +01:00
Tom Hacohen 72167b9cc3 Evas textblock: Fixed ascent/descent calculation a bit more.
Separated maxascent/descent from ascent/descent even further.
Fix calculation to be based on font instance and not the font group.
2013-09-23 14:37:18 +01:00
Tom Hacohen 5adffd54e5 Evas textblock: rename maxascent/descent->ascent/descent.
Although we kinda use them as max in some situations, they are actually
just the regular ascent and descent. Following commits will make this
separation even stronger.
2013-09-23 14:37:18 +01:00
Jérémy Zurcher 2041e995fc eo: fix EO_DEBUG compilation 2013-09-23 11:07:07 +02:00
Tom Hacohen 94e6f6a5bc Evas textblock: Fix wrong line spacing when appending lines.
This fixes T397 which was introduced by commit: 4bcf4991eb.
This also fixes the issues with enventor.
2013-09-20 13:52:48 +01:00
José Roberto de Souza 5a8d3125b5 eldbus codegen: Initialize signal events with 0 2013-09-19 15:47:22 -03:00
José Roberto de Souza 2266bf8904 eldbus: Use FDO error message to timeout 2013-09-19 15:47:22 -03:00
Jérémy Zurcher 027548011c eo_ptr_indirection.x: fix _eo_id_release when !HAVE_EO_ID 2013-09-18 17:12:15 +02:00
Sung W. Park b9e3e6be57 EvasGL: Fixed a bug where the wrong data variable to buffer alloc func.
It's an optional feature so it's not automatically turned on but
would have caused a segfault somewhere.  Somehow slipped notice
but fixed now.
2013-09-17 17:24:30 +09:00
Chris Michael 592076e319 Reset window opaque region on 180 degree flips also.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-17 08:27:15 +01:00
Chris Michael d8ec30d7cf Call common rotation code before setting engine info
NB: Part of Phab T359 fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-17 07:41:08 +01:00
Chris Michael 70db3bff95 Rework common rotation code to match X11 more closely.
NB: Part of Phab T359 fix.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-17 07:41:08 +01:00
Chris Michael 43fda7c835 Add API functions for window_rotation set/get and Fix Protruding surfaces on rotated, opaque windows
Phab Ticket T359
https://phab.enlightenment.org/T359

NB: When setting the window opaque region, take into account any
existing window rotation, and set opaque region accordingly.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-17 07:41:08 +01:00
Chris Michael 677fdbf81c Update doxy for opaque_region_set function.
Add 'rotation' field to Ecore_Wl_Window structure.
Add API functions to get/set window rotation.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-17 07:41:08 +01:00
Chris Michael a0fb1f4728 Fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-17 07:41:07 +01:00
Chris Michael 24847d77dc Remove extra blank space
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-17 07:41:07 +01:00
Cedric Bail 7f23deb723 eo: fix typo. 2013-09-13 16:46:08 +09:00
Chris Michael 0c88d8e8ce Revert "Reduce additional call to eina_stringshare_replace."
This reverts commit f4f44c777a.
2013-09-13 07:01:06 +01:00
Stefan Schmidt c244dfe89e ephysics: Avoid use after free.
Like the one before. This time we use free deirectly so no delay. Don't
use it after being freed.

CID: 1039894
2013-09-12 15:53:10 +01:00
Stefan Schmidt 95b8c98e91 ephysics: Avoid use after free.
body gets deleted here so better not access it afterwards. My guess is that
in many cases the actual free gets delayed long enough to not crash here but
better avoid this race in the first place.

CID: 1039896
2013-09-12 15:48:58 +01:00
Stefan Schmidt 1fd3950cda ecore_evas: Remove unused code.
rot = rot % 360;
while (rot < 0) rot += 360;

it is guaranteed that rot is between 0 and 359.

CID: 1039470, 1039471
2013-09-12 15:40:41 +01:00
Stefan Schmidt d54bfd7e1d emotion: Avoid leak by also checking for fd being null.
If fd would be null here we would leak the fd handle. Fix the check.

CID: 1039175
2013-09-12 15:26:34 +01:00
Chris Michael 0d0944c4cc Reduce unnecessary pointer frame callbacks
NB: We only need to do pointer frame callbacks if the pointer is using
an animated image.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-12 15:02:34 +01:00
Chris Michael f4f44c777a Reduce additional call to eina_stringshare_replace.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-12 15:02:34 +01:00
Stefan Schmidt 032acce341 ecore_audio: Add missing break in _format_set()
We have been missing the actual break statement in this switch. Without
it the format for auto would always been set to wav.

CID: 1039378
2013-09-12 14:49:24 +01:00
Jihoon Kim 6ff49dbc70 ecore_imf: Fix memory leak in scim immodule 2013-09-12 11:49:06 +09:00
Chris Michael bd4d6cb6cc Also reset opaque region is transparent is toggled.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-11 14:13:53 +01:00
Chris Michael dc01222858 Add back saving of opaque region into window structure.
NB: Needed so that we can reset the opaque region if alpha_set is
being toggled on/off all the time.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-11 14:10:27 +01:00
Chris Michael d673cbc398 Readd the master clip for rendering of wayland engines.
NB: Master clip is needed so that things don't draw outside the client
area.

NB: This is a partial fix. Still a work in progress. Some remaining
issues with some various elm_tests that use evas_map.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-11 14:10:27 +01:00
Cedric Bail cd77853222 eo: add eo_childrens_iterator_new().
The goal would be to replace the smart children list and friends. The
problem is that they differ in content. Smart children and Eo children are
the same, but Elm children and them differ. If I put this function as a
virtual, it would be possible to override the list of children and if we
start using it in Evas render loop, that could result in "weird" behavior.

I have added the use of a simplified Eina_Trash mempool kind of feature
to have some fast path for allocation if we start using it in Evas render
loop.
2013-09-11 16:08:06 +09:00
Cedric Bail 766d1d1788 evil: fix compilation for Windows >= Vista and gcc 4.8.1. 2013-09-11 15:13:41 +09:00
Cedric Bail 5290befb53 eo: add a small object cache to make memory recycling faster. 2013-09-11 11:23:50 +09:00
Chris Michael 164299e689 Rework keyboard repeat to use an ecore_timer (not a timerfd).
NB: This fixes keyboard repeat in terminology (under wayland) to be
sane again :)

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-10 15:59:40 +01:00
Tom Hacohen 77cf31d322 Eo: Set (again, got removed) deleted eo objects' magic.
The French tried to sneak a bug in, they failed.
Bug was introduced in 337fac0e73.
2013-09-10 15:57:34 +01:00
Chris Michael ec76c76f74 Restore old functionality of ecore_evas_alpha_set.
NB: We will still create all new canvases as alpha by setting it in evas,
however this allows the 'state' of ecore_evas_alpha_set/get to retain
it's original functionality and thus accurately report what a client
application May have set alpha value too.

NB: Fixes Phab Ticket T350

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-10 14:37:17 +01:00
Chris Michael 369f414726 Remove calls to update_size function in alpha_set and transparent_set.
In alpha_set & transparent_set, add call to set opaque region to NULL
if alpha or transparent.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-10 14:37:17 +01:00
Chris Michael 6d3c50c3b6 On a swapbuf reconfigure, don't check for alpha changing state.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-10 14:37:17 +01:00
Sung W. Park 4ece1a1f9f EvasGL: Fix surface destroy mismatch bug.
For EvasGL direct rendering, EvasGL does a make_current to the
surface that evas is holding on to.  When EvasGL was shutting down
it was wrongly deleting evas' surface. This issue was temporarily
fixed by Raphael before but the proper fix was added.
2013-09-10 13:53:56 +09:00
Cedric Bail 5c82716fe8 evas: factorize some code. 2013-09-09 18:59:21 +09:00
Carsten Haitzler c1556b7112 eina - remove deadlock from share-common + remove extra lock/unlock 2013-09-08 10:03:35 +09:00
Tom Hacohen c598997299 Evas object clouseau: Added object name to the property list. 2013-09-06 17:19:57 +01:00
Tom Hacohen f30be9b8ad Evas object clouseau: cleaned up the code a bit. 2013-09-06 17:19:07 +01:00
Cedric Bail 797ad7528f edje: add border linked to Image sets.
It is quite common that in an image sets each image has different border size.
This patch permit to define the border value on a per image basis in the set.
2013-09-06 16:47:36 +09:00
Michael Bouchaud 19fa6862c5 edje: fix recursive scale_set on edje_object 2013-09-05 23:32:23 +02:00
Carsten Haitzler 3f94953509 evas - fix render op reset when drawing map objs :) 2013-09-05 20:31:17 +09:00
Cedric Bail 0a65847983 edje: forgotten patch to fix ABI. 2013-09-05 19:30:50 +09:00
Cedric Bail ff01dec8fb edje: fix function to use Eo API.
I am really unhappy to have to do this patch myself. This commit is in since
May and I have continuously request to be fixed. It has taken way to long. It's
done now. Next time I see such a patch in EFL, I will revert it right away.
2013-09-05 19:22:51 +09:00
Cedric Bail a626a91d69 evas: add evas_object_smart_iterator_new().
This is going to break Eo ABI. Rebuild all software using Eo API on top
of EFL (Elementary for example).
2013-09-05 17:16:40 +09:00
Carsten Haitzler f2885306dc eina - stringshare - strlen already would deal with optimization cases 2013-09-05 12:46:06 +09:00
Chris Michael 03604a15b6 Merge branch 'framespace' 2013-09-04 14:36:29 +01:00
Chris Michael 609941e0fa Create any wayland canvases as Alpha by default now.
Remove calls to ecore_wl_window_update_size inside the alpha &
transparent_do functions (this call not needed here anymore).

NB: This is needed due to recent frame "fixes". Basically, even tho we
set the opaque region correctly on a surface now, if the canvas itself
is not alpha, then we will end up with a black "spacer" around the
window.

NNB: Tested Both engines with terminology (both translucent and not) and also the window state test in elementary.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-04 14:25:50 +01:00
Chris Michael 6ab1bd2f71 Set surface opaque region to NULL if window is transparent/alpha.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-09-04 14:24:04 +01:00
Michaël Bouchaud (yoz) 88cc896f06 edje: be recursive on edje_object_scale_set 2013-09-04 12:06:03 +02:00
Carsten Haitzler fabda81a4e ecore-input - compose seq handler now uses compact str - saves about 100k 2013-09-04 11:42:08 +09:00
Carsten Haitzler 441f10e3ab evas - in dump also ensure an idle flush logic and proxy surface dump happens 2013-09-04 11:42:08 +09:00
Rafael Antognolli 2e2cac43da evas/gl: Do not reassign the surface during make current.
There was already a surface created by _evgl_tls_resource_create(). If
we assign a new one here, the wrong one will be destroyed at
_evgl_tls_resource_destroy(), and later the GL window will be destroyed
before the surface, causing invalid access errors.

This fixes https://phab.enlightenment.org/T326
2013-09-04 15:20:59 -03:00
Tom Hacohen bda3ceb632 Evas textblock: fixed *_markup_get issue with escaped chars.
Markup_get was misbehaving and returning wrong results with some escaped
chars. markup_to_utf8 was working correctly. Merged the code together
and now both are consistent and correct.

Thanks to WooHyun for reporting.
2013-09-03 11:50:34 +01:00
Ulisses Furquim 0af10ae93f evas/render: improve evas_render_sync()
Tracking only the async rendering canvases and just waiting for the last one
to finish rendering. This should be enough to sync all canvases since the
render thread orderly executes the commands.
2013-09-03 01:52:38 -03:00
Cedric Bail d7c8d221b0 eina: forgotten lock, thanks coverity. 2013-09-03 12:58:51 +09:00
Mariusz Grzegorczyk ec67ea9c1e ecore: fix segfault while adding new local or global data to thread. 2013-09-03 12:44:27 +09:00
Cedric Bail 9ac13e4aec Revert "evas/render - this is insane to me since nowhere it release the render_pre_done FALSE pairly."
This reverts commit fd7d1f9f98.

This commit is the one breaking Evas_Map use in shelf. Let's investigate why it was disable
in the first place.
2013-09-03 12:39:49 +09:00
Cedric Bail 7396dc2d89 evas: simplify logic and API signature, thanks k-s. 2013-09-03 11:08:12 +09:00
Ulisses Furquim 0c83dd806a evas/render: sync all canvases in _render_dump() 2013-09-02 20:03:23 -03:00
Ulisses Furquim 063f076aed evas/async_render: remove block/unblock of render thread.
This reverts commit 42a46214c4.
2013-09-02 20:01:37 -03:00
Ulisses Furquim 31b1cc6e3e evas/render: introduce evas_render_sync().
evas_render_sync() will loop through all canvases and wait for their
rendering to finish. Since this function will execute from the main
thread that will sync all of them.
2013-09-02 19:41:32 -03:00
José Roberto de Souza 932a7a00cd eldbus: Check if interface of signal match with signal handler
Thanks fgau for pointing this issue.
2013-09-02 17:07:16 -03:00
José Roberto de Souza bcba4779c8 eldbus: Add timeout message error as a macro 2013-09-02 16:14:47 -03:00
José Roberto de Souza 356a4aa8e9 eldbus: Add eldbus_object_manager_interfaces_added/removed() 2013-09-02 16:14:47 -03:00
José Roberto de Souza 928f0e4f83 eldbus: Make properties_monitor() return a boolean indicating if props are already cached 2013-09-02 16:14:47 -03:00
José Roberto de Souza 8b69231897 eldbus: Add a new proxy event to notify when properties are cached 2013-09-02 16:14:43 -03:00
Cedric Bail a007a3af13 evas: focus_set can fail... internally handle that case properly now. 2013-09-02 20:28:51 +09:00