Commit Graph

100 Commits

Author SHA1 Message Date
Cedric BAIL 10a15524cc * evas: Finally remove as much free/malloc from the render path. Will need certainly
need some tunning on the number of Evas_Rectangle allocated in advance.


SVN revision: 40084
2009-04-15 13:40:37 +00:00
Gustavo Sverzut Barbieri 1a395af37d cedric I hate you :-)
remove last code using non-eina_mempool rectangles and abort() that
was triggering on clicks on titlebar.

Thanks to antognolli for reporting.



SVN revision: 40074
2009-04-15 03:14:41 +00:00
Cedric BAIL 55e281b4ff * evas: Now all Evas_Rectangle are part of a pool. Next step would be to
remove free at the end of evas_object_render_pre_effect_updates and only
	do it on idle.


SVN revision: 40040
2009-04-14 12:15:07 +00:00
Cedric BAIL fa4c0f3ea3 * evas: Another attempt to fix clip cache. Now invalid clip cache every time
we change cur.geometry in the code (did a grep to locate this). I hope I did
	spot all users, as I didn't see bug in exec_buf, efm and in window title, I
	am confident enought to break svn again.

	* WARNING * This change can cause visual bug. Please report.



SVN revision: 40039
2009-04-14 10:47:15 +00:00
Carsten Haitzler de96594bde revert - spotted clip bug in titlebar in e17.
SVN revision: 39966
2009-04-11 07:10:26 +00:00
Cedric BAIL d3a9b8307f * evas: This patch reintroduce the use of cache for clip. I don't know
why it was disable the first time, so it could lead to some graphic bug.
	Please report any strange behaviour.

	*WARNING* This could really introduce some visual bug.



SVN revision: 39940
2009-04-10 15:14:40 +00:00
Cedric BAIL df60ff6129 * evas: Make one more function inline.
SVN revision: 39894
2009-04-08 11:08:02 +00:00
Gustavo Sverzut Barbieri ad1af73d40 Do not inform callbacks that did not changed the state of object.
For some unknown reason evas was informing EVAS_CALLBACK_* even if the
original call did not changed the internal object state, that is, new
value is already equal to current value.

This is specially costly since Edje, Box, Table and possible other
layout engines will call evas_object_resize(), move(), show(), hide()
even if the state has not changed, assuming evas will ignore the call
(as it does). The real overhead might come if there are listeners
attached to these events, that in turn might do lots of other stuff,
leading to a torrent of useless calls.

I marked it for removal, please test it and uncomment '#define
CALLBACK_NOOPS' to get the old behavior back. It does seems to work
with e17 and edje_editor. If problems appear, let's try to fix the
real problem instead of getting this code back, it's a performance
penalty.



SVN revision: 38955
2009-02-05 14:37:58 +00:00
Gustavo Sverzut Barbieri 71f9ed1fc3 Fix size hint docs and improve them.
SVN revision: 37716
2008-11-20 03:02:27 +00:00
Carsten Haitzler 7e6fb27b4c make scale set apply immediately on objects that do scaling...
SVN revision: 37656
2008-11-15 10:39:46 +00:00
Carsten Haitzler fec072d883 fix some formatting/indenting and explicitly look at mouse_down as a counter.
SVN revision: 37650
2008-11-15 05:13:09 +00:00
Davide Andreoli f38e74e550 * remove \'too small\' categories
SVN revision: 37387
2008-11-01 22:21:10 +00:00
Davide Andreoli f526e28ac0 * More better cats\'
* remove some @ingroup in favor of @addtogroup

SVN revision: 37386
2008-11-01 21:50:36 +00:00
Davide Andreoli b1b189a0bb * remove \'too small\' groups (unify image and gradient groups)
* fix some modules name to be more consistent

SVN revision: 37382
2008-11-01 20:19:28 +00:00
Cedric BAIL 465b76a017 Remove Evas_List from Evas.
SVN revision: 36942
2008-10-21 16:31:05 +00:00
Cedric BAIL 68d377afe6 Rename EINA_INLIST_ITER_NEXT/EINA_INLIST_ITER_LAST to EINA_INLIST_FOREACH/
EINA_INLIST_REVERSE_FOREACH so it best match is behaviour. Asked by Gustavo.



SVN revision: 36928
2008-10-21 12:19:57 +00:00
Cedric BAIL c99824328f Move from Evas_Object_List to Eina_Inlist and completly remove Evas_Object_List.
SVN revision: 36750
2008-10-17 11:23:18 +00:00
Carsten Haitzler 29a4c2a8c2 formatting
SVN revision: 36440
2008-10-05 03:47:52 +00:00
Carsten Haitzler 84218c5694 fix missed assignment
SVN revision: 36435
2008-10-04 17:28:43 +00:00
Carsten Haitzler b2fe56136a fix typo and dont call chnages if no change on size hints.
SVN revision: 36434
2008-10-04 17:10:44 +00:00
Carsten Haitzler a5a9004c5a and init size_hints struct with defaults on alloc.
SVN revision: 36433
2008-10-04 16:57:02 +00:00
Carsten Haitzler 34e595f87a return a "default" max of -1 x -1 - 0x0 max isnt that sensible! (-1 ==
unlimited)



SVN revision: 36432
2008-10-04 16:53:47 +00:00
Carsten Haitzler 204993a635 ok weight default 0
SVN revision: 36431
2008-10-04 16:42:04 +00:00
Carsten Haitzler 09cfefd9dc and have sane default values for weight and align.
SVN revision: 36430
2008-10-04 16:12:48 +00:00
Carsten Haitzler 07447cf079 add align, weight and padding hints for evas objects.
SVN revision: 36429
2008-10-04 16:11:23 +00:00
Carsten Haitzler d06c5e9efb and add a scale factor per object. right now text and textblock use it.
that's about it. a bit hacky - but works and frankly.. the idea is that u'd
set a scale factor once really and not change it per obj... most likely.




SVN revision: 35896
2008-09-09 14:14:26 +00:00
doursse fb9313c024 * move convert function declarations to their own header file
* add vim header in the files I modified
 * fix minor warnings

i think i don't break compilation on that commit :)


SVN revision: 35058
2008-07-10 22:53:33 +00:00
Carsten Haitzler 3242217c16 cedric rect + arrays patch for reducing allocs
SVN revision: 35024
2008-07-07 21:29:29 +00:00
Carsten Haitzler d8288d5531 bad *alloc! bad sizeof usage. bad! :)
SVN revision: 34856
2008-06-19 04:09:33 +00:00
Carsten Haitzler d4e8f592bb fix arrya state engin issue... redraws vanishing. fixed!
SVN revision: 34808
2008-06-12 13:22:26 +00:00
Cedric BAIL e95f38aed8 Remove now useless code to force evas_render cache invalidation.
SVN revision: 34738
2008-06-04 16:44:05 +00:00
Gustavo Sverzut Barbieri 40a63c7965 Fix typo!
SVN revision: 34686
2008-05-28 18:00:04 +00:00
Cedric BAIL eaa23bebce Replace evas_list used by evas_render by a cache of evas_array.
README: This should not break any EFL applications, but please check and report any breakage to me.


SVN revision: 34677
2008-05-26 13:24:24 +00:00
Cedric BAIL 777410eac2 Make the most used functions inline functions.
SVN revision: 34675
2008-05-26 13:08:54 +00:00
Gustavo Sverzut Barbieri 4bc8043a10 Save 8 bytes from Evas_Object by packing interpolation.color_space.
Interpolation color_space (now ASHV or ARGB) was being used inside a
struct with 4 byte alignment. Remove it from the struct and make it a
bitfield so can be packed with the other fields. This saves 2
integers, so 8 bytes.


SVN revision: 34418
2008-05-01 04:14:08 +00:00
Gustavo Sverzut Barbieri b46fc2a2f4 Save memory related to size hints.
Size hints are useful, but wasting 36 bytes for it on every object is a bit
too much: clippers and lots of other objects will have no need for it.

Now it's a pointer to a struct that will be allocated just when some value
is set, wasting 4/8 bytes more for the pointer when it is used, but saving
32/28 bytes when it is not.

This will also help to have alignment properties in future, that can come
as hints, without too much impact on memory consumption.


SVN revision: 34412
2008-04-30 22:51:08 +00:00
Carsten Haitzler 27f1963fcb gustavo's size hint patch.
SVN revision: 34248
2008-04-11 23:12:20 +00:00
Gustavo Sverzut Barbieri 5d571051b9 Add const to Evas api: objects and remaining bits.
SVN revision: 33716
2008-02-08 22:35:19 +00:00
Gustavo Sverzut Barbieri 2756696bbe Add const to Evas aoi (part 3), still lacks objects.
SVN revision: 33715
2008-02-08 21:42:01 +00:00
Carsten Haitzler a5d3f7ddc0 1. default object size to 0x0
2. remove some float numbers (were cast anyway)
3. make smart object mmove/resize only called if the obj changes


SVN revision: 31968
2007-10-05 04:52:10 +00:00
Carsten Haitzler e6aa181b56 add a DEL callback - called at the very start of object deleteion.
SVN revision: 31942
2007-10-03 04:09:36 +00:00
Gustavo Sverzut Barbieri cba48d38b5 Reorder emission of EVAS_CALLBACK_FREE event.
Now EVAS_CALLBACK_FREE is emitted after smart object's "del"
implementation, this way bindings/wrappers can observe this event in
order to release its wrappers and be sure that they'll not be used
anymore.

Please check your existing code to see if you don't rely on the old
behavior.


SVN revision: 31800
2007-09-25 13:33:12 +00:00
moom c9264664d9 * Add interceptors for color_set(), clip_set() and clip_unset()
SVN revision: 31460
2007-08-22 16:45:37 +00:00
Carsten Haitzler d6f9cc797e adrunko's precise event patch
SVN revision: 30939
2007-07-23 14:22:57 +00:00
Carsten Haitzler 9ae24eeaeb ooh - and remove leak from callbacks not being freed! fixed!
SVN revision: 28426
2007-02-21 21:43:45 +00:00
Christopher Michael af9e05f2ef Fix formatting of a function.
SVN revision: 28324
2007-02-12 17:02:15 +00:00
Carsten Haitzler f80a02f999 a few things.
1. disable viewports other than 1:1 at 0,0
2. remove output space coorsds for pointer.
3. remove geom caching
4. make threaded pipelined engine a runtime detect if u have > 1 cpu.
5. pthread build default if u have pthread.h and sched.h


SVN revision: 27131
2006-11-16 03:20:24 +00:00
Carsten Haitzler 9604530f2f slight cleanups
SVN revision: 26615
2006-10-15 14:39:16 +00:00
Carsten Haitzler 3c6495b122 hmm - broke e17's mouse pointer
SVN revision: 26403
2006-10-08 00:32:50 +00:00
tilman 3074654eaf don't forward noop move/resize calls to smart objects anymore. code wrapped in ifdefs so you can easily restore the old behaviour if needed.
SVN revision: 26399
2006-10-07 17:35:14 +00:00