Commit Graph

3135 Commits

Author SHA1 Message Date
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
Jean-Philippe Andre cafa763817 evas: Fix sigsegv after font rehint
If a text object is rehinted after it is deleted,
baaad things happen. Mark Evas_Object_Text as dead by
setting font to NULL.

Note the crash happened with cserve2 and maybe not in normal
cases.
2013-09-02 15:00:01 +09:00
Cedric Bail 54ef511197 evas: handle error case by properly deallocating memory. 2013-09-02 12:33:21 +09:00
Cedric Bail caf934e005 eina: don't try close dummy handle. 2013-09-02 12:33:21 +09:00
Shinwoo Kim 6113a3b767 [ecore_input_evas] check the state of last mouse event more properly. 2013-09-02 11:52:50 +09:00
Cedric Bail 64823141f6 eina: fix typo and use the right refcount. 2013-09-02 11:16:59 +09:00
Davide Andreoli 60a9d16676 emotion_generic: tabs-- 2013-09-01 18:43:13 +02:00
Carsten Haitzler 08e430b18a move render wait before the block to avoid deadlock. 2013-08-30 09:09:08 +09:00
Boris Faure 84c383dc1a export EFL_VERSION_MAJOR/MINOR 2013-08-29 15:28:32 +02:00
Boris Faure 18ee1e1789 edje: export EINA_VERSION_MAJOR/MINOR when compiling edc files 2013-08-29 15:17:19 +02:00
Carsten Haitzler 42a46214c4 other async render issue - sync ALL rendering canvases, not just one 2013-08-29 21:18:04 +09:00
Chris Michael cf7c9b9d6b Added functions for setting input and opaque regions on a window.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 09:25:58 +01:00
Chris Michael 6a228b5b7f Add API functions for setting window input & opaque regions.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 09:25:34 +01:00
Chris Michael 8d3caa1dba Remove 2 unused integer members from window structure.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 09:06:54 +01:00
Chris Michael 517f8fe2b1 Update ecore_evas wayland_egl for removal of server_allocation member.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 09:06:53 +01:00
Chris Michael 781b3844b1 Update ecore_evas wayland_shm routines for removal of
server_allocation member.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 09:06:53 +01:00
Chris Michael 69be933627 Update common routines for removal of server_allocation field.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 09:06:53 +01:00
Chris Michael f8d6a9561d Don't use Eina_Rectangles for server and saved allocation, can just
use ints for width & height.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 09:06:53 +01:00
Chris Michael d1b4362b52 Reduce size of Ecore_Wl_Window structure.
Removed 2 Eina_Rectangles from window structure as we only use width &
height anyway, so we can store those as ints.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 09:06:53 +01:00
Chris Michael 2811dad225 Remove pending_allocation member of window structure (not used
anywhere).

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 09:06:53 +01:00
Chris Michael 9bdda19eaf Remove calls to saved input & opaque region of window.
We don't record these regions anymore. They were removed from the
window structure.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 09:06:53 +01:00
Chris Michael bf410c957b Remove region members from Ecore_Wl_Window structure. No need to keep
these around.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 09:06:53 +01:00
Chris Michael f940f11a9b Fix copy/paste issue.
Use proper width & height for the new tilebuffer.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 09:06:53 +01:00
Chris Michael 76cea1712c Avoid potential memleak on rotation of tilebuf.
Port of 70f443d8a8 to wayland egl

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 08:24:10 +01:00
Chris Michael ce716ff052 Avoid potential memleak on rotation of tilebuf.
Port of 70f443d8a8 to wayland_shm

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 08:21:36 +01:00
Chris Michael a9853f96f7 Port 1f82fbe14d to wayland shm engine
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 08:11:16 +01:00
Chris Michael b43421ae5b Fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 08:05:47 +01:00
Carsten Haitzler 70f443d8a8 evas - avoid memleak on rotation of tilebuf in engine for gl and sw possibly. 2013-08-29 14:58:09 +09:00
Cedric Bail bcb9ccb129 evas: let's allow intercept of other type of operation on the same object during an intercept. 2013-08-29 14:25:23 +09:00
Cedric Bail 35b98861dd evas: simplify code for setting intercept callback. 2013-08-29 11:35:35 +09:00
Cedric Bail 1ac1db596f evas: add interceptor for focus_set. 2013-08-29 11:21:20 +09:00
Cedric Bail 85f0749a83 evas: cleanup intercept code and improve performance there a little. 2013-08-29 10:53:48 +09:00
Cedric Bail 62a759de43 evas: define MAP_HUGETLB when it is not defined. 2013-08-29 09:54:34 +09:00
Rafael Antognolli f69cde8107 evas/gl_x11: eng_window_use will not always force makecurrent.
If the egl_surface is different from the current one, it may be that the
it has been destroyed already. Removing the below check (and just
checking for different contexts) will avoid calling makecurrent when
destroying a window.  That was always failing anyway.

Should fix https://phab.enlightenment.org/T311 for gl_x11 too.
2013-08-29 17:25:40 -03:00
Cedric Bail ebdc7a9952 evas: use mmap/munmap on system that have it for image data. 2013-08-28 17:17:35 +09:00
Carsten Haitzler 175335ae08 evas - restore ability for evas_render_dump() to dump out referenced data 2013-08-28 16:44:31 +09:00
WooHyun Jung d2da97c75b evas_event: Nomally, the point's state is maintained POINT_MOVE before it is released. 2013-08-28 13:40:27 +09:00
Jaehyun Cho 73cab19a78 [edje_embryo] Fix play_sample's parameter count check
play_sample function requires 2 parameters however it checks parameter count as 1.
2013-08-28 07:53:57 +09:00
Carsten Haitzler 12981b168e ecore-audio - expose ready and fail events so multisense can avoid leaks
well well well. i WASN'T crazy. there WAS a leak. it was
ecore-audio+multisense. if a pulse audio output doesn't connect... NO
ONE KNOWS. all audio streams keep being appended to it forever just
consuming more memory indefinitely. there is no way to handle it.
expose events so it CAN be handled.
2013-08-27 23:44:53 +09:00
Tom Hacohen 041e3af3e5 Evas bidi: Fixed a bug causing BiDi not to work in some cases.
This issue cause non-letter RTL characters not to be detected as RTL
which in turn turned off bidi for those strings.
Example broken text: <RLM><LRO>[PAS<RLO>[--DES<PDF><PDF>.

Thanks to Yakov Goldberg for reporting this issue.
2013-08-27 14:11:16 +01:00
Jean-Philippe Andre deacfdce24 eina: Fix invalid check on Eina_File::global_map
global_map is set to MAP_FAILED in case of error after mmap.
So, it is initialized to MAP_FAILED and considered valid
otherwise.

So, we don't want to set the map to NULL or even check again NULL.
2013-08-27 17:31:12 +09:00
Carsten Haitzler 1f82fbe14d evas - unify partial update in sw engine swapper so it is like gl 2013-08-27 17:21:10 +09:00
Carsten Haitzler 4aaf857fc8 fix apparent tb item leak (definitely lost) 2013-08-27 17:20:56 +09:00
Carsten Haitzler d573133ff8 fix ethumb client segv's i've been hunting... 2013-08-27 17:20:25 +09:00
Cedric Bail 33372313a1 evas: try to also cancel multi button to. 2013-08-27 16:52:24 +09:00
Cedric Bail 0082c1b4eb ecore: add infrastructure to get info from malloc_info to. 2013-08-27 16:52:00 +09:00
Cedric Bail 56983ed0d4 ecore: fix build without mallinfo. 2013-08-27 16:06:56 +09:00
Cedric Bail d2da83fed8 ecore: fix function call order to actually make mallinfo call work. 2013-08-27 15:57:05 +09:00
José Roberto de Souza 091c5425c6 eldbus: Handle correclty the last unref of a object path or conn in service callback
This allow user remove the last reference of service object path or last
last reference of connection be removed inside of a method callback.
2013-08-26 16:11:31 -03:00
José Roberto de Souza 547313ece9 eldbus: Send all object manager signals of all childrens before delete path or detach object manager 2013-08-26 15:17:02 -03:00
José Roberto de Souza 74bf97600f eldbus: ecore_idler_del() return is the data 2013-08-26 15:16:53 -03:00
José Roberto de Souza 9b49791de0 eldbus: Only a explicit call should unregister a object path 2013-08-26 15:16:43 -03:00
José Roberto de Souza 97ad61df93 eldbus: Empty list of interfaces add/del if there is no parent object manager 2013-08-26 15:16:33 -03:00
José Roberto de Souza d1d298e4c2 eldbus: Use EINA_LIST_FREE instead of EINA_LIST_FOREACH to send interfaces add 2013-08-26 15:16:26 -03:00
José Roberto de Souza 36b71d867c eldbus: Send property changed signals before close connection 2013-08-26 15:16:18 -03:00
Carsten Haitzler 072c140201 try and fix up valgrind+segv issues with ethumb and freed data access 2013-08-26 12:08:53 +09:00
discomfitor 42fb964592 ecore-x xlib errors now only print when sync is enabled
I give up. people continually complain about these and submit them as crashes, so now they're only visible if you set ECORE_X_SYNC. the next step is an #ifdef ISCOMFITOR.
2013-08-25 17:15:19 +01:00
José Roberto de Souza 26a6b01369 eldbus: Correctly append name of interface removed 2013-08-23 16:05:18 -03:00
José Roberto de Souza 09bae8b373 ecore system: If by some reason name of locale changed dont have a '=' skip it 2013-08-23 16:05:12 -03:00
José Roberto de Souza fe6a51f7e9 eldbus: Mark introspection of parent object as dirty when adding a child object 2013-08-23 16:05:06 -03:00
Chris Michael eff087a4b3 Fix redraw rectangle when framespace changes to not be Outside viewport.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-23 08:39:03 +01:00
Rafael Antognolli 5d053bf19b evas/wayland_egl: eng_window_use will not always force makecurrent.
If the egl_surface is different from the current one, it may be that the it has
been destroyed already. Removing the below check (and just checking for
different contexts) will avoid calling makecurrent when destroying a window.
That was always failing anyway.

Should fix https://phab.enlightenment.org/T311 for wayland_egl.
2013-08-23 16:19:42 -03:00
Chris Michael 6f5f9d075d Reduce duplicated code for setting resize edges.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-21 08:31:29 +01:00
Chris Michael 5c2eadea98 Reduce duplicated code for setting engine resize edge
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-21 08:31:11 +01:00
Chris Michael 21f0ad4f0e Add function prototypes for resize_edge_set.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-21 08:30:52 +01:00
Chris Michael 2c9a19503f Add function for setting/resetting window resize edges to remove
duplicated code.
Resize the frame object before we update the window saved size.
Remove (again) call to _ecore_evas_wayland_resize and set the resize
edge of the window.

NB: The call to _ecore_evas_wayland_resize ends up sending duplicate
configure events here, hence whey it is removed.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-21 08:28:48 +01:00
Chris Michael 6337b63977 When updating window size, if the stored allocation size is the same
as being set, then get out.

This reduces unnecessary calls to resetting the input & opaque regions
if nothing has changed in terms of size.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-21 08:27:45 +01:00
Rafael Antognolli ffa9d69180 Revert "Remove Call to _ecore_evas_wayland_resize on a configure event."
This reverts commit 5eeb820b0f.
2013-08-21 12:55:14 -03:00
Rafael Antognolli 3a654f795c evas/gl: Don't look for EXT and ARB extensions when on GLES.
At least on recent mesa (since commit 9f07ca11c17), it will find the
mentioned symbols but they won't really work, leading to error messages,
and possibly some other errors. So far, I just ifdef'ed the
glGenFramebuffer and glBindFramebuffer functions, but it may require
others to be ifdef'ed too.

This is just a workaround, to fix https://phab.enlightenment.org/T246.
2013-08-21 12:39:17 -03:00
Mike Blumenkrantz 86b61b41d1 ecore_wl sets input regions more accurately when resizing 2013-08-20 14:49:21 +01:00
Chris Michael 8e92e10088 When we create a wl_surface for the window, set the surface_id field
of the window structure.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-20 14:45:49 +01:00
Chris Michael b4af063308 Add surface_id to wayland window structure.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-20 14:45:49 +01:00
Chris Michael 0de4add074 Remove dead code
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-20 14:45:49 +01:00
Tom Hacohen 6ca84f0486 Evas textblock tests: Make the tests more lax.
The tests were failing on jenkins (gentoo), and on arch, but passing on an
old ubuntu. Ubuntu patches freetype, and that's probably the reason for that
with the tests more lax, both work.
2013-08-20 13:32:03 +01:00
Tom Hacohen 1e9f121f42 Evas textblock tests: Adjust tests according to descent fix. 2013-08-20 11:13:06 +01:00
Tom Hacohen 4bcf4991eb Evas textblock: Fixed calculation of maxdescent.
Thanks to YoungBok Shin for reporting.
2013-08-20 11:13:06 +01:00
Tom Hacohen 92a6d2e2d2 Evas textblock tests: Fix a broken test and add another test.
The test was running without a text being set.
The added test runs with an empty textblock.
2013-08-20 11:13:06 +01:00
Tom Hacohen ec573948b0 Evas textblock tests: use the libcheck assert macros. 2013-08-20 11:13:06 +01:00
Daniel Juyung Seo a7399da8f6 Eina.h: bump up year. 2013-08-20 03:11:48 +09:00
Chris Michael 865531a9e1 Fix compiler warning about missing braces.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-19 08:35:34 +01:00
Mike Blumenkrantz c31061b642 evas render debug now prints object names if they exist 2013-08-19 05:20:57 +01:00
ChunEon Park 86ff7c3659 evas - oops, this line shouldn't be pushed. 2013-08-18 16:54:22 +09:00
ChunEon Park cbfba2fd59 evas - should be rendered even if non-smart proxy object doesn't affected by clipper. 2013-08-18 16:31:43 +09:00
ChunEon Park 75ccce5706 evas - removed redundant code.
This check is not necessary but causes incorrect clipping issues.

At this moment, if primitive objects (except image) is the source then that code may be helpful but it doesn't guarantee same behavior for all the primitive objects.

So, right now removed it.
2013-08-18 16:26:11 +09:00
Carsten Haitzler 555283daf2 edje - protect against segv when class lookup is null 2013-08-17 22:57:46 +09:00
Chris Michael 5eeb820b0f Remove Call to _ecore_evas_wayland_resize on a configure event.
NB: Not sure how/why this was here, but it's entirely Not needed and
leads to duplicate calls of wl_shell_surface_resize.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-16 11:31:53 +01:00
José Roberto de Souza 34c2fdbbba ecore system: Simply systemd locale set 2013-08-15 14:46:30 -03:00
José Roberto de Souza 76e69f9323 ecore system: Add Tizen backend 2013-08-15 14:46:30 -03:00
José Roberto de Souza 914e05c2ad eldbus: Improve error message when connection get fail 2013-08-15 14:46:30 -03:00
Chris Michael b4717598d1 Sorry Jihoon, I have to revert this (for now). It completely breaks
building of EFL :( I think perhaps you forgot to push the ecore_imf
code that goes with this ??

Revert "Edje: add edje_object_part_text_input_panel_show_on_demand_set/get()"

This reverts commit 4b5ed04559.
2013-08-15 07:40:15 +01:00
Chris Michael d0c24254cc An Imf module can fail to create a context so we should check the
return of module->create for valid context before trying to call
functions or use it.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-15 07:32:18 +01:00
Jihoon Kim 4b5ed04559 Edje: add edje_object_part_text_input_panel_show_on_demand_set/get() 2013-08-14 18:17:06 +09:00
Oleksander Sirook 337b3d4daf eina: add test for 'eina_file_map_new' function. 2013-08-13 17:31:41 +09:00
Jihoon Kim fe05d358ea Add ecore_imf_context_input_panel_on_demand_set/get API 2013-08-13 15:27:29 +09:00
Daniel Willmann 3e5bd813d3 embryo: Fix a potential buffer overflow (klocwork id 321)
Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
2013-08-12 18:32:40 +01:00
Gustavo Lima Chaves d84e77d93f Enough with this bad align Edje property documentation. 2013-08-12 13:29:43 -03:00
Cedric Bail b13db5ab8d edje: forth recalc for text part that got adjusted during a calc_only. 2013-08-12 16:47:46 +09:00
Cedric Bail 2b68a31252 evas: handle gracefully move from evas_object_image_file_set to and from evas_object_image_mmap_set. 2013-08-12 12:12:13 +09:00
Cedric Bail d72239a118 eina: remove a warning. 2013-08-12 12:11:56 +09:00
Cedric Bail 32fa458370 edje: fix forgotten fetch. 2013-08-12 08:58:37 +09:00
Cedric Bail 9a637112b4 edje: let's make a difference between file does not exist and no file specified. 2013-08-12 08:55:36 +09:00