Commit Graph

201 Commits

Author SHA1 Message Date
Carsten Haitzler 0bdfe655a0 patch over an aawesome source of segv's in cserve2... data2 is null.
but why?



SVN revision: 83877
2013-02-14 03:26:21 +00:00
Tom Hacohen 3974cb3dc1 Evas textblock: Fixed a selection bug introduced in my previous commit.
I matched against the wrong values so it never included items in the middle
even when needed.

SVN revision: 83869
2013-02-13 12:42:44 +00:00
Carsten Haitzler 179fd31b77 add api and lets test it - i'll document it later, but need to test
first.



SVN revision: 83867
2013-02-13 11:35:46 +00:00
Cedric BAIL db3eb71dde efl/evas: let's not be lazy and put smart related data only in smart object.
SVN revision: 83848
2013-02-12 08:58:59 +00:00
Cedric BAIL 966ca4602e efl/evas: move smart object data to smart object only.
SVN revision: 83847
2013-02-12 07:59:53 +00:00
Cedric BAIL 2943dcbc66 efl/evas: let the cow eat more.
memfile are not used that often like other direct pixels manipulation code.
Merging them into the same structure make sense and reduce the memory cost
for normal image object. Save between 8 to 16 bytes per image object.


SVN revision: 83843
2013-02-12 07:09:17 +00:00
Cedric BAIL 5acb8abc5c efl/evas: fix that awesome memory leak in E17 and every apps that don't change font name.
SVN revision: 83837
2013-02-12 06:07:25 +00:00
Daniel Zaoui ec7a42b204 Replace supported_types
Signed-off-by: Daniel Zaoui <daniel.zaoui@samsung.com>

SVN revision: 83802
2013-02-10 07:52:17 +00:00
Tom Hacohen 548e548632 Evas textblock: Fixed a selection issue.
The issue happens when selecting in strings that have both bidi and different
scripts in the same bidi run. E.g: "עבריתenglishрусскийעברית".

SVN revision: 83786
2013-02-08 15:31:25 +00:00
Cedric BAIL ad0bb4c6f6 efl/evas: small speed improvement when doing auto sizing of text object.
SVN revision: 83732
2013-02-07 10:48:07 +00:00
Raphael Kubo da Costa 29dd8e2b47 evas: Stop initializing and shutting Fontconfig down
A few days ago I was investigating a bug in the EFL WebKit port and
noticed WebKit's and Evas' handling of Fontconfig are somewhat
incompatible: while the evas_font code calls both FcInit() and FcFini()
when on initialization and shutdown, respectively, WebKit keeps some
Fontconfig objects alive until the process exits. In practice, this
means that shutting Evas down will cause FcFini() to assert because
there are objects which have not been properly destroyed.

This is not really a WebKit-specific problem, as any program which also
uses Fontconfig directly and shuts Evas down before destroying all FC
resources it has allocated is going to crash in the same way.

Other libraries such as Qt, Pango and Cairo do not explicitly initialize
and shut Fontconfig down. Evas itself got this code in r40242 and was
later adjusted in r45829 and r74870.

Since we can't completely control the lifetime of all Fontconfig objects
used in client code, I was thinking of doing the same thing as other
libraries do and get rid of the calls to FcInit() and FcFini(). The part
which is really important is not calling FcFini() -- this was already
done for a while in the r45829 which I mentioned. Valgrind will complain
about some "still reachable" memory blocks, but that's not really
important (as raster said in that revision's commit message, "things may
look like they leak in Valgrind - they dont. in reality").

Note: tasn tried to talk about it with fc guys and it's the
way to go. They won't implemented refcount as suggested in our ml.

Patch by: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>



SVN revision: 83605
2013-02-04 15:37:41 +00:00
Raphael Kubo da Costa b236ac69bd evas: Rename evas_font_zero_presure()
There's an obvious typo in the function name, so appease my OCD and
rename it.

Patch by: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>



SVN revision: 83604
2013-02-04 15:33:38 +00:00
Jaehwan Kim 2c3b1b4143 Fix the EVAS_CALLBACK_MOUSE_MOVE callback is called even if the grabbed object is invisible by proxy object.
SVN revision: 83501
2013-01-31 05:52:59 +00:00
Mike McCormack 089bfed33f efl: Fix a warning
Signed-off-by: Mike McCormack <mike@atratus.org>

SVN revision: 83498
2013-01-31 03:30:59 +00:00
Christopher Michael 324e84e307 Add UNUSED for parameter that is not used.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83474
2013-01-30 10:30:54 +00:00
Tom Hacohen 70156285b0 Eo dbg: Use eina_value as the debug info type.
SVN revision: 83443
2013-01-29 16:36:01 +00:00
Aharon Hillel 028f059d32 Clouseau-Eo integration: Added debug info functions.
From now, classes implementing the Eo function with id
EO_BASE_SUB_ID_DBG_INFO_GET will be able to show in Clouseau their own
specific information.
Information contents is controlled by the class itself and no more
by Clouseau. Basic types and lists are supported..

Signed-off-by: Aharon Hillel <a.hillel@samsung.com>

SVN revision: 83410
2013-01-29 06:36:23 +00:00
Cedric BAIL 1f1e0cd332 efl/evas: roll in Eina_Cow for Evas_Object_Image cur/prev.
This gave us back around 500KB at peak memory consumption in expedite.
More test to come.


SVN revision: 83376
2013-01-28 00:28:53 +00:00
Cedric BAIL 6174b1c5cf efl/evas: make shutdown/init cycle work again.
SVN revision: 83368
2013-01-27 08:42:57 +00:00
Cedric BAIL 00f8823b95 efl/evas: use inheritance instead of strcmp and work around code running between destructor and free.
SVN revision: 83367
2013-01-27 08:34:22 +00:00
Cedric BAIL 8589836860 efl/evas: reduce commit to evas_object_image.
SVN revision: 83365
2013-01-27 06:31:11 +00:00
Jiyoun Park e290dfae93 add info log related with mouse down/up
SVN revision: 83351
2013-01-26 09:47:21 +00:00
Carsten Haitzler a9eeda6300 paranoia++ -> if g->object is null - dont use it. :/
SVN revision: 83337
2013-01-26 02:34:59 +00:00
Boris Faure 11b98b32e2 evas: make e start again…
SVN revision: 83336
2013-01-25 22:21:37 +00:00
Cedric BAIL c538d8bde3 efl/evas: prevent leak and over write.
SVN revision: 83331
2013-01-25 15:19:32 +00:00
Cedric BAIL 6c7edfd38e efl/evas: roll in more cow, using a new macro per Eina_Cow.
SVN revision: 83325
2013-01-25 12:15:38 +00:00
Cedric BAIL f64ab2c8dd efl/evas: revert the revert, and indeed the bug was somewhere else.
SVN revision: 83193
2013-01-24 01:50:57 +00:00
Cedric BAIL be0f7fcaa0 efl/evas: don't over write when not needed.
SVN revision: 83192
2013-01-24 01:43:03 +00:00
Carsten Haitzler 07c3ce0bbe ummm this really fubars stuff up cedric.. revert. put it back when u
have figured things out. :)



SVN revision: 83143
2013-01-23 10:07:31 +00:00
Cedric BAIL 36bdaab9c2 efl: another easy to kill, almost 5% in memory save per Evas_Object_Image.
SVN revision: 83073
2013-01-22 10:59:14 +00:00
Cedric BAIL c0e62fb818 efl: remove a forgotten deprecated call.
SVN revision: 83069
2013-01-22 10:47:47 +00:00
Cedric BAIL 3070dfac2d efl: move Evas_Object map data to there own Eina_Cow pointer.
NOTE: Overall speedup of 7%. No benchmark on memory consumption yet
as they are still running ask me directly to get the number later
today.


SVN revision: 83052
2013-01-22 03:56:00 +00:00
Cedric BAIL d32ee023e3 efl: missing deprecated user.
SVN revision: 83049
2013-01-22 02:14:07 +00:00
Cedric BAIL 3e7e37630f efl: group more map stuff in the same sub structure.
SVN revision: 83034
2013-01-21 09:36:19 +00:00
Cedric BAIL 380aea9e91 efl: cleanup Evas_Object_Protected_Data.
SVN revision: 83028
2013-01-21 03:51:58 +00:00
Cedric BAIL 5ae84c97ce efl: use new eina_cow macro to clean stuff a little.
SVN revision: 83026
2013-01-21 03:12:39 +00:00
Gustavo Sverzut Barbieri df701d8ca2 some clang warning cleanups i forgot to commit
SVN revision: 83024
2013-01-21 00:22:35 +00:00
Ulisses Furquim 34cc6a1b15 evas/async_render: fix refcount handling of scaled image entries
SVN revision: 82961
2013-01-17 22:14:05 +00:00
Leandro Pereira f52f44e7a2 evas_render: Measure time spent while rendering in sync and async modes
SVN revision: 82936
2013-01-17 14:31:34 +00:00
Carsten Haitzler 56a9ccefb5 a few spots missed for sync with async thread.
SVN revision: 82932
2013-01-17 11:10:27 +00:00
Cedric BAIL 58291fb022 efl: let's use text_prop cache properly.
Now evas_object_textgrid_render account for 1% of the benchmark.


SVN revision: 82928
2013-01-17 10:28:18 +00:00
Cedric BAIL b395af5e7a efl: stupid micro optimization.
This single test accounted for 1% of my terminology benchmark.
I am considering moving evas_string_char_next_get and
eina_unicode_utf8_get_next to become inline as their function
entry/exit point account for 3% of the same benchmark.

The biggest win would be to get rid of the memcpy _termpty_text_copy
that account for 16%.

In the micro optimization part, we also still do to much malloc
in font_draw_prepare as we don't recycle the array there and account
for 3% of the benchmark in malloc/free there. In the same ballpark
_text_save_top account for 2% of the time in malloc/free.

In that same benchmark, evas_object_textgrid_render account for 5%
where 4% of its time is spend in evas_common_font_draw_prepare. At this
point I am not sure that rewriting textgrid is gona help us at all. We
will win almost as much by just inlining the get_next things in evas
and eina for a minute of development time.


SVN revision: 82927
2013-01-17 09:38:49 +00:00
Cedric BAIL 4c828392da efl: roll in first use of Eina_Cow for Evas_Object.proxy.
Expedite biggest test memory win 100KB, average 10KB.
No slow down in proxy test (+/-3%). Speed up in most other
case (average speed up is +5%), likely due to much more
cache hit.

Elementary test show a win between 100KB to 600KB depending
on the test you are considering.

Now, you can see how I intend to use Eina_Cow and the expected
win we can have from it. I don't intend to do more for the
rest of the week so you have time to comment.


SVN revision: 82924
2013-01-17 07:21:06 +00:00
Cedric BAIL 6e9c28c147 efl: this function are used in evas canvas object.
SVN revision: 82917
2013-01-17 04:06:22 +00:00
Ulisses Furquim d8b2bce148 evas/async_render: fix scalecache integration
Note: scalecache is really crazy stuff, we should rewrite it or get rid of it.



SVN revision: 82912
2013-01-16 22:32:39 +00:00
Ulisses Furquim 09f342fdeb evas/async_render: use image scalecache
SVN revision: 82890
2013-01-16 16:07:46 +00:00
Cedric BAIL 7e4e3fe5b8 efl: let's not do useless over allocation and memcpy.
SVN revision: 82872
2013-01-16 10:45:04 +00:00
Carsten Haitzler b86a5cd30f fix pixman wrappers where image size and alloc size differ.
SVN revision: 82856
2013-01-16 06:32:34 +00:00
Cedric BAIL ffafb3602e efl: let's do less memcpy.
SVN revision: 82855
2013-01-16 06:31:32 +00:00
Ulisses Furquim 028e7e9ed2 evas/async_events: missed counting fix in unblocking _process()
SVN revision: 82834
2013-01-15 18:00:15 +00:00