don't try to do these on the framespace clip object. Also, since we
need the evas to get the framespace clip object, just directly use the
framespace values from the canvas, rather than function call to get
those values.
SVN revision: 75989
Subject: [E-devel] [PATCH][RESEND][Evas] WebP image loader
This patch adds a WebP image loader to Evas. No saver,
no animation support for now, just loader. Tested with
the libwebp-0.2.0 only, but should work fine with older
versions.
SVN revision: 75951
Subject: [E-devel] [patch] A function to rotate an evas map with a
quaternion
So this is a patch to rotate an evas map with a quaternion.
You can use this to avoid gimbal lock... for example in the elementary
evas map 3d test, if you put the Rot y angle to 90 then Rot x and Rot
z will do the same rotation...
SVN revision: 75920
Direct Images. Add support for using native image binding. Add support
for setting GL surface capabilities. Fix up some overrides to be in
the proper place (glsym vs evgl).
NB: Yes, it is a bit large of a change during freeze, but there are no
API changes here, and it is well tested. Nothing broken (beyond what
was already broken).
SVN revision: 75826
Lets wait until after the code freeze is over and people apply their
patches, otherwise it'll be hellish.
This reverts commit 75632
SVN revision: 75704
The map cache must be dropped if the content of the surface is rendered again.
The example evas-smart-object.c has a valid test case for this bug.
SVN revision: 75636
Rotating the smart object with map, adding a rectangle as child, and then
rotating it again will expose a bug on mapped smart objects: it's mapped
surface will be reused from cache, instead of flagged as dirty and discarded.
SVN revision: 75635
Fixed bug with 1 char word separators at the start of the
text when going to the start of the word (e.g: =test).
Reported by Thiep Ha. Thanks a lot.
SVN revision: 75595
function, we should do the same for events. This fixes the cursor
position in elm widgets.
NB: I have been running this patch for 2 days and see not bad side
effects in either wayland engines, or X11 engines. Patch from Robert
Bradford @ Intel, slightly modified by myself to avoid the overhead of
another function call.
SVN revision: 75309
adjust the clip size and position if something changed.
NB: Found this during final fullscreen testing where, when fullscreen,
the clip was not getting moved or resized.
SVN revision: 75291
When we create the egl window we should take rotation into
consideration, so account for that. Add an 'edges' variable to the
engine info structure. This is needed so we can implement resizing
windows from the top also. Make sure to use
wl_egl_window_get_attached_size and determine the edge we are resizing
from, so we can calculate the difference in sizes to send to
wl_egl_window_resize.
Add __UNUSED__ to function paramaters where it was missing, and fix
some compiler warnings.
SVN revision: 75215
now here's the rub. from the glibc manual page:
...
int memcmp(const void *s1, const void *s2, size_t n);
DESCRIPTION
The memcmp() function compares the first n bytes (each interpreted as
unsigned char) of the memory areas s1 and s2. It returns an integer
less than, equal to, or greater than zero if s1 is found, respectively,
to be less than, to match, or be greater than s2.
RETURN VALUE
The memcmp() function returns an integer less than, equal to, or
greater than zero if the first n bytes of s1 is found, respectively, to
be less than, to match, or be greater than the first n bytes of s2.
...
this explicitly says that s1 and s2 have their BYTES compared... and
then returns just some value < 0, 0 or > 0 based on the difference. what
that value is and means is not defined, as long as it is < 0, 0 or > 0.
so the C standard has this to say:
6.3.1.3 Signed and unsigned integers
2. Otherwise, if the new type is unsigned, the value is converted by
repeatedly adding or subtracting one more than the maximum value that
can be represented in the new type until the value is in the range of
the new type.
so a result of -255 (possible) is converted by REPEATEDLY adding the
max size of the new type (255) until within range... so ...
-255 + 255 = 0 ... within range.. BUT FALSE!
so why do we see this now? something changed in memcpy behavior.
before we ONLY saw values of -1, 0 or 1 - nothing else, NOW we see
thins like:
-12288
49152
4096
16384
61440
-53248
so memcpy changed behavior, though within specs of the manual page
anyway, but now the values can be ones that break the simple assignment.
SVN revision: 75159
window at this point, so we cannot use it for comparison. Instead,
check the requested depth. Also fix best_depth_get function to not
return a hard-coded depth if a depth has been set already.
SVN revision: 75082
was using evas' window surface to do its resource creation and it
wans't properly updated when a window is destroyed and recreated.
Also, deleted some whitespaces.
SVN revision: 74771
position. Fix bug when clipping to viewport/framespace. These changes
fix Several buggers on Trac which related to the Wayland Engine(s).
Fix minor bug in evas_render where clipping for framespace would
not take into account the frame height and also move the frame clip to
the values specified in framespace (not viewport).
Fix buggers in evas_object_main which was causing objects (when created using
the wayland engines) to be an incorrect size & position (objects will now
be the same size/position in EFL Wayland as they are in X11).
Fix evas_object_geometry_get to return values based on where they were
moved (in relation to framespace). (These fixes are for the Wayland
Engines and do not affect X11).
Remove nw/nh from evas_object_resize (not needed variables anymore).
SVN revision: 74565