* tests will run locally now, not just from installed files.
* efreet_init_new(NULL) is valid, actually used by efreet_desktop_save()
SVN revision: 82428
efreet used an uncommon PACKAGE_DATA_DIR without the package name
because it used that to populate default variables.
Add another variable for that and make PACKAGE_DATA_DIR more common.
Tests still fails like crazy, and they assume installed data :-(
SVN revision: 82426
Date: Sat, 5 Jan 2013 10:50:19 +0800
Subject: [PATCH] ecore-wayland: Improve opaque setting logic.
1. Update win->region.opaque in ecore_wl_window_update_size, so that
the opaque info is synced with the geometry.
2. Add win->surface checking in ecore_wl_window_buffer_attach
before send any wl_surface related request, it will avoid segfault
in case that calling ecore_wl_window_buffer_attach() before
ecore_wl_window_show().
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 82385
1. Update win->region.opaque in ecore_wl_window_update_size, so that
the opaque info is synced with the geometry.
2. Add win->surface checking in ecore_wl_window_buffer_attach
before send any wl_surface related request, it will avoid segfault
in case that calling ecore_wl_window_buffer_attach() before
ecore_wl_window_show().
SVN revision: 82384
count is type 'int', but used as unsigned it (always > 0), however gcc
can't understand that and is complaining that 'check' could be used
without being initialized... which is false. Make the test != 0 to
silent gcc and make code as correct as before.
SVN revision: 82369
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
When an extra argument didn't match, instead of going to the next signal
handler we were skiping to next extra match argument because we were
calling "continue" inside EINA_INLIST_FOREACH.
Patch by: José Roberto de Souza <zehortigoza@profusion.mobi>
SVN revision: 82351
Fixed queue cache handling to let enqueue and process happen at the same
time, even though this is not our use case yet. This also solves a race
with the assignment of cache variables outside the queue lock and
remembers to free the cache when shutting down.
SVN revision: 82296
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
it is "const char * const *", not "const char **", and it was triggering a warning in our code.
it's just constness and will not trigger an error in our user's code, just an warning that he should fix.
SVN revision: 82278
Subject: [E-devel] 2 steps eina_share_common_del speed up
builtin node is never unlinked even if empty, always is the last of the queue,
so that it can be used to get a pointer to head.
cost: never unlink or promote builtin node.
benefit: no need to hash and search rbtree to unlink an empty node,
only to remove an empty head.
store full hash in Eina_Share_Common_Head, so we only hash once
use 8 lower bits as node hash, use next 8 bits as bucket index.
cost: have to apply 0xFF mask on hash in rbtree callbacks.
benefit: no need to hash when removing an empty head.
SVN revision: 82161
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
This patch introduces fields to event Evas_Event_Mouse_* structures
to hold the event source evas object in case of evas source events
propagation.
SVN revision: 82138
Changes also in this commit:
* fix missing EAPI in symbols used by modules
* removed old libudev and libmount support as agreed by discomfitor/zmike
* replaced __UNUSED__ with EINA_UNUSED
* fixed docs hierarchy
SVN revision: 82100
Hack to fix the connection name leak. The problem is that each signal
handler has a reference to the FDO_BUS connection name and when the
penultimate connection name is released (and therefore its signal
handler), FDO_BUS is released, too.
Check if cn is still in the hash before trying to free it.
Patch by: Ulisses Furquim <ulisses@profusion.mobi>
SVN revision: 82077
va_list may be typedef'ed not only to array and pointer but also to a
plain struct. It could be made to work this way, but it's a lot simpler
a safer to not depend on it. To deal with the array corner case we copy
the va_list from the function arguments to the stack and call the "real"
function passing it.
SVN revision: 82017
it's useful to copy file from one place to another and this will be
used in eio' s implementation.
NOTE: did not use mmap here as mmap faults may be cumbersome to handle
(Eina_File itself does that, but in a nasty way) and the
implementation would be severely different as there is no Eina_File
from FD, and there is no way to inject custom memory/fd into the
Eina_File's fault handling. The performance would not be that
different anyways and the splice() is already in there for systems
with good performance (read: Linux).
SVN revision: 81942
* fix eina_xattr_value_ls() and eina_xattr_value_fd_ls() to not loop
infinitely.
* NULL terminate the retrieved xattr values, at least they'll be
easier to handle in our programs and less error prone.
SVN revision: 81940
- fchmod() was isolated by HAVE_CHMOD, which was always present
before... then fchmod() is also present as no errors were reported
since its introduction.
- fchmod() is POSIX for a while now.
- lstat() is POSIX for a while now.
- setxattr is supported by EFL_CHECK_FUNCS() as is used by eina.
- splice() check added to EFL_CHECK_FUNCS()
SVN revision: 81938
eina_thread_join() is nasty and didn't report errors :-(
I'm using Eina_Error here, but it's global to the application and not
thread-local. Maybe we should make eina_error_get() and
eina_error_set() thread-local storage?
SVN revision: 81936
some functions were being checked but their IFDEF not being handled,
others (getpwnam and getgrnam) were isolated in a code that is now
Windows, then no need to check them as well as these are POSIX.
SVN revision: 81934
NOTE: There is still an issue with text rendering, that
is still 4 times slower and impact all text object (text,
textblock and textgrid).
SVN revision: 81912
Make sure the next signal handler for the connection is always known and
not vanish under us.
Patch by: Ulisses Furquim <ulisses@profusion.mobi>
SVN revision: 81847
Also postpone marking the rendering flag until we know we will have
the draw thread do its work. This way we avoid waiting forever at
evas_render_rendering_wait() when the draw thread is also blocked.
Patch by: Ulisses Furquim <ulisses@profusion.mobi>
SVN revision: 81798
This function was basically never working correctly. Everything was
fixed by simulating the evas_object_image_render() workflow, but
instead of actually draw we just check the pixel transparency.
Bugs fixed:
* fails when image is scaled up (could segv) or down (incorrect values);
* fails when image is moved to negative x,y;
* fails when border was being used.
Now everything is fixed and seems to work properly, except I'm not
handling the map and get_pixels() cases, these are marked with ERR()
so we can fix them if someone needs.
SVN revision: 81410
Whenever we copy an image, making it write-able
(evas_object_image_data_get(o, 1)) or just start painting a pristine
buffer (evas_object_image_size_set(o, w, h)), we must mark the image
as loaded to avoid trying to load it (and failing, marking the whole
thing as EVAS_LOAD_ERROR_GENERIC).
SVN revision: 81409
In ecore_wl_init(), adding wayland display fd with ECORE_FD_WRITE
flag make CPU usage 100%. The proper way to monitor the ECORE_FD_WRITE
is when the wl_display_flush() return value < 0 and errno == EAGAIN.
And if wl_display_flush() return, we remove ECORE_FD_WRITE flag from
the display fd.
Change from v1:
Add idle enterer destroy code into _ecore_wl_shutdown() to avoid
using freed wl_display.
SVN revision: 81360