Commit Graph

3841 Commits

Author SHA1 Message Date
Youngbok Shin b4106c90d9 Evas test textblock: Added a test for a broken range_text_get case.
Summary: Added a test for range_text_get case on the text that include multi text node.

Reviewers: tasn, woohyun, seoz

CC: cedric

Differential Revision: https://phab.enlightenment.org/D398
2013-12-23 11:01:57 +09:00
Sebastian Dröge 9c752106f7 emotion: initial port of emotion to GStreamer 1.0
Some commits to port emotion to GStreamer 1.0 and implement some missing features,
clean up code a bit and fix some bugs on the way.

This works as good as the 0.10 code for me now with the emotion examples,
just the Samsung hardware specific code is commented out. This should be
ported by someone who has such hardware, and also in a clean way now that
GStreamer since 1.0 has features to handle all this properly.

There's still a lot of potential to clean things up and fix many bugs, and also
to implement zerocopy rendering. But those are for later if there's actual
interest in this at all.

Commits:

- Update configure checks and ecore example to GStreamer 1.0
- Initial port of emotion to GStreamer 1.0
- Samsung specific code commented out, should be ported by someone
with the hardware.
- Return GST_FLOW_FLUSHING when the sink is unlocked
- Remove unused GSignal from the sink
- Use GstVideoInfo to store the format details inside the sink
- Add support for pixel-aspect-ratio
- Store video format information in GstVideoInfo for the different video streams
- Use GstAudioInfo to store the audio format information
- Remove some unused defines
- Header cleanup
- Implement initial support for GstNavigation interface
- Implement setting of audio/video channel

Reviewers: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D387

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-23 10:59:42 +09:00
Andrii Kroitor 574c5c1ba7 edje: edje_decc - added -output flag (save to specified dir)
Reviewers: cedric, seoz

Reviewed By: cedric

CC: reutskiy.v.v, cedric

Differential Revision: https://phab.enlightenment.org/D402

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-23 10:48:13 +09:00
Vyacheslav Reutskiy 641d823cbb edje: edje_calc - update _edje_part_description_find
Add to fuction prototype new param: Eina_Bool approximation.
If need exact matching state name and value set EINA_FALSE to
'approximate'. In other cases used EINA_TRUE.

Reviewers: cedric, raster, seoz

CC: cedric

Differential Revision: https://phab.enlightenment.org/D400

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-23 10:47:32 +09:00
Andrii Kroitor 7a3cd879d2 edje: edje_edit - fix .edc file generation
Reviewers: cedric, seoz

Reviewed By: cedric

CC: reutskiy.v.v, cedric

Differential Revision: https://phab.enlightenment.org/D401

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-23 09:49:53 +09:00
ChunEon Park 10babb62cd evas - redraw the map surface if one of the children has been still changed map. 2013-12-22 18:19:40 +09:00
Gustavo Sverzut Barbieri 91a2711225 emotion_generic: fix permissions, resource leaks and error handling.
- create permissions as 0700, this should be private to the running user.

 - do shm_unlink() on error, prevents resource leaks;

 - apply close() on error, prevents resource leaks;

 - handle strerror() properly.

 - shm name uses process id, object name and ecore's time, should be
   cleaner and avoid possible clashes

 - ecore_exe do not need to read from slave stdout/err, this removing
   the flags allows messages to come visible at terminal.
2013-12-21 17:08:35 -02:00
Gustavo Sverzut Barbieri 376ca3f09b fix doc typo, ernno usage and add missing close().
- fix typo, it's slave not slayer... :-D

 - errno: you can't use errno to report error from failed mmap() if
   you do another call that sets errno after that, in that case
   fprintf(). So have a single print so we can use the errno value of
   the proper call.

 - although the slave generic player is not that important if it leaks
   its single shmfd, let's be pedantic and close it. Manpage says it
   is safe to close filedescriptor after mmap() worked.
2013-12-21 15:02:52 -02:00
discomfitor dd666a6ffd bugfix: free the entire ecore_con dns struct on info clear to prevent crashes later on 2013-12-20 22:16:59 -05:00
discomfitor 2a143393f9 split ecore_con_dns free functions into one that removes from list and one that does the freeing 2013-12-20 22:16:29 -05:00
discomfitor 0808259eff Revert "workaround for a weird ecore-con crash"
This reverts commit c751a220d6.
2013-12-20 22:04:58 -05:00
discomfitor c751a220d6 workaround for a weird ecore-con crash
kuri ping in case I don't get to this soon it needs to be fixed somewhere else
2013-12-20 21:36:58 -05:00
Gustavo Sverzut Barbieri fc05567c8f extn: remove files.{w,h} that are not used. 2013-12-20 13:10:38 -02:00
Gustavo Sverzut Barbieri a2baca3270 extn: remove unused attribute am_server. 2013-12-20 13:09:52 -02:00
Gustavo Sverzut Barbieri 4f4f662a40 extn: complete with NULL newly added functions. 2013-12-20 13:08:51 -02:00
Gustavo Sverzut Barbieri c7fed5d879 extn: fix typo, alpha is SHM_REF2, not 1! 2013-12-20 12:59:13 -02:00
ChunEon Park faa67b79f0 evas - removed unnecessary doc info 2013-12-20 20:26:57 +09:00
Carsten Haitzler cb841b56af evas render2 - more work on basics 2013-12-20 19:45:44 +09:00
Cedric BAIL 1a5b7d383d evas: fix compilation issue on Jenkins windows that make me wonder how it does build on Linux. 2013-12-20 16:09:10 +09:00
Cedric BAIL 1929637aa0 evas: no loader should ever close an Eina_File anymore.
This would lead to some crash in EFM if relying on Evas to find the file format by
trying all its loader.

This should fix T674 and T668.
2013-12-20 15:10:16 +09:00
Yury Usishchev 8fb948bd46 evas: patched evas_map_image.c to use NEON code
Reviewers: cedric, raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D397

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-20 15:10:09 +09:00
Andrii Kroitor b556df55af edje: edje_cc - note for future image_id changes added
Reviewers: cedric

Reviewed By: cedric

CC: reutskiy.v.v, cedric

Differential Revision: https://phab.enlightenment.org/D396

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-20 14:43:24 +09:00
Vyacheslav Reutskiy f358520483 edje: edc ref - update the information about fill type values
Reviewers: cedric, raster, seoz

Reviewed By: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D395
2013-12-20 14:43:24 +09:00
Vyacheslav Reutskiy e69929321f edje: edje_edit - adding getter and setter for smooth parameter
This commit will add API for working with smooth for image
and proxy part type.
There are two functions will be added:

1. edje_edit_state_fill_smooth_get
2. edje_edit_state_fill_smooth_set

Reviewers: cedric, raster, seoz

Reviewed By: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D394

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-20 14:43:23 +09:00
Viacheslav Lvov 067cbf6df8 evas - render - clear out pending object array more aggressively
There was detected that pending_objects array of Evas structure of
email application stores at least 550 objects that never are removed
from this array. These objects are not active and are not about to render.
We know that once the decision not to remove changed objects from this
array was accepted. But then the criterion of leaving object in this
array was weakened.
We propose to weaken this criterion more sufficiently – do not store
in this array objects that can not be cause of whole canvas
invalidation. Our exact proposal for this criterion you can see in the
patch attached to this issue.

NOTE: This patch is a try, there may be some side effect especially with
mapped object that we didn't find, so it could be reverted if before the
release of 1.9 we see anything wrong.

Reviewers: cedric

CC: cedric, seoz

Differential Revision: https://phab.enlightenment.org/D354

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-20 14:43:23 +09:00
Carsten Haitzler 846bbafbfb evas - jpg loader - speed up header check for pgoressive jpgs 2013-12-20 14:14:52 +09:00
Carsten Haitzler d3e74a0c58 render2 - work 2013-12-20 14:14:52 +09:00
discomfitor 41fe698fc2 reformat ecore_con so I can read it... 2013-12-20 00:08:43 -05:00
Jihoon Kim 2bcfc800c9 Remove ecore_imf_context_reset in focus-in event handler
It's useless to call ecore_imf_context_reset in focus-in handler
2013-12-20 09:31:58 +09:00
Carsten Haitzler eed4526003 first steps to rewriting evas render... a long path. 2013-12-19 22:49:43 +09:00
Guillaume Friloux 8937708e43 Fix coding style madness. 2013-12-19 11:12:46 +01:00
Guillaume Friloux 86d2983bf3 Fix leak + possible segfault in edje_edit.
vaiable 'c' is allocated inside a loop, but only freed outside that loop...
2013-12-19 11:04:07 +01:00
Vyacheslav Reutskiy 8bff25fadc edje: edje_edit - adding API to move to the specified place in the parts stack
This commit will add some API to restack part above/below target part.
There are two functions will be added:

1. edje_edit_part_restack_part_below
2. edje_edit_part_restack_part_above

Reviewers: cedric, seoz, raster

Reviewed By: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D390

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-19 15:53:48 +09:00
Andrii Kroitor 287d63c016 edje: edje_edit - image api modification
Changed edje_edit_image_del logic: image can't be deleted if it's in use,
after deletion last image in list is moved to freed position so there are no
"holes" in image list.

Following functions added to api:
   edje_edit_image_replace
   edje_edit_image_usage_list_get
   edje_edit_image_usage_list_free

Reviewers: cedric, seoz, raster

Reviewed By: cedric

CC: reutskiy.v.v, cedric

Differential Revision: https://phab.enlightenment.org/D392

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-19 15:53:38 +09:00
Vyacheslav Reutskiy bf3f0f2f4a edje: edje_edit - fix edje_edit_state_color_class_set to apply the colors to color_class.
edje_edit_state_color_class_set apply the colors from color_class to the given part.

Reviewers: cedric, seoz, raster

Reviewed By: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D391

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-19 15:53:29 +09:00
Vyacheslav Reutskiy 811c97eabb edje: edje_edit - adding getter and setter for text source
This commit will add API for working with text source.
There are two functions will be added:

1. edje_edit_state_text_source_get
2. edje_edit_state_text_source_set

Reviewers: cedric, seoz, raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D389

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-19 15:53:27 +09:00
Vyacheslav Reutskiy 0ad1dfe4e5 edje: edje_edit - adding getter and setter for text style
This commit will add API for working with text style.
There are two functions will be added:

1. edje_edit_state_text_style_get
2. edje_edit_state_text_style_set

Reviewers: cedric, seoz, raster

Reviewed By: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D388

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-19 15:53:24 +09:00
Vorobiov Vitalii 891c34f50f edje: edje_edit - _edje_generate_source supporting alias
Support generating alias source code in functions:
1) _edje_generate_source_of_group
2) _edje_generate_source

Reviewers: cedric, seoz, raster

CC: reutskiy.v.v, cedric

Differential Revision: https://phab.enlightenment.org/D386

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-19 15:53:15 +09:00
Vorobiov Vitalii 12c91a8852 edje: edje_edit - adding edje_edit_group_copy.
This new function will copy the whole group into same file but with another group name/id.

Copying whole group data field by field require some huge code.
Alternatively we found another solution for copying whole group as you can see it in this commit.
This function will copy group and all it's data (like scripts etc) and it will be totally independent.

Reviewers: cedric, seoz, raster

CC: reutskiy.v.v, cedric

Differential Revision: https://phab.enlightenment.org/D385

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-19 15:52:51 +09:00
ChunEon Park f4d24e962d evas/map - ensure map updation.
for more gurantee to update map properly,
we should reset the map changed flag after the map updation is performed.
this will fix a mapbuf bug that map is not updated.

when the map is changed without rendering but it's in the active object list,
the map updation couldn't be happened later that map is rendered. (if the map is not updated at this frame)
2013-12-19 15:34:15 +09:00
ChunEon Park cb384fe88b Revert "evas/map - commeted out insane compare."
This reverts commit b259cfafe5.

my fault. the compare is reasonable.
2013-12-19 14:33:02 +09:00
ChunEon Park b259cfafe5 evas/map - commeted out insane compare.
cedric, is it just typo?
2013-12-19 14:12:23 +09:00
Jihoon Kim 75e399158c ibusimmodule: fix dereference after null check issue
The variable 'str' was used after checking NULL.
2013-12-19 10:20:42 +09:00
Daniel Juyung Seo c4b7f83ef6 ecore_evas: removed author's name from source code as the author requested it.
Git log should be enough for the credit :)

This code was merged into efl upstream by devilhorn's aggressive synchronization between efl upstream and tizen.
But that commit didn't have the author's credit.
However We will never forget the contribution of Gwanglim Lee <gl77.lee@samsung.com>.
2013-12-18 23:49:06 +09:00
Daniel Juyung Seo 17fe60d0db ecore gesture: removed unused variable. 2013-12-18 23:18:15 +09:00
Carsten Haitzler ed27f52b05 evas - tiler - fix missing clip of first rect to outbuf size
stable release - cherry-pick me!
2013-12-18 20:38:15 +09:00
Gustavo Sverzut Barbieri 0b86e5119f getopt: add positional argument handling.
positional arguments must appear at the end of the description array
(after the last option) and should have a metavar set and not have
shortname or longname. Simple, elegant and fit :-)

There is a new function to parse the positional arguments,
ecore_getopt_parse_positional() because we may want to not try to
parse them in the case of a quit-option such as --help, --license,
--copyright, --version or some user-defined action. This avoids us
producing errors of missing positional arguments when printing help
and adds some flexibility as well.

This should make Tasn happy :-)
2013-12-17 21:06:53 -02:00
Gustavo Sverzut Barbieri 1c1f9ea0e1 add great ecore_getopt example.
should cover and explain getopt usage and serve as base for
applications that want to use it (all efl should!)
2013-12-17 18:08:27 -02:00
Gustavo Sverzut Barbieri 99ba5822c8 getopt: fix line wrapping issues in help strings. 2013-12-17 17:51:48 -02:00
ChunEon Park 0947bae126 ecore/ecore_x - show the window if the window should be visible.
when the window alpha mode is changed, the x window is re-created.
but if the window is going on the show state(not visible yet but waiting for visible from xserver) this window never be visible.
so here it make the window visible also if the window is going on the visible state.
2013-12-17 20:37:17 +09:00
Cedric BAIL 0a1cc79a91 Ecore_Avahi: initial commit.
TODO:
- Add tests, how ?
- Integrate with Eo, needed ?
2013-12-17 19:37:05 +09:00
Iván Briano 99e3ce489a One ) too many. 2013-12-16 15:45:00 -02:00
Tom Hacohen 7aae5d0804 Evas textblock: Fixed range_deletion bug with multiple visible formats.
This makes the tests added in 8bee8853ae
pass.

Thanks to Youngbok Shin for reporting.
2013-12-16 15:45:10 +00:00
Youngbok Shin 8bee8853ae Evas test textblock: Added a test for a broken range_delete case.
This fixes bad integration by me (Tom) of Youngbok's patch in
42a06f24d8.
2013-12-16 12:05:47 +00:00
Cedric BAIL e131580aba emotion: fix Windows compilation. 2013-12-16 17:03:10 +09:00
Cedric BAIL fce52b1031 emotion: revert to fast sed to use the right eina log domain. 2013-12-16 15:25:36 +09:00
discomfitor d45eb7a9cf bugfix: eldbus code generator struct members named "proxy" should not be passed to eina_value_free.
come on.
2013-12-15 00:08:50 -05:00
Carsten Haitzler 7c38520f50 edje_edit - fix mem leak of src strbuf on print status
though utterly minor - it's still a leak. fix CID 1039263
2013-12-15 11:40:16 +09:00
Carsten Haitzler ee8bfeb458 edje - edje_edit - don't access collection after it is freed
should fix CID 1137855
2013-12-15 11:34:43 +09:00
Carsten Haitzler 6d5058ee1c emotion - webcam - don't access after free and ensure it is not in list
this should fix CID 1137853 and CID 1137854
2013-12-15 11:31:28 +09:00
Carsten Haitzler 5dfe3789f2 evas - fb engine - fix mem leak if ioctl fails on fb mode
this fixes CID 1137852
2013-12-15 11:25:56 +09:00
Carsten Haitzler f1fa8de149 ecore-file - fix mem leak in ecore_file_app_exe_get() on restart
this actually fixes the issue. coverity did point it out but i fixed
it incorrectly. since it was still there in the scan i now fixed it
properly. fixes CID 1039279
2013-12-15 11:18:38 +09:00
Carsten Haitzler d3caca21e5 evas - software-x11 - fill in unused struct members to avoid uninitialized
this shoudl fix CID 1039548 (missed other memmbers before) and if
valgrind ever sees this now it won't complain either.
2013-12-15 11:12:47 +09:00
discomfitor 1fa7d3070b bugfix: make eldbus generated code not crash on every single generated event
this is pretty depressing to find after it's been in git for over a year
2013-12-14 19:54:35 -05:00
Vorobiov Vitalii 0640b7f341 edje: adding Alias API into edje_edit module
Summary:
This commit will add some API for working with aliases.
There are four functions will be added:
1. edje_edit_group_aliases_get - this function will return the list of aliases of certain group.
2. edje_edit_group_is_alias - this function will check if the given group name is actually an alias.
3. edje_edit_group_aliased_get - return the main real group that is being aliased.
4. edje_edit_group_alias_add - add new alias name.

Also the function "edje_edit_group_del" was modified because of wrong behaviour.
Now if the given group is alias, it will successfully delete it,
but if the given group is main group, it will also delete all it's aliases.

This commit also modify EDJ file by adding new field for detecting if the group is alias or not.

Reviewers: cedric, seoz, raster

Reviewed By: raster

CC: reutskiy.v.v, cedric

Differential Revision: https://phab.enlightenment.org/D376
2013-12-14 18:40:26 +09:00
Carsten Haitzler 3a47fe5fa8 evas common - uninitialized use warning remove 2013-12-14 18:28:56 +09:00
Vorobiov Vitalii ae2be0c2d3 edje: Fixing little misbehavior of edje_edit_state_rel_to_set
Summary:
After making part relative to the whole interface (by giving NULL parameter)
it was returning EINA_FALSE (not successfull).

Reviewers: seoz, cedric, raster

Reviewed By: raster

CC: reutskiy.v.v, cedric

Differential Revision: https://phab.enlightenment.org/D379
2013-12-14 18:26:30 +09:00
Tom Hacohen 7141c1dbb2 Evas textblock: Fixed deletion of ranges ending with visual formats.
This is a regression introduced in:
3f3ad67616
2013-12-13 14:44:16 +00:00
Youngbok Shin 42a06f24d8 Evas textblock: Added more range_delete tests.
These tests check for a regression with deletion of ranges ending with
visual formats.
Thanks to Youngbok Shin for sending me the tests.
2013-12-13 14:44:16 +00:00
Carsten Haitzler f8b5dcf126 ecore_file - finding exe path - if HOME is not set a leak could happen
this fixes CID 1039279
2013-12-13 21:26:05 +09:00
Carsten Haitzler e4b029da0b eina - eina_file - fix leak of fd is fd is 0
this should fix CID 1039181
2013-12-13 21:26:05 +09:00
Carsten Haitzler 5d6e30fae0 fix fd leak in emotion webcam where fd of value 0 never closed
fixes CID 1039175
2013-12-13 21:26:05 +09:00
Carsten Haitzler c6119802d1 edje - lib - remove useless memset as later memcpy overwrites
this removes a useless memset that does nothing usefule as a later
memcpy (not far down from it) will overwrite it anyway.
2013-12-13 21:26:05 +09:00
Carsten Haitzler 83615efe6a ethumbd - fix possible out of bounds access to work table
this should fix CID 1039314 in case an unsused table slot cannot be
found. this should actualyl never happen because table expands/allocs
zero out new entires so they are "unused".
2013-12-13 21:26:05 +09:00
Carsten Haitzler abb780bf5f edje - epp - fix possible array access by negative
this should fix CID 1039357
2013-12-13 21:26:05 +09:00
Carsten Haitzler 4bcfee0ef3 ecore - utils - makekeys - fix uniitialized arrays
potential problem due to stak being filled or not. this fixes possible
problems CID 1039547 and CID 1039546
2013-12-13 21:26:05 +09:00
Carsten Haitzler 611714649b evas - silence coverity in code
fixes CID 1039549 and CID 1039548 - though it isn't a bug, but means
it should not come back in coverity.
2013-12-13 21:26:05 +09:00
Carsten Haitzler f745ac2591 eeze - fix uninitialised sigation struct content
should fix CID 1039552
2013-12-13 21:26:05 +09:00
Carsten Haitzler e8c8f0b876 edje_decc - fix possible use of uninitialized string
this should fix CID 1039553
2013-12-13 21:26:05 +09:00
Carsten Haitzler 75fbf9e03a ethumb - ensure buf is nul terminated
this SHOULD deal with CID 1039577  and CID 1039576
2013-12-13 21:26:05 +09:00
Carsten Haitzler a99bc89331 evas - common - remove useless new as next call allocs if NULL 2013-12-13 21:26:05 +09:00
Carsten Haitzler 8cdef1831c ecore-con - fix possible unterminated buffers
this should fix CID 1039725 and CID 1039724
2013-12-13 21:26:05 +09:00
Youngbok Shin f374815a3e [Edje] Update anchor and item tags when text is deleted by _edje_entry_imf_event_delete_surrounding_cb.
Summary:
Anchor and item tags should be updated when text is changed.
In _edje_entry_imf_event_delete_surrounding_cb function,
the text is changed by "evas_textblock_cursor_range_delete" API
and there was no update about anchor and item tags.

It can result that the tags hang in the air after deleting.

Reviewers: tasn, woohyun, seoz, jihoon

Reviewed By: tasn

CC: cedric

Differential Revision: https://phab.enlightenment.org/D368
2013-12-13 12:04:50 +00:00
Jihoon Kim 236c9a1520 ibusimmodule: support preedit style
This patch will support to display the style of preedit such as underline, reverse.
2013-12-13 20:17:19 +09:00
Cedric BAIL ca2f9571ab emotion: make webcam initialization lazy and non blocking.
This should fix T648.
2013-12-13 12:44:19 +09:00
Cedric BAIL 96c1d15ac0 emotion: fix potential memory leak when webcam register fail. 2013-12-13 12:22:06 +09:00
Cedric BAIL f6c4513da4 emotion: use emotion log domain instead of eina one. 2013-12-13 11:30:46 +09:00
Cedric BAIL d55164c5a2 emotion: lower warning on webcam access error to information (Not critical anyway). 2013-12-13 11:30:46 +09:00
Carsten Haitzler 675309d9d9 ecore_con - dns.c - re-fix coverty double-free. coverity was and is right.
fixes CID 1039909 again (it's back after rebase). it is an actual bug.
2013-12-13 09:41:23 +09:00
discomfitor 0f46b8d7ec fix ecore-x shadow warning 2013-12-12 09:31:08 -05:00
discomfitor 5a549c8e97 rebase dns.c from upstream 2013-12-12 09:29:02 -05:00
Carsten Haitzler 8f876cfe72 evas - fix gif loader drop of image data sometimes (image dump/flush)
stable release - cherry-pick me!

this fixses some still gifs going missing.
2013-12-12 18:42:13 +09:00
Carsten Haitzler 6991785df9 embryo - embryo_cc - argv parsing MIGHT leave str buf not nul terminated
should fix CID 1039726
2013-12-11 22:50:34 +09:00
Carsten Haitzler 6a75806e54 evas - evas gl - fix realloc failure case to handle it properly
patched shader string realloc failure not handled right - could leak
patched string and p.
2013-12-11 22:44:42 +09:00
Carsten Haitzler f3d1db0fba evas - evas_gl - fix shader patch to not free static strings
parsing problem with opengl_strtok() which would free the previous
token "p", but in some cases it would be a const string. this should
fix CID 1039653
2013-12-11 22:40:15 +09:00
Carsten Haitzler f0ba71314e eet data encode - dont free data if its not separately allocated
in one case data is not separately allocated but is part of the
Eet_Variant_Unknow struct where it is allocated as extra space on the
end of the data blob. in this case don't free it, otherwise do (pass
in true) as before. this should fix CID 1039728
2013-12-11 20:44:51 +09:00
Carsten Haitzler 6a054930ff ecore - ecore systemd module - unused var warning - remove unused var 2013-12-11 20:21:32 +09:00
Carsten Haitzler 1dc9f1fece emotion - generic module - re-order code to make coverty happy
this fixes CID 1039884 which isn't a real problem as the callback del
never dereferences the data pointer - just uses it as a value, but
this is really to ensure that it doesn't come back if the code were to
change.
2013-12-11 19:54:15 +09:00
Carsten Haitzler 98293fadb1 evas - font dir - remove from hash before free/del
this addresses CID 1039889 but was otherwise harmless
2013-12-11 19:49:36 +09:00
Carsten Haitzler efdeb257b4 ethumb - client lib - fix access of async item in idler after free
this fixes CID 1039892
2013-12-11 19:42:07 +09:00
Carsten Haitzler 4d7edf623b ephysics - fix real access-after-free issue on delete of constraint
this fixes CID 1039895
2013-12-11 19:38:46 +09:00
Carsten Haitzler 1c267deb8f ecore-con - dns.c - fix double free
this fixes CID 1039909
2013-12-11 19:32:54 +09:00
Carsten Haitzler b0e7df47b5 edje - edje_pick - fix coverty access-after-unref issue
fixes CID 1039916
2013-12-11 19:24:42 +09:00
Carsten Haitzler 0b641196c6 edje - edje_cc - fix coverty issue of not exiting loop for box items name
this shoul fix CID 1039918
2013-12-11 19:13:16 +09:00
Carsten Haitzler 5a9184b323 evas - textblock - fix dbg_info_get to avoid leak if root is NULL
fixes CID 1040007
2013-12-11 19:00:15 +09:00
Carsten Haitzler a42407c7b3 evas - cserve2 - fix uninitialized member "image_id".
fixes CID 1042303.
2013-12-11 18:47:39 +09:00
Carsten Haitzler 97a491dd90 evas - gl - ifdef out unused var with non-gles build 2013-12-11 18:26:45 +09:00
Carsten Haitzler 24c6424670 evas - gl - use snprintf for safety (never likely anyway, so code was fine) 2013-12-11 18:25:29 +09:00
Carsten Haitzler cd208fbeef emotion - test - exit if calloc fails
spotted this while looking at coverty issue. likely analysis tools
will complain.
2013-12-11 18:22:59 +09:00
Carsten Haitzler f779c49c89 edje - edje_cc - try and make coverty ignore the leak (invalid)
hope that this does not reappear in future if changes happen in src.
CID 1132627
2013-12-11 18:20:13 +09:00
Carsten Haitzler 22da09105d evas gif loader - address animated always being true
this addresses CID 1135790 and removes useless checks.
2013-12-11 18:10:15 +09:00
Cedric BAIL 3392f08f59 autotools: fix complain about using subdirs without the right option. 2013-12-11 13:46:01 +09:00
Carsten Haitzler 9a3294d1cb gif loader - handle theoretical NULL loader_data case 2013-12-11 09:23:09 +09:00
Jean-Philippe Andre a1c3fef538 Evas tests: Add invalid markup test
Commit 0cb048f9b6 fixed a crash in Textblock where
a couple "key=val" had an empty value ("key=").
2013-12-10 20:57:19 +09:00
Sebastian Dransfeld 50569a69c9 ecore_x: ensure positive malloc size
size_ret is used later as an argument for malloc, so it should be
positive. In addition this should ensure that
ecore_x_window_porp_property_get returns a positive value and is true if
we malloc data.

Hopefully also fixes CID 1135636
2013-12-10 09:10:54 +01:00
Carsten Haitzler 3047ec4d91 evas - fix gif loader cpu overuse - used too much cpu to decode anims
stable release - cherry-pick me!

the evas gif loader used way too much cpu to decode animated gifs
because in the rewrite that made it correct, it did not store the
current gif file handle and state, thus each frame it would have to
decode all frames before that one before finally decoding the final
one. that means to decode frame 200, it decoded frame 1, 2, 3, 4 etc.
all the way up to 199 THEN decoded 200 on top, so decode cost became
progressively more then further through the animation you were.

this fixes that by storing state and file handle and allowing you to
iterate through.
2013-12-10 16:38:23 +09:00
Sebastian Dransfeld 4a24b84185 ecore_x: remove double free
We first free'd the data in the else, then at the end.

Now we free old_data just before return, and at the end.

Fixes CID 1135637
2013-12-10 08:30:23 +01:00
Carsten Haitzler b3d69254b6 ecore-evas - disable comp syncing by default (can be turned on though still) 2013-12-10 14:02:27 +09:00
Jean-Philippe Andre 0cb048f9b6 Evas textblock: Fix crash with empty markups values
Markup parsing will segv if a value string is empty,
as in "<style=>". Sure, this is invalid, but hey, it could
definitely be used from an app or even by a user writing
his own markups :)

The internal doc says this function expects an item to be
of the form "key=val" but there are no checks beyond the
presence of "=" in the string before calling it.
2013-12-10 12:05:04 +09:00
Rafael Antognolli 15b5497dfa ecore_imf/wayland: Only call hide_input_panel on im_context_hide().
There's no need to call it on text_input_leave too, otherwise this would
be called twice, the one from text_input_leave possibly being called
after the focus was regain already by a text input, causing the bug
described in T237.

This fixes T237.
2013-12-09 14:25:40 -02:00
Daniel Juyung Seo e163b3eef5 ecore_evas: added missing documentation for ecore_evas_manual_render_set/get(). 2013-12-10 00:58:28 +09:00
Tom Hacohen b5262de237 Evas textblock: Slightly improve paragraph items freeing.
Use the EINA_LIST_FREE macro instead of a safe loop and a list free.
This is faster and cleaner.
2013-12-09 13:33:46 +00:00
Rafael Antognolli cb3fcca0e7 ecore_evas/wayland: Update withdrawn property, and inform state_changed. 2013-12-09 08:26:24 -02:00
Carsten Haitzler 82841fefe3 fix seb "fix" commit that causes lots of segvs.
this fixes 04e0a6d95e which introduced
copy & paste segv's by properly terminating the right buffer.
2013-12-09 18:39:07 +09:00
Jean-Philippe Andre b10dcb5c23 Evas/cserve2: Fix crash during shutdown
If an image failed to load, and cserve2 returned an error message,
then the File_Entry was freed, but not removed from the hash.
Solution: remove entry from the hash, let the callback free the data.
2013-12-09 17:48:32 +09:00
Jean-Philippe Andre ce166ec223 Evas: Fix crash in GL engine(s) during preload cancel
In my config, running terminology with the GL engine and under
cserve2, some image could not be loaded. The tex argument
in evas_gl_preload_target_[un]register was NULL, leading to
an immediate crash.
2013-12-09 17:28:02 +09:00
Chris Michael 13caf63420 Fix opaque windows becoming transparent after hide() then show().
This fixes Phab #T611. Previously, windows which were opaque would
become transparent after being hidden and then shown. We fix that by a
call to ecore_wl_window_alpha_set when the window gets shown. This
patch also brings the wayland_egl hide code more inline with the shm
hide code by testing if the surface does not match the existing one.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-12-09 07:35:16 +00:00
Daniel Zaoui 1ae7a4f5e2 Ecore: add DnD abort from source
This can be used to cancel a DnD drag operation in the middle.
2013-12-09 09:11:27 +02:00
Carsten Haitzler 0e902ffffe ecore evas - add animator update syncing to only render on animator ticks
this adds a ifdefable feature to sync rendering only to animator
slots. this should reduce over-render of more frames than a user can
see when updates are triggered by things like mouse movements (which
may come in many times faster than the framerate). this is an
experiment to see if this helps smoothness and load. it also has
problems in e grabs x while rendering - this is now fixed in e18
alreadey, but it is just a config you can turn off.
2013-12-09 14:48:07 +09:00
Carsten Haitzler cc1ff31276 ecore loop + animator - add call to get if an animator cb has run this iter
this adds a simple call and infra to get if an animator has run this
iteration. it's simple and not really useful other than internally to
efl.
2013-12-09 14:48:07 +09:00
Cedric Bail de7b7f381c build: fix installing in DESTDIR for packaging and buildbot.
This should fix T628 .
2013-12-09 10:57:12 +09:00
Cedric Bail 52f98559a9 efl: remove uuid from all libtool files.
This change is needed for windows as this library is statically linked into
evil, but libtool doesn't get it.
2013-12-08 11:50:54 +09:00
Sebastian Dransfeld 752d627a93 ecore_x: Fix buffer overrun
Use strncpy to prevent buffer overrun on buf, and '\0' terminate.

Fixes CID 1039584
2013-12-07 21:11:34 +01:00
Sebastian Dransfeld 8b72bd6e6d ecore_x: Fix bug in ecore_x_region_invert
As bounds is a pointer, bounds + num will always be postive, so this is
an eternal loop. In addition, XFixesInvertRegion only accepts one
region, so num must be 1.

Fixes CID 1039469
2013-12-07 21:11:34 +01:00
Sebastian Dransfeld c8b8738612 ecore_x: Remove NULL check
to get here, old_data != NULL.

Fixes CID 1039648 and 1039649
2013-12-07 21:11:34 +01:00
Sebastian Dransfeld 1905fd4858 ecore_x: Use free, not XFree
Data returned from ecore_x_window_prop_property_get are malloced, so use
free, not XFree. Which also is consistent, as free was used on other
occasions.
2013-12-07 21:11:34 +01:00
Sebastian Dransfeld f4c71fba21 ecore_x: supported isn't an optional argument
if supported is NULL, this function isn't of any use.

Fixes CID 1039430
2013-12-07 21:11:34 +01:00
Sebastian Dransfeld 31d0a2d71c ecore_x: Only use att if call succeeds.
XGetWindowAttributes isn't guaranteed to succeed.

Fixes CID 1039692
2013-12-07 21:11:34 +01:00
Sebastian Dransfeld 6b1438af05 ecore_x: Only do memset if len < 20
If len is 20, n is 0, and nothing to memset.

Fixes CID 1039311
2013-12-07 21:11:34 +01:00
Sebastian Dransfeld aca33ef3d9 ecore_x: always free data and return value
if we are the selected parser, we are responsible for free'ing data and
returning a selection value.
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld f22f861f61 ecore_x: Check if we have data
data could be NULL and size == 0, so check for this.

Fixes CID 1039264
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld 04e0a6d95e ecore_x: '\0' terminate converted text
This makes ecore_x text converter behave like elm text converter.

Fixes CID 1039310
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld 50feb1f8da ecore_x: Use eina_inlist
ecore_x_selection implemented it's own single linked list. Use
eina_inlist instead.
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld d09ceaf4c1 ecore_x: Only send XdndEnter when we have types
If ecore_x_window_prop_property_get fails, we have no types to drop so
don't send XdndEnter.

Fixes CID 1039693
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld 31fde249d4 ecore_x: Also check for !prop here
We check if prop is NULL after first property check, do it here too.

Fixes CID 1039429
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld 6f56406f59 eldbus: Check return value of eina_value_pget
If eina_value_pget returns FALSE, we shouldn't continue.

Fixes CID 1039685
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld 2b9710431e eldbus: use alloca to allocate local mem
Since we free the allocated mem some lines down, we can use alloca. This
also fixes CID 1039179
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld 831d17a8e8 eldbus: unref msg on error
If we return here, the msg isn't sent, so unref it.

Fixes CID 1039178
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld c5caea03e3 eldbus: on error unref msg
This is done on all other errors, EINA_SAFETY macros ain't no silver
bullet.

Fixes CID 1039177
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld f950e7990f eldbus: free allocated mem on error
Fixes CID 1039177
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld 494e75eb0e eldbus: print error when fwrite fails
Return value of fwrite should be checked.

Fixes 1039715
2013-12-07 21:11:33 +01:00
Sebastian Dransfeld 1d1feea572 eldbus: Check return value of _type_size
_type_size could return 0, which would fail in the modulo call next.
Check for 0, and return.

Fixes CID 1039436
2013-12-07 21:11:32 +01:00
Sebastian Dransfeld 63f824c659 eldbus: create object when needed
We allocate the strbuf at the beginning of the function, but do several
return checks after this which does not free the strbuf before return,
and we don't use the strbuf.

So create the strbuf object after checks, just before we need it.

Fixes CID 1039287
2013-12-07 21:11:32 +01:00
Sebastian Dransfeld 08978ddb56 eina: Set it to NULL before next iteration
it might have been free'd by the user, so set it to NULL before next
iteration. This is an attempt to fix CID 1039913 and 1039914.

We don't use the pointer value, only the pointer, so the error is wrong.
Could flag the error in coverity, but if this fixes it, we wont see the
error in other situations.
2013-12-07 21:11:32 +01:00
ChunEon Park 3c58b3ebeb Revert "evas/render - make sure render pre in proxy rendering."
This reverts commit b113f555e0.

found side effect... revert this code until fix them.
2013-12-08 03:14:14 +09:00
ChunEon Park b113f555e0 evas/render - make sure render pre in proxy rendering.
if the some of children are the mapped object in source object tree as well as the the mappped object is invisible,
then they wont be render_pre() called.

this make sure those render_pre() in proxy rendering.
2013-12-08 02:40:35 +09:00
Carsten Haitzler abb06c111b evas - silence coverty (false positive leak)
the hash can't leak where coverty thinks... because the hash find can
never work ... because the hash is empty.
2013-12-06 09:07:44 +09:00
Vostokov Sergey 6a5e72d37b evas - Clip mark performance improvement
stable release - cherry-pick me!

We propose a patch that reduces graph traversal work in
evas_object_child_map_across_mark(). It fixes a few particular
slowdowns around Tizen applications, including 0.6 seconds slowdown.

evas_object_child_map_across_mark() does not seem to need to
recursively call itself on the same object many times. Yet we have
noticed that in some scenarios it repeatedly traverses the same
subtrees of objects over and over again, whenever there is more than
one way of reaching these subtrees. In the production issue mentioned
above, certain elm_object_part_content_set() call results in millions
of recursive calls of evas_object_child_map_across_mark(), taking
~0.6sec total.

We propose to allocate a hash table during top-level call to store all
objects visited, and return from sub-calls instantly whenever we are
called over an object we already visited.
2013-12-05 21:08:35 +09:00
Chris Michael 1ac5a89957 Add code to deal with min, max, step, aspect, and base sizes.
Properly fix efl wayland elm window resize problem.

This adds support for min, max, step, aspect, and base size properties
when resizing a canvas under EFL Wayland.

This Also Properly fixes raster's report for EFL Wayland elm windows not
resizing properly. Previously, when resizing an elm window in wayland,
a portion of the window would draw outside the frame.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-12-05 11:52:37 +00:00
Chris Michael 8f21dfe06b Set engine aspect function pointer
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-12-05 11:52:37 +00:00
Chris Michael a36b1641d9 Add common function prototype for setting ecore_evas aspect ratio
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-12-05 11:52:37 +00:00
Sebastian Dransfeld 4413b3a311 efreet: propagate scan error to caller
Current code ignored return from recursive calls, so if cache_add failed
during recursion, the parent call would still succeed.
2013-12-05 12:15:07 +01:00
Carsten Haitzler 9c3682b746 evas - fix overdraw + too many rects problem found in some expedite tests
stable release - cherry-pick me!

there way a problem with software rendering - it rendered some areas
more than once per frame due to overlapping rectangles. it also had
more rectangles to cover the same update area that it should have had.
this fixes this.
2013-12-05 20:04:26 +09:00
Carsten Haitzler 931d02378b efreet - fix recusrion checks need to pop as well as push.
stable release - cherry-pick me!

this fixes a lack of popping the efret recursion stack handler. this
wasn't done in 1.8 and is a bug.
2013-12-05 20:04:25 +09:00
Cedric Bail 2e9f96cc24 eina: this is actually a better way of improving Eina_Hash performance.
This reduce the size of the rbtree part dedicated to the hash key match,
but reuse only bit that weren't matched by the bucket.
2013-12-05 16:32:02 +09:00
Jihoon Kim 3dfc3dcd2c ximmodule: fix issue the cursor of preedit shows the in front of preedit string
Before fixing this issue, the cursor of preedit appears the in front of preedit string.
The cursor of preedit string will appear in the proper position.
2013-12-05 16:06:39 +09:00
Jihoon Kim 0eb5cfaa30 ximimmodule: remove useless code in preedit_string_get
'cursor_pos' variable will be set in the below code, so 'cursor_pos = 0' is useless.
2013-12-05 16:00:39 +09:00
Chris Michael ae7fd6fac0 Fix raster bug report about elm window resize issue (content drawing
outside the window).

Be sure that the EEs requested geometry gets updated in our
common_resize function After min/max have been taken into account.

Elm is using ecore_evas_request_geometry_get in it's resize_job code
(Why...I have no clue lol. Does not seem like a good thing to check).

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-12-04 11:32:45 +00:00
Chris Michael 231790c7cb Update the engine resize edge before we call ecore_wl_window_resize
Ecore_wl_window_resize essentially tells the shell to start the resize
process. We should have the evas engine info's resize_edge updated
Before we start that process so that Evas knows where the resize is
occuring from

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-12-04 11:32:45 +00:00
Carsten Haitzler f6f28bf75a efreet - protect efreetd from recursing too far to save overhead and mem
an errant path made its way into my efreet cache. this had a
side-effect of causing efreetd to scan my entire $HOME recursively
to monitor everything. while the original cause was $HOME getting in,
we shouldn't have efreetd sit and consume scan all of $HOME when this
is far from a normal situation. the recursive scanning is there ot
handle some minimal levels of subdirs in app directories, but not an
entire filesystem, so this mitigates the effects of errant cache data
by limiting the amount of recursion allows for icon dirs and desktop
dirs to 8 and 3 levels respectively.
2013-12-04 20:25:57 +09:00
Daniel Juyung Seo 998c543ae2 ecore ecore_glib.c: fixed documentation about glib integration always configure option.
--enable-glib-integration-always was changed to --with-glib=always in efl 1.8.
2013-12-04 19:45:17 +09:00
Cedric Bail ff845b0a7c eina: improve cmp function of eina_hash string related hash.
For strings, we already know the length, so let's just not call the
heavy strcmp if the length is not already the same. Get some easy
speedup here.
2013-12-04 19:05:03 +09:00
Cedric Bail 41c28c3deb eina: fuzze test the eina_hash_string_superfast to. 2013-12-04 19:04:24 +09:00
Cedric Bail 029087d004 eina: ignore benchmark binary. 2013-12-04 18:33:05 +09:00
Cedric Bail df909605c5 eina: increase hash matching inside of Eina_Hash.
This is the correct implementation of the idea developped in Lucas De Marchi's blog :
http://www.politreco.com/2013/09/optimizing-hash-table-with-kmod-as-testbed/

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. It does increase memory foot
print, but as much as the previous way of doing it.
2013-12-04 18:33:05 +09:00
Cedric Bail 3a15c5bbb3 Revert "eina: work around current strange behavior seen in eina_cow."
This reverts commit e4107b2936.
2013-12-04 18:33:05 +09:00
Cedric Bail 4f161f0c8d Revert "eina: more work around to limit problem."
This reverts commit c5db264e0a.
2013-12-04 18:33:05 +09:00
Cedric Bail 3c7185e880 Revert "eina: check if the complete hash match before checking if the key match during children walk."
This reverts commit 295babadb1.

The implementation of that said optimization is actually wrong.
2013-12-04 18:33:04 +09:00
Cedric Bail 517f339fd0 eina: add fuzzy test of eina_hash. 2013-12-04 18:33:04 +09:00
Cedric Bail 885222f22d evas: fix loader to properly define _XOPEN_SOURCE for Solaris. 2013-12-04 18:33:04 +09:00
Sebastian Dransfeld 70474a4bc5 efreet: Create stack at start of recursion
No need to check for NULL stack, we know where we start our recursive
scan, so create the stack there.

Also fixes CID1132751 and CID1132752
2013-12-04 09:12:31 +01:00
Sebastian Dransfeld 8bc17db6fa efreet: Create stack at start of recursion
No need to check for NULL stack, we know where we start our recursive
scan, so create the stack there.
2013-12-04 09:12:31 +01:00
Cedric Bail c5db264e0a eina: more work around to limit problem. 2013-12-04 16:31:49 +09:00
Cedric Bail e4107b2936 eina: work around current strange behavior seen in eina_cow.
This is not perfect, it will just limit the propagation of the problem
for some time. Yes, it does hide it under the carpet, but that's better
than having a crash. Problem seems to be in Eina_Hash, but is really
difficult to reproduce and fix for the moment.
2013-12-04 15:36:17 +09:00
Cedric Bail d31a85bb51 eina: add fuzzy testing of the red black tree. 2013-12-04 15:20:17 +09:00
ChunEon Park a7c51c4d39 evas/event - fix the inccorect event hit area.
cedriccccccccccccccccccccccccccc!!!!!!!!!!!!!!!!!!
2013-12-04 01:04:21 +09:00
Cedric Bail f90803aa2f evas: bugfix in evas_render of not maintaining changed flags on object correctly.
This bug is particularly visible in EFM video preview ( T 539 ). The problem is
that the logic for changed has evolved over time. At the beginning Evas canvas
was flat and could be handle in an array. It was then not using the changed flag
that much. This day, we are living with a tree and we need to propagate the
changed flag to the parent, so that when we walk them we only need to walk the
active objects and don't spend our time on branch that are completely static.

Sadly things did collide here. We remove all object that have been rendered
from the pending_objects array. That does include any smart object that was
processed even if one of the child was not. Once any of the child of that not
processed object is marked changed, it will be propagated up to the first
parent that is changed. As the parent of that one are marked as not changed
when evas_render walk the tree, he is blocked really early in the process and
never get a chance to detect that the child of a not changed object did change
and tada !

The fix is to add all the parent of all the object that are in the pending_objects
array back into the pending_objects list. So they will always be marked as changed.
Another alternative to this logic would have been to change pending_change to
filter out those and keep them around. I choose the first solution as I think it
will be more robust to catch all the parent in all case.
2013-12-03 16:43:58 +09:00
Cedric Bail 7cac8bceef gitignore: ignore new async test. 2013-12-03 16:43:58 +09:00
Jihoon Kim 8fe2ec9d4b ximmodule: check whether pointer is NULL before accessing in xim_preedit_callback_set
ecore_imf_context_data_get () can return NULL, so it should be checked before using the result value.

This fixes CID 1135273
2013-12-03 13:32:15 +09:00
Rafael Antognolli 615d5ab634 ecore_evas/wayland: Add a function to cleanup the frame callback.
This callback must be manually destroyed and removed on
ecore_evas_hide(), because it won't be delivered anymore after the
surface is destroyed. If the callback still exists, the engine will find
it and avoid doing a new redraw until it is finally called.

Maybe the correct thing to do is to keep this callback in the
Ecore_Wl_Window struct, and have some functions to set/unset it, so it
gets destroyed when the window is hidden. Or when the surface is
destroyed.
2013-12-02 17:54:29 -02:00
Rafael Antognolli 77a4654470 ecore_evas/wayland_egl: Unset the surface on window hide.
We must unset it, so the Evas engine knows that it has to do all the
setup to destroy the EGL surfaces associated with it. And in the case of
an ecore_evas_show, recreate everything again.
2013-12-02 17:52:00 -02:00
Rafael Antognolli ff5533b4e1 ecore_evas/wayland: Implement ecore_evas_withdrawn_set.
Just call ecore_evas_show/hide inside the function.
2013-12-02 17:51:55 -02:00
Rafael Antognolli 5966a730cd evas/wayland_shm: Don't use a global var to store the sent buffer.
When an Ecore_Evas is hidden, it will destroy the buffer swapper. When
it's shown again, it will try to attach a new buffer, that can be same
buffer. If that global var is still pointing to the old buffer, it can
match to it again and avoid sending a new buffer. So, just put this sent
buffer var in the buffer swapper, and it will get set to NULL when the
swapper is destroyed and created again.

This should fix an intermitent problem of ecore_evas_show() not always
working after an ecore_evas_hide() on the wayland_shm engine.
2013-12-02 13:24:56 -02:00
Carsten Haitzler 48d3253b45 NEON vectorization: added use of COLSAME define in map routine
Reviewers: raster

Reviewed By: raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D341
2013-12-02 16:33:34 +09:00
Daniel Juyung Seo 5b21fa7169 Revert "fix smart sma by allowing more recursion"
This reverts commit 1319733cae.

Let's revert this patch and lower the recursion number.
As we released efl 1.8, let's find the root causes of the problem and fix them.
I already told this revert to raster so I am not mean :)
2013-12-02 16:02:23 +09:00
Otavio Pontes afd8a238d1 Adding the cubic-bezier curve to edje transitions
Summary: Adding an option to use a cubic-bezier curve in edje transitions.

Reviewers: Sachiel, cedric, raster

Reviewed By: raster

CC: raster

Differential Revision: https://phab.enlightenment.org/D319
2013-12-02 15:02:40 +09:00
Carsten Haitzler 0b605c5daa Eldbus: added function for getting bus unique name
Summary:
Hello guys,

We are now working on a accessibility support for elementary (ATSPI2) and we need following function to correctly register application.

Reviewers: cedric, raster, lucasdemarchi

Reviewed By: raster

Differential Revision: https://phab.enlightenment.org/D327
2013-12-02 14:57:07 +09:00
Vyacheslav Reutskiy 40d4acd77e edje_edit: Add getters and setters for fixed param
Reviewers: cedric, seoz, raster

Reviewed By: raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D339
2013-12-02 14:54:28 +09:00
Daniel Juyung Seo e2467724da ecore ecore_x_e: check 0 and -1 for ecore_x_window_prop_card32_get() return value which mean fail.
- ecore_x_window_prop_card32_get() returns:
  -1 if the property was not successfully fetched.
  0 if the property exists but has no elements.
2013-12-02 12:46:18 +09:00
Jihoon Kim 49511730d7 fix unchecked return value of stat in ecore_file_mv
stat() function may fail and return an error code

This fixes CID 1039697
2013-12-02 09:40:48 +09:00
Cedric Bail 069a2b027f evil: use the right ifdef. 2013-12-01 20:56:52 +09:00
Carsten Haitzler 0f21e4cfa7 eina - fix set-but-unused warning in eina_cow when valgrind off 2013-12-01 13:52:53 +09:00
Carsten Haitzler 2512eaf157 evas event freezing is "wrong" for core events - turn it off
this turns off event freezing for SOME event types for eveas canvas
events (was was intended to begin with). this fixes T577
2013-12-01 13:26:04 +09:00
Carsten Haitzler 970bcc64d8 evas - pre/post render events are for canvas not object
the eo event naming was wrong for pre/post render event callbacks.
they are for the canvas as a whole, not per object
2013-12-01 12:50:45 +09:00
Carsten Haitzler c12ac143c6 fix freetype header includes to be correct where ft 2.5.1 breaks builds
this should fix T591
2013-12-01 12:16:28 +09:00
Boris Faure f45618d15b fix eina_cow issues. Closes T581, T527 2013-11-30 15:41:08 +01:00
Oleksandr Shcherbina 1cad4c2afe ecore/ecore_file: NULL-check for input parameter
Add check by NULL for input parameter 'path' in method ecore_file_mkpath

Reviewers: seoz, Hermet

CC: cedric

Differential Revision: https://phab.enlightenment.org/D349
2013-11-30 13:50:17 +09:00
Sebastian Dransfeld 3ebebbca1a eina: formatting 2013-11-29 22:20:50 +01:00
Sebastian Dransfeld b47e7651aa efreet: add async menu test 2013-11-29 22:20:50 +01:00
Sebastian Dransfeld 575f466a10 efreet: improve locking
Do find and ref inside lock, so no one can ref-- after we find desktop
2013-11-29 22:20:50 +01:00
Rafael Antognolli cc4aedaaee ecore/wayland: Use touch_focus for touch_based events.
Also call the mouse related events with BTN_LEFT instead of 0, otherwise
the correct button won't be assigned to the event (button 1).
2013-11-29 18:05:42 -02:00
Rafael Antognolli a14ee372e0 ecore/wayland: Send a mouse up event when the implicit grab starts.
The previous workaround used to send a mouse up event to the
application, using the pointer enter callback to determine when an
implicit grab has finished. This was "simulating" a mouse up event when
the surface move or resize finished.

However, this doesn't work for touch-based move. The pointer enter isn't
emitted, because the wl_touch interface doesn't have the concept of a
pointer.

Changing this code to make it more similar to what Weston's toytoolkit
does, the mouse up event is sent as soon as the move or resize grab
starts. After that, the compositor takes care of the move/resize almost
entirely.

Should fix T468.
2013-11-29 18:05:19 -02:00
Rafael Antognolli 2c95c5ee1d ecore/wayland: Get the touch up event position from the down_info.
down_info is a struct that stores some information about the current
pressed touch events. It should be used for that specific touch point,
instead of the generic input info, when sending a mouse_up event.
2013-11-29 18:05:06 -02:00
Rafael Antognolli b92fc57c5a ecore/wayland: Remove list of touch points from input structure.
We already have the "Ecore_Wl_Mouse_Down_Info" list, that contains this
information.
2013-11-29 18:05:06 -02:00
José Roberto de Souza 64687356b0 eldbus: Fix crash caused when the object of an monitored proxy is deleted
This happen because proxy was already freed and we try print some information
about the proxy in error message.

This fix: https://phab.enlightenment.org/T543
2013-11-29 17:21:14 -02:00
José Roberto de Souza b25fd77827 Revert "workaround for T543"
This reverts commit b663b5b8c7.
2013-11-29 16:39:10 -02:00
Stanislav Vorobiov 9e3b778acb evas - fix gl egl textrue from pixmap support y invert query extension
Instead of hardcoding yinvert=1 we should query for
EGL_NOK_texture_from_pixmap extension and if it's present
use EGL_Y_INVERTED_NOK value
2013-11-29 19:09:17 +09:00
Jean-Philippe Andre 62093d99d4 evas/cserve2: Fix interrupt on select in edje_cc
Summary:
Block SIGCHLD during select().
This fixes a bug with edje_cc when EVAS_CSERVE2=1: Fixes T464.

select() used to return prematurately with EINTR because the
app received some unexpected signals. In particular SIGCHLD
is received when a child terminates, but this is not a reason
to cancel the image load.

In theory, all blocked signals in pselect() should be pending
until pselect returns, so any SIGCHLD should still trigger
the app's signal handler.

Reviewers: cedric

CC: raster, cedric

Maniphest Tasks: T464

Differential Revision: https://phab.enlightenment.org/D357
2013-11-29 15:47:57 +09:00
Cedric Bail 4f33c81bdb evas: roundup the step size of an array to fit in one page of memory.
This make an array stay in 4K instead of 20K before. It should reduce a little
bit our peak memory usage without slowing down things to much.
2013-11-29 15:33:51 +09:00
Cedric Bail aefd608453 eina: fix rounding logic to avoid making the array to short.
I have no idea how the previous formula was supposed to work at all, but
this one is the same as our alignof code to make sure we do allocate to
the really nearest size and don't do over allocation. Additionnaly it works.
2013-11-29 15:33:51 +09:00
Jihoon Kim 50e74f02d4 ecore_evas: fix wrong check in _ecore_evas_buffer_msg_send
'if (!child_ee)' implies that "child_ee" is equal to NULL, but
child_ee is used in the nest of if statement.

This fixes CID 1039431
2013-11-29 13:53:47 +09:00
Jihoon Kim d9e7615a52 xim immodule: fix dereference before NULL check issue in client_window_set
The variable 'info' can be NULL, therefore it should be checked before accessing.

This fixes CID 1039640
2013-11-29 11:35:44 +09:00
Jihoon Kim bab7612bb5 ibusimmodule: check whether pointer is NULL or not before accessing.
The pointer variable str can be NULL, therefore we should check whether it is NULL or not
before accessing.

This fixes CID 1132621, 1132622, 1132623
2013-11-29 11:23:29 +09:00
ChunEon Park c61ce59162 evas - code refactoring.
put the frequently used compare prior to the other.
2013-11-28 21:24:11 +09:00
Carsten Haitzler 523d8607d1 fix eina_array_remove to actually realloc down in size to remove bloat
eina_array_remove() didnt ever realloc down unless we went to 0
members. this wasn't very good as you'd expect the array to be reduced
in size if enough items were removed. not only that the old code was
stupid and ALWAYS malloc()ed a new array of the exact same size and
copied items over in the most complex way possible, then freed the old
one. this would have added overhead wherever used (evas_render) that
should not have been there.

this is based on the idea in a patch from
Viacheslav Lvov <v.lvov@samsung.com>, but this is a re-do of it
entirely, reducing the codebase massively even compared to the patch
and making it much simpler to read, maintain, actually reduce memory
and cut overhead.
2013-11-28 18:03:54 +09:00
Cedric Bail 403e97ecb0 ecore_ipc: prevent a double free.
According to clang static analyzer it is possible to find a path where
buf and svr->buf are pointing to the same array, better be safe than sorry.
Arguably this code could be more readable if it was using Eina_Binbuf.
2013-11-28 17:17:09 +09:00
Cedric Bail d2c5a37f37 evas: this value is never read after that point, simplify logic.
This has been spotted by clang static analyzer.
2013-11-28 17:04:32 +09:00
Cedric Bail a969459b0b evas: simplify logic for better readability.
This also should solve some complain from clang static analyzer.
2013-11-28 17:03:32 +09:00
Cedric Bail 18632bc8c7 edje: make sure there is an initial value to avoid garbage out.
Detected by clang static analyzer.
2013-11-28 16:55:24 +09:00
Cedric Bail 8e7921dffa ecore_con: remove unecessary code. 2013-11-28 16:36:21 +09:00
Cedric Bail 5e3d934302 edje: correctly setup PATH and install Edje file as they are needed by examples.
This will fix T61.
2013-11-28 16:33:32 +09:00
ChunEon Park 7acdb30f95 evas/line - fix the line position set problem.
If the line goes to the 0, 0 then it won't be updated. Now it's fixed.
2013-11-28 14:03:05 +09:00
Daniel Juyung Seo a5c98947ae ecore ecore_x_e: initialize local variable to avoid having wrong value.
Thanks to devilhorns!
2013-11-27 21:43:06 +09:00
Carsten Haitzler c69cf48746 recursive monitoring and scanning fix for icons and desktop files
this fixes T580 ... or SHOULD fix it. there is recursion detection
code now and it properly follows symlinks and dirs. it also properly
updates the file monitor tree for both icons and desktops and it only
monitors dirs, not files (as a dir picks up changes to child data).
tested and it seems not to recurse into self-referencing symlinks
(once it detects the loop) and detects changes nicely in all my tests.
2013-11-27 19:50:24 +09:00
Cedric Bail 1e70d703b3 ecore_con: fix unitialized use of buffer from strncpy.
Fix CID 1039725.
2013-11-27 14:30:03 +09:00
Cedric Bail d0837ee5f5 ecore_con: fix non initialized use of buf with strncpy.
This fix CID 1039723.
2013-11-27 14:27:00 +09:00
Cedric Bail 403098fdb2 evas: add missing define for some target. 2013-11-27 13:51:40 +09:00
Cedric Bail f45a75f925 Revert "Revert "evas: allow fuzziness on the texture format returned by GL.""
This reverts commit 87385b05c3 that is necessary for desktop target.
2013-11-27 13:51:40 +09:00
Jean-Philippe Andre 7aa577c774 evas/cserve2: Update image loaders list
evas_image_load.c's list was updated to match the generic
loaders, in 38dd405712.

The list used by cserve should be the same. Actually, there
should be a common function instead of code duplication here.
2013-11-27 13:22:25 +09:00
Jihoon Kim 3d2b7f2ec1 edje_entry: fix out-ouf-bounds issue in _edje_entry_imf_event_preedit_changed_cb
The maximum index of tagname is 7, and preedit_type_size is equal to 8.
Checking "attr->preedit_type <= preedit_type_size" implies that the value of "attr->preedit_type" may be up to 8

This patch fixes CID 1039308
2013-11-27 09:31:26 +09:00
Daniel Juyung Seo 2ebd985b31 evas evas_render: removed unnecessary semicolon from a macro.
This fixes coverity CID 1132631.
2013-11-27 02:02:41 +09:00
Daniel Juyung Seo 0e0f79c6f2 ecore ibus_imcontext: print the value of cursor_pos only when cursor_pos
is not null.

This fixes coverity CID 1132624.
2013-11-27 01:52:21 +09:00
Daniel Juyung Seo 9314b15add ecore scim_imcontext: do not check null for ic. it was already checked
by EINA_SAFETY_ON_NULL_RETURN.

This fixes coverity CID 1132628.
2013-11-27 01:48:58 +09:00
Daniel Juyung Seo 106960af59 emotion emotion_test: free allocated data when the dependent object is
deleted.

This fixes coverity CID 1099709.
2013-11-27 01:48:37 +09:00
Rafael Antognolli 662d086837 ecore_evas/wayland: Update comments inside rotation code. 2013-11-26 14:10:15 -02:00
Rafael Antognolli dbb9cf9765 ecore_evas/wayland: Fix non-resize rotation.
Fix phab T392.

Notice that it should reopen T359, as it wasn't really fixed, but a
rotation with resize was being used when a non-resized rotation was
requested. The cause of the "protruding surfaces" is likely the fact
that Elementary is setting the opaque regions manually, instead of
leaving it to Ecore_Evas. This must be fixed either inside Elementary
itself, or adding the "surface extents" (shadow/non-visible surface
parts) info to Ecore_Evas too.
2013-11-26 14:01:35 -02:00
Rafael Antognolli 87385b05c3 Revert "evas: allow fuzziness on the texture format returned by GL."
This reverts commit 2b5b3438e8.

Breaks gl engines when using GLES + EGL.
2013-11-26 11:49:13 -02:00
Tom Hacohen 05d2701474 Eo: Fixed eo_manual_free to always return a value.
I wonder how come this wasn't triggered in 64bit and only in 32.
2013-11-26 13:08:55 +00:00
Tom Hacohen 1b51bc256b Evas tests: Add canvas free with ref tests.
This should check test for the issue fixed in:
bb4a19b5ad
8bba92fbca
2013-11-26 12:27:31 +00:00
Tom Hacohen 8bba92fbca Evas object: Set manual_free to false once obj is detached from canvas.
This means unref will really free the object instead of just let it
linger in memory once the object is unrefed.
This is also correct because once detached from the canvas, Evas has
nothing to do with the object and it shouldn't need the manual free
anymore.
2013-11-26 12:16:22 +00:00