Commit Graph

1764 Commits

Author SHA1 Message Date
Cedric BAIL 488ea9ec82 edje: reduce memory usage of Edje signal callbacks and automates.
This patch try to share signal callbacks and automate accross all Edje
object. It does use an Eina_Hash on the callback description (signal,
source, func). There is no need to check it against Edje file or group
only the callbacks matter.

This version remove all use of size_t as it should never be above 32bits.
We have a hard limit on the number of callback to 2^32 now. I am considering
it would be sane to make it a short.
2013-03-13 16:46:42 +09:00
Cedric BAIL c78f4d7bfa edje: use Eina_Cow for physics and map Edje_Real_Part_State.
This reduce memory used per Edje_Part description by 2 on my tests.
2013-03-13 14:35:31 +09:00
Carsten Haitzler b7221512d5 This causes segv's on 64bit!
Program received signal SIGSEGV, Segmentation fault.
_edje_emit_cb (ed=ed@entry=0x8ebd68, sig=sig@entry=0x8fba4c
"focus,part,in", src=src@entry=0x8222fc "elm.text",
data=data@entry=0x0, prop=prop@entry=0 '\000') at
lib/edje/edje_program.c:1442
warning: Source file is more recent than executable.
1442                                eina_list_free(data.matches);
(gdb) bt
"focus,part,in", src=src@entry=0x8222fc "elm.text",
data=data@entry=0x0, prop=prop@entry=0 '\000') at
lib/edje/edje_program.c:1442
"focus,part,in", src=0x8222fc "elm.text", sdata=0x0, prop=0 '\000') at
lib/edje/edje_program.c:1366
_pd=0x8222f0, list=0x7fff00000001) at lib/edje/edje_message_queue.c:124
op_type=EO_OP_TYPE_REGULAR, op=564, p_list=0x7fffffffcf28) at
lib/eo/eo.c:364
op_type=EO_OP_TYPE_REGULAR, obj=0x8ebae0) at lib/eo/eo.c:404
op_type=op_type@entry=EO_OP_TYPE_REGULAR) at lib/eo/eo.c:435
(obj=<optimized out>) at lib/edje/edje_message_queue.c:71
(sid=sid@entry=0x8eae88) at elm_interface_scrollable.c:788
(sid=0x8eae88) at elm_interface_scrollable.c:805
_pd=0x8eae88, list=<optimized out>) at elm_interface_scrollable.c:3370
op_type=EO_OP_TYPE_REGULAR, op=840, p_list=0x7fffffffd158) at
lib/eo/eo.c:364
op_type=EO_OP_TYPE_REGULAR, obj=0x8ea9e0) at lib/eo/eo.c:404
op_type=op_type@entry=EO_OP_TYPE_REGULAR) at lib/eo/eo.c:435
_pd=0x8ead70, list=<optimized out>) at elm_entry.c:2804
op_type=EO_OP_TYPE_REGULAR, op=129, p_list=0x7fffffffd328) at
lib/eo/eo.c:364
op_type=EO_OP_TYPE_REGULAR, obj=0x8ea9e0) at lib/eo/eo.c:404
lib/eo/eo.c:435
op_type=EO_OP_TYPE_REGULAR, op=1, p_list=0x7fffffffd4a8) at
lib/eo/eo.c:364
(obj=obj@entry=0x8ea9e0, op_type=op_type@entry=EO_OP_TYPE_REGULAR,
op=1) at lib/eo/eo.c:463
class_data=<optimized out>, list=<optimized out>) at elm_widget.c:5526
op_type=EO_OP_TYPE_REGULAR, op=1, p_list=0x7fffffffd628) at
lib/eo/eo.c:364
(obj=obj@entry=0x8ea9e0, op_type=op_type@entry=EO_OP_TYPE_REGULAR,
op=1) at lib/eo/eo.c:463
out>, list=<optimized out>) at elm_layout.c:2157
op_type=EO_OP_TYPE_REGULAR, op=1, p_list=0x7fffffffd7b8) at
lib/eo/eo.c:364
op_type=<optimized out>, op=1) at lib/eo/eo.c:463
op_type=EO_OP_TYPE_REGULAR, op=1, p_list=0x7fffffffd928) at
lib/eo/eo.c:364
(obj=obj@entry=0x8ea9e0, op_type=op_type@entry=EO_OP_TYPE_REGULAR,
op=1) at lib/eo/eo.c:463
out>, list=<optimized out>) at elm_entry.c:3076
op_type=EO_OP_TYPE_REGULAR, op=1, p_list=0x7fffffffdad8) at
lib/eo/eo.c:364
op_type=EO_OP_TYPE_REGULAR, obj=0x8ea9e0) at lib/eo/eo.c:404
lib/eo/eo.c:1162
elm_entry.c:3068
autorun=0x0) at test.c:441

Revert "edje: reduce memory usage of Edje signal callbacks and automates."

This reverts commit 15aae2c0a4.
2013-03-12 23:48:42 +09:00
Cedric BAIL 4d316f3bec eo, evas, edje: reorder structure for reducing memory usage. 2013-03-12 19:17:11 +09:00
Cedric BAIL 15aae2c0a4 edje: reduce memory usage of Edje signal callbacks and automates.
This patch try to share signal callbacks and automate accross all Edje
object. It does use an Eina_Hash on the callback description (signal,
source, func). There is no need to check it against Edje file or group
only the callbacks matter.
2013-03-12 15:58:42 +09:00
Jihoon Kim 2ee27ec6d5 fix bug scroll works when PgDn, PgUp, Home, End key in entry is pressed in preedit state 2013-03-06 09:26:44 +09:00
Mike Blumenkrantz a4026762f9 fix edje program filters 2013-02-28 11:33:57 +00:00
Mike Blumenkrantz d4089d9558 fix edje SPACER part custom states 2013-02-28 11:33:57 +00:00
Jihoon Kim 49930b7b89 edje entry: set cursor position of selection start in selection mode 2013-02-28 15:08:00 +09:00
Tom Hacohen a66f1c73f7 Edje entry fit: Set the min size according to the fitting as well. 2013-02-22 14:13:35 +00:00
Tom Hacohen 9bc0260b51 Edje entry fit: Set the min/max sizes according to the fitting, not before. 2013-02-22 14:11:41 +00:00
Cedric BAIL 61287fce38 edje: let's properly report that file doesn't exist. 2013-02-20 12:15:00 +09:00
Daniel Zaoui c5ac584a57 edje file_set: _edje_object_orientation_inform should be in the Eo
implementation, not just legacy

Signed-off-by: Daniel Zaoui <daniel.zaoui@samsung.com>
2013-02-19 17:51:43 +02:00
Tom Hacohen cc7b4a15e3 Edje entry: Fixed a fit issue with fitting even when disabled. 2013-02-19 11:46:21 +00:00
Tom Hacohen 5c233f7721 Edje entry: Fixed some fit issues - only works well with single line textblocks.
I figured it's better to have single line textblocks working well, rather
than nothing working at all. This should now work with ellipsis as well.
2013-02-19 11:40:00 +00:00
Carsten Haitzler 28218fe856 Fix edje edje_color_class_list() and edje_text_class_list() to look at the
correct hashes when returning.
2013-02-18 15:42:28 +09:00
discomfitor f27ff2fbf3 fix damn edje entry anchor click signals: this fixes anchor clicking in elm_entry widgets when using a desktop profile which has been broken for over a year
ticket #1179
2013-02-17 14:18:46 +00:00
Tom Hacohen 91ae899232 Edje textblock: Improved textblock fit and added support for size_range.
It's a bit quirky at the moment as you have to set the base font size
(text.size) although this doesn't have any effect on textblocks.
2013-02-15 17:55:34 +00:00
Jihoon Kim 01a6147288 edje entry : Fix bug candidate word couldn't be selected with up/down key in the preedit status
SVN revision: 83882
2013-02-14 08:03:52 +00:00
Jihoon Kim fcb1fc0e98 edje_entry: improve code about adding preedit tag
SVN revision: 83881
2013-02-14 07:56:18 +00:00
Cedric BAIL d065dd4750 efl/edje: edje program are static for all object of the same edje collection.
This reduce our waste of memory by 300K in most elementary application. There is
another 400K to win by merging edje signal callback automat.


SVN revision: 83879
2013-02-14 03:36:13 +00:00
Jihoon Kim 504055db36 edje entry : fix bug not to display preedit string with PREEDIT_TYPE_NONE style
SVN revision: 83876
2013-02-14 02:09:21 +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
Daniel Juyung Seo 0ed38dbc64 efl, evas_generic_loaders: Removed unused variable. Set EINA_UNUSED to unused variables.
SVN revision: 83788
2013-02-08 15:47:11 +00:00
WooHyun Jung 5d3e2e48d2 [edje/edje_program] Checking walking_callbacks for not removing patterns which are still used.
SVN revision: 83700
2013-02-07 05:36:47 +00:00
Jihoon Kim 4b1edd906c efl/edje_entry: support &, < and > in preedit string
SVN revision: 83575
2013-02-04 00:57:50 +00:00
Jihoon Kim 916ef25fe8 efl/edje entry : Remove ecore_imf_context_cursor_position_set in functions related to selection.
SVN revision: 83495
2013-01-31 01:01:33 +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
Carsten Haitzler a349bdc734 fix edje cache miss
SVN revision: 83431
2013-01-29 13:48:15 +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 da4efb7b56 efl/edje: one less use of evas_object_type_get.
SVN revision: 83408
2013-01-29 06:01:42 +00:00
Cedric BAIL 73694511de efl/edje: in fact we can now use eo_isa for that purpose.
SVN revision: 83395
2013-01-29 02:29:34 +00:00
ChunEon Park 8a7e99b67e edje - [Edje: Bug fix] NULL check is added before strcmp() in _edje_real_part_swallow() function
Hi,

Can some one please verify and merge the attahed patch with open source svn Edje code.

[Issue details :]
NULL checking is not done before sending a string to strcmp().
In _edje_real_part_swallow() function of edje_util.c file, evas_object_type_get() API can return NULL and if
this NULL value is directly passed to strcmp(), it causes a crash.

[Issue fix :]
NULL check is added for obj_type before passing it to strcmp().

Thanks & Regards,
Sumanth

Signed-Off-By: Sumanth Krishna (sumanth.m@samsung.com)



SVN revision: 83393
2013-01-29 00:07:17 +00:00
Daniel Willmann 003b7f12d8 edje-multisense: Don't fail if edje-multisense is not enabled
Ifdef all the functions that reference ecore_audio so this file can be
compiled without ecore_audio enabled.

Signed-off-by: Daniel Willmann <d.willmann@samsung.com>

SVN revision: 83384
2013-01-28 16:05:49 +00:00
Daniel Willmann e069b829bf edje-multisense: Replace sound handling with ecore_audio
The speed keyword is not yet implemented.

Signed-off-by: Daniel Willmann <d.willmann@samsung.com>

SVN revision: 83380
2013-01-28 15:15:20 +00:00
Jihoon Kim 7dd5b326d8 edje entry: move ecore_imf_context_cursor_position_set from mouse down event to mouse up event
SVN revision: 83318
2013-01-25 05:15:46 +00:00
Jihoon Kim 57103879f5 edje entry: remove ecore_imf_context_reset, cursor update in mouse move event because it's useless.
SVN revision: 83317
2013-01-25 05:10:47 +00:00
Jihoon Kim 56c020fbba edje_entry: fix warning by clang
SVN revision: 83033
2013-01-21 07: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
Jihoon Kim 24079fcf54 edje entry: remove ecore_imf_context_reset in mouse up event because it's useless.
SVN revision: 82967
2013-01-18 08:08:30 +00:00
Jihoon Kim 7d237bcf01 edje entry: cursor position and location will be passed when it's really changed in case of mouse down, move, and up event.
SVN revision: 82922
2013-01-17 05:32:17 +00:00
Daniel Willmann d2a6e45c80 edje: More off-by-one issues from Klocwork
Signed-off-by-one: Daniel Willmann <d.willmann@samsung.com>

SVN revision: 82770
2013-01-14 17:07:44 +00:00
Daniel Willmann 6bb09ee91c efl/embryo: Let's not overwrite memory here
Issue found by Klocwork

Signed-off-by: Daniel Willmann <d.willmann@samsung.com>

SVN revision: 82767
2013-01-14 16:42:49 +00:00
Gustavo Sverzut Barbieri 34f5315141 merge ethumb.
This one was a painful bitch. The edbus2 port was quite broken, mainly
leaking eina_stringshare and also not adding the '\0' to the strings
that are represented as bytearray (paths cannot be utf8 to avoid
translations).

Emotion plugin was also quite bogus and the video thumbnail as edje
(animated) is not working yet due bug in Edje_Edit api -- someone
needs to investigate this, seems strange.

Emotion plugin also had a bug that it was deleting the object from
inside object callback.

Now it seems to work. Please report if it does not.



SVN revision: 82675
2013-01-12 01:15:45 +00:00
Carsten Haitzler 9b559ec173 CEDRIC! REVERT! this breaks text labels in e17 default theme when
eselected - they all jump up to the top! :)



SVN revision: 82635
2013-01-11 13:31:40 +00:00
Cedric BAIL 23709b48e5 efl: update edje text part geometry after setting the text.
SVN revision: 82615
2013-01-11 06:58:25 +00:00
Cedric BAIL 849fcc8b88 efl: remove useless geometry get.
SVN revision: 82614
2013-01-11 06:57:50 +00:00
Lucas De Marchi f1ca8b54d6 efl: remove check for langinfo.h and locale.h
SVN revision: 82583
2013-01-10 20:25:53 +00:00
Gustavo Sverzut Barbieri 7b0ae69adc efl/edje: remove useless include.
This made no sense... as HAVE_ECORE_IMF was defined in a local (not
installed) config.h. With single-tree it is defined and will bring in
one useless include in our public header.



SVN revision: 82498
2013-01-10 02:14:46 +00:00
Gustavo Sverzut Barbieri c72d6b68cd maybe this time svnlook will work?
SVN revision: 82496
2013-01-09 23:27:31 +00:00
Gustavo Sverzut Barbieri c5c3af138e still not there with svnlook diff :-/
hell, how to make this bastard show C function names in diff!?


SVN revision: 82495
2013-01-09 23:25:01 +00:00
Gustavo Sverzut Barbieri cd7cf2cec9 bogus commit to see if post-commit hook worked.
svnlook diff is a bitch, come on :-/


SVN revision: 82494
2013-01-09 23:21:39 +00:00
Henrique Dante de Almeida 1c1d9f4161 Fix Edje hint recalculation after swallow part changes
Patch by: Henrique Dante de Almeida <hdante@profusion.mobi>



SVN revision: 82480
2013-01-09 20:56:03 +00:00
Gustavo Sverzut Barbieri acf4ca6139 efl/edje: remove alloca as it's in eina now.
SVN revision: 82372
2013-01-07 23:30:06 +00:00
Gustavo Sverzut Barbieri b59fba7d69 efl/edje: remove warning (PLEASE REVIEW).
This warning was removed but I left the _edje_real_part_state_get() in
there as this will not just get the part state, but also call
_edje_part_recalc() if needed.

Should we completely remove the block, or is _edje_part_recalc() required?




SVN revision: 82366
2013-01-07 21:34:20 +00:00
WooHyun Jung 8e72f77b5f edje/edje_entry : When preediting text is removed by filter callback, committing is useless. So I added some codes for skipping that committing.
SVN revision: 82339
2013-01-07 11:17:55 +00:00
David Walter Seikel 6a804bb4e1 Clean up the Lua docs. Much less clean up than I thought would be needed.
And my work for the year is done.  B-)


SVN revision: 82306
2013-01-06 15:36:44 +00:00
David Walter Seikel 0b12a76c5a Link the Lua docs to the main Edje page.
SVN revision: 82303
2013-01-06 14:59:43 +00:00
Gustavo Sverzut Barbieri 9b5958ce91 efl/edje: ecore_imf_init() only once.
use technique similar to elementary and delay init() of module, but
once you do, do it only once and avoid shutdown() until
edje_shutdown().

This is good if we keep creating and deleting edje objects with entry,
the count could go to 0 and ecore_imf_shutdown() would unload
everything, just to load it soon.



SVN revision: 82281
2013-01-05 16:17:53 +00:00
Gustavo Sverzut Barbieri 519a702681 efl/edje: fix definition of parameter-less functions.
SVN revision: 82280
2013-01-05 16:15:59 +00:00
Gustavo Sverzut Barbieri 1108fc893b efl/edje: improve HAVE_ECORE_IMF conditional handling.
I wonder if we should still support no Ecore_IMF, can we make it
mandatory as it's always built with single-tree?




SVN revision: 82279
2013-01-05 16:07:59 +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
Gustavo Sverzut Barbieri c96a620b46 efl/edje: improve docs after merge.
SVN revision: 82142
2013-01-04 02:51:43 +00:00
Gustavo Sverzut Barbieri 9ea2ce1041 efl: merge edje.
this is still in progress, mostly the multisense stuff is pending.

it seems that when we merge ecore_audio in edje the libremix and
similar are gone, at least from Edje, and will be in ecore_audio
itself (or pulseaudio).

Changes:
 * __UNUSED__ to EINA_UNUSED
 * binaries (epp, embryo_cc, edje_cc) now consider EFL_RUN_IN_TREE and
   will assume the binaries are still not installed, running from
   build tree location (needs more testing, maybe doesn't work with
   srcdir != builddir, still doesn't solve cross compile builds)



SVN revision: 82139
2013-01-04 02:08:14 +00:00