Commit Graph

151 Commits

Author SHA1 Message Date
Paulo Alcantara b557bd9e0d efl/engines: Introduce multi_font_draw() function
This new engine function will only be used in software generic for
now - since it's the only engine used with the async render.

This function has been introduced in order to avoid growing thread
command queue too much to draw a text_props at a time on render calls
from textgrid objects.

Patch by: Paulo Alcantara <pcacjr@profusion.mobi>



SVN revision: 82832
2013-01-15 17:35:11 +00:00
Tom Hacohen 4a0acab860 Evas box: fix warning with a cast.
Unfortunately, although the pre-cast code is correct, we need the cast
because of the way gcc handles the types (magic) when passing va_args on
64 bit. This doesn't change anything logically.

SVN revision: 82827
2013-01-15 17:15:10 +00:00
Tom Hacohen c8e1fe4c9f Evas font: Add missing header.
SVN revision: 82826
2013-01-15 17:15:06 +00:00
Tom Hacohen ac0ff4c997 Evas textblock: Added EAPI to the ifdefed debugging funcs.
SVN revision: 82815
2013-01-15 14:49:38 +00:00
Tom Hacohen c7dc78c98b Evas text props: Fixed bug with no-harfbuzz bidi.
SVN revision: 82814
2013-01-15 14:49:31 +00:00
Tom Hacohen c089f174ca Evas obj text: Fix an issue with horiz_advance_get func.
SVN revision: 82800
2013-01-15 11:50:22 +00:00
Tom Hacohen d925820fa9 Evas textblock: simplified and fixed bugs in _cursor_geometry_get
SVN revision: 82798
2013-01-15 10:57:34 +00:00
ChunEon Park e078614a33 evas/map - avoid zero divide.
SVN revision: 82792
2013-01-15 05:11:11 +00:00
Ulisses Furquim 0f435b7eae evas/async_render: fixing mix of sync and async rendering
SVN revision: 82776
2013-01-14 20:02:43 +00:00
Ulisses Furquim 90bba3a87e evas/async_events: fix async events counting
Before we returned the number of async events handled.
Even if nobody uses that let's fix it.



SVN revision: 82775
2013-01-14 20:02:31 +00:00
Stefan Schmidt b4b7c9239d Evas textblock: Fixed issue with line height when breakingon format.
All kudos to Tom for this one.

SVN revision: 82763
2013-01-14 14:18:10 +00:00
Carsten Haitzler b2034671b7 as pointed out by avind - missing bidi dir changes.
SVN revision: 82710
2013-01-13 02:58:00 +00:00
Carsten Haitzler 440bb7c23c cut down textprop size a bit... 72 -> 64bytes. if we can wrap
tp->start/len/text_offset/text_len read/wrtie in access funcs. so we
can special case where:

1. start == text_offset == 0 && len == text_len == 1
2. start == text_offset == 0 && len == text_len < 65536
3. start == text_offset == 0 && len == text_len < 256
 


SVN revision: 82692
2013-01-12 08:40:46 +00:00
Ulisses Furquim 48c15aaa74 evas/async_render: only get a ref if a thread cmd was issued
This patch should make us get a reference on images, maps and glyphs
which are sent in a command to the render thread. Before we were doing
some useless ref and unref operations.



SVN revision: 82666
2013-01-11 19:57:09 +00:00
Ulisses Furquim f0f9f7b7a6 evas/text: remove misleading comments on glyphs array refs
SVN revision: 82665
2013-01-11 19:56:49 +00:00
Ulisses Furquim b9f05341c3 evas/async_render: skip early if text_props with no glyphs
This is intended to preserve old behavior now that we have
evas_common_font_draw_cb() to handle both sync and async callbacks.
However, we need to check where why we end up with no glyphs in a
text_props even after calling evas_common_font_draw_prepare().



SVN revision: 82664
2013-01-11 19:56:32 +00:00
Ulisses Furquim d45a54a0aa evas/async_render: do not use async event to unref image maps
SVN revision: 82663
2013-01-11 19:56:17 +00:00
Leandro Pereira d5f91fd5c2 evas/async_render: do not use async event to unref glyphs
Patch by: Leandro Pereira <leandro@profusion.mobi>



SVN revision: 82662
2013-01-11 19:55:40 +00:00
Leandro Pereira ed79c2182e evas/async_render: do not use async event to unref images
Patch by: Leandro Pereira <leandro@profusion.mobi>



SVN revision: 82661
2013-01-11 19:54:12 +00:00
Leandro Pereira a868276f11 evas: Try to reuse glyph array if possible
This sould bring back a little bit of text rendering performance, while at
the same time decreasing memory usage and fragmentation.

Patch by: Leandro Pereira <leandro@profusion.mobi>



SVN revision: 82660
2013-01-11 19:49:15 +00:00
Leandro Pereira 468b44c444 evas: Do not use an Eina_Lock for glyph array
Patch by: Leandro Pereira <leandro@profusion.mobi>



SVN revision: 82659
2013-01-11 19:48:28 +00:00
Paulo Alcantara 5eaba08284 efl/font: Avoid passing NULL glyphs arrays on unref
evas_common_font_glyphs_unref() *should* be called with valid glyphs
arrays.

Patch by: Paulo Alcantara <pcacjr@profusion.mobi>



SVN revision: 82658
2013-01-11 19:48:00 +00:00
Gustavo Sverzut Barbieri 1e1751de47 evas: be loud if async render is mixed with sync.
SVN revision: 82655
2013-01-11 18:20:11 +00:00
Tom Hacohen e84686d76d Evas: Fixed a bug with breaking after format items.
SVN revision: 82653
2013-01-11 18:16:24 +00:00
Henrique Dante de Almeida 9c12a58536 efl: Fix object size constraints calculation in stack layout
Patch by: Henrique Dante de Almeida <hdante@profusion.mobi>



SVN revision: 82647
2013-01-11 16:54:48 +00:00
Cedric BAIL fee7977839 efl: let's preperly clean pointer when we delete stuff.
SVN revision: 82621
2013-01-11 08:31:09 +00:00
Cedric BAIL 4395e416f1 efl: force update of Evas_Object_Text clip cache when geometry change.
SVN revision: 82612
2013-01-11 05:27:17 +00:00
Cedric BAIL 451abe47f5 efl: only compute font clip when relevant.
SVN revision: 82611
2013-01-11 05:21:54 +00:00
Cedric BAIL 4c64334b9d evas: remove duplicated piece of code.
SVN revision: 82601
2013-01-11 01:52:46 +00:00
Gustavo Sverzut Barbieri f6c10c4cf1 efl/evas: improve docs linking
SVN revision: 82493
2013-01-09 23:17:21 +00:00
Paulo Alcantara d7ae50462c efl/cserve2: Increase refcount of scaled image entries properly
Patch by: Paulo Alcantara <pcacjr@profusion.mobi>


SVN revision: 82484
2013-01-09 21:40:25 +00:00
Paulo Alcantara cf46337e17 efl/font: Dispatch font load request once sent to server
Patch by: Paulo Alcantara <pcacjr@profusion.mobi>


SVN revision: 82482
2013-01-09 21:37:34 +00:00
Paulo Alcantara c6f907a9f4 efl/cache: Set loaded flag properly with loaded pixels
Patch by: Paulo Alcantara <pcacjr@profusion.mobi>


SVN revision: 82481
2013-01-09 21:36:03 +00:00
Ulisses Furquim 6e91caf73f evas/async_events: more clear code in _async_events_put()
SVN revision: 82457
2013-01-09 12:22:52 +00:00
Carsten Haitzler a8cc6e9e16 oosp - didnt meant o commit this... it was just the start of some test
code... not ready yet. just adds warnings and stuff.



SVN revision: 82381
2013-01-08 04:00:36 +00:00
Carsten Haitzler 478de3ec76 small change - not worth chglogging... make evas gl x11 header not
need xlib.h anymore... :)



SVN revision: 82378
2013-01-08 03:49:49 +00:00
Gustavo Sverzut Barbieri 3c7fddb78d efl/evas: silent warning.
count is type 'int', but used as unsigned it (always > 0), however gcc
can't understand that and is complaining that 'check' could be used
without being initialized... which is false. Make the test != 0 to
silent gcc and make code as correct as before.




SVN revision: 82369
2013-01-07 22:46:01 +00:00
Christopher Michael bdfe30ea8d Fix typo in evas_map_free doxy.
NB: Can someone please backport this ??

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82335
2013-01-07 09:56:01 +00:00
Ulisses Furquim d53f43abaf evas/common/thread_render: fix queue cache handling
Fixed queue cache handling to let enqueue and process happen at the same
time, even though this is not our use case yet. This also solves a race
with the assignment of cache variables outside the queue lock and
remembers to free the cache when shutting down.



SVN revision: 82296
2013-01-06 02:01:53 +00:00
Ulisses Furquim 7904f59248 evas/async_events: fix leak of events array and simplify code
Fixed leak of 'memory' array (now async_events_cache) and simplified code of
evas_async_events_put().



SVN revision: 82295
2013-01-06 01:58:50 +00:00
Gustavo Sverzut Barbieri de7dc1c2cc efl/evas: proper glShaderSource() definition as glext.h
it is "const char * const *", not "const char **", and it was triggering a warning in our code.

it's just constness and will not trigger an error in our user's code, just an warning that he should fix.



SVN revision: 82278
2013-01-05 15:55:58 +00:00
Tom Hacohen af94656955 Evas smart clipped: Potentially fix memory leak as reported by raster.
Not really properly tested, sorry for that.

SVN revision: 82271
2013-01-05 12:14:41 +00:00
Carsten Haitzler 7f1fb9b10d thanks joel.
SVN revision: 82254
2013-01-05 02:20:13 +00:00
Carsten Haitzler 61995f2cf2 BIG COMMENT!!!!
SVN revision: 82248
2013-01-05 01:38:45 +00:00
Mike McCormack 8d1683367f efl: Remove unused variables
Signed-off-by: Mike McCormack <mikem@atratus.org>

SVN revision: 82246
2013-01-05 00:06:28 +00:00
Gustavo Sverzut Barbieri 733425c62c efl: make libraries aware of EFL_RUN_IN_TREE.
this variable tells that the build is being done in tree and we should
not look at install locations.



SVN revision: 82217
2013-01-04 17:19:43 +00:00
Leandro Dorileo e2ce20e9a4 evas: add event source evas object
This patch introduces fields to event Evas_Event_Mouse_* structures
to hold the event source evas object in case of evas source events
propagation.


SVN revision: 82138
2013-01-04 01:55:07 +00:00
Gustavo Sverzut Barbieri 0a2d116119 efl: eina_alloca.h to simplify alloca() usage.
having to replicate 18 lines per file just to access alloca() is
insane. Let's do that in Eina.h and avoid that crap :-/



SVN revision: 82082
2013-01-03 15:10:34 +00:00
Daniel Juyung Seo 8c67bafaf2 evas Evas.h: Fixed a typo.
SVN revision: 82069
2013-01-03 12:22:49 +00:00
ChunEon Park 5cf84bb84a evas - use Eina_Bool
SVN revision: 82035
2013-01-03 05:38:03 +00:00