Now evas will in all case do the layout during the prepare stage. It will do that
once and as long as the text didn't change. This does improve by a factor of at
least 2.3 in all expedite test case except the text change that only get a 30%
increase (I expect a drop in performance on non pipe rendering for text change
expedite test only, but this case is not common in real life).
This also fix the issue that show random size glyph when using pipe rendering.
SVN revision: 71220
There is no automatic promotion of unsigned to unsigned long when using va_arg,
which means it is illegal to pass an 'unsigned' value and then use it as an
unsigned long in eina_arg_vset. Doing so yields incorrect results on some
architectures like itanium
Patch by Albin 'Lutin' Tonnerre <albin.tonnerre@gmail.com>
SVN revision: 71196
The eina_value code TYPE_CHAR conversion code assumes that 'char' is a signed
type, which is not true on some platforms like ARM and PPC. We need to
explicitely use signed chars to make sure the value is correct.
Patch by Albin 'Lutin' Tonnerre <albin.tonnerre@gmail.com>
SVN revision: 71195
supports FreeBSD >= 7 these days), so the check for __FreeBSD_version >=
420001 is not necessary anymore (plus it probably never worked, as that
macro is defined in sys/param.h, which is not included prior to the
check).
Patch by Raphael Kubo da Costa
SVN revision: 71172
glyph metrics.
Instead of having to render the glyph to get the width and horizontal
bearing of it, it's possible to get this information from the glyph
metrics (which are available on the glyph slot).
This change now allows Evas to only render the glyph at the rendering
phase, instead of having to render it during layout phase.
SVN revision: 71132
(-fastcomp and -fastdecomp) -fastcomp makes for faster decompressing
AND faster compressing of edj files, -fastdecomp is a bit slower on
compression but also as fast as -fastcomp in decompression. note that
edje files built with these optiosn will not work on older edje
installations, thus they are options.
SVN revision: 71112
in wayland compositors. Added alpha support for wayland_egl. Support
evas output rotation in wayland_egl. Don't move/resize windows in
wayland_egl unless sizes actually change. Included patch from Robert
Bradford <robert.bradford@intel.com> for vertical/horizontal mouse
wheel scrolling.
SVN revision: 71108
This commit also includes patch(s) from Robert Bradford
<robert.bradford@intel.com> for Supporting vertical/horizontal
scrolling, and updates to wayland fixed point for input events.
Fix ecore_wl_input to use new libxkbcommon api.
Add new surface_enter/leave listener for ecore_wl_window.
SVN revision: 71107
This is in preperation of a future change to be able to set errors in
function calls as well, and not just constructors.
Also, I improved the error reporting.
SVN revision: 71000
Currently, this feature is only supported in EGL/GLESv2 environment
with GL_IMG_multisampled_render_to_texture extension supported.
_____________________
from: (sanghee park) sh15.park@samsung.com
Dear all,
I compose this mail to ask reviewal this patch about multisampling on the evasgl.
I want to make multisampling capacity to enhance rendering quality of the evasgl.
But if MSAA is applied always, this have possibility lowering rendering performance,
I separated user's input level to high, mid, low, none.
If you want to test this patch, try to examine rendering qulity on EGL circumstance with multisampling level.
Plaese review it, and any suggestion will be appreciated.
Best Regards,
SangHee
SVN revision: 70992
Subject: [E-devel] [PATCH][EDJE] Patch to remove the alpha from image
header while saving if the alpha is set to 1 but the image is fully
opaque
Attached to the mail is a patch to set the alpha information for an
image header to 0 with alpha present but all the texels being opaque.
Continuing to our discussion, as suggested by many people in the
community it has been implemented at edje_cc level.
Change description:
While compiling the edc file, image data for image files is
scanned to find out whether the alpha value in header is set to 1 and
is not being used in the image.
If this is the case, while writing to eet the alpha is set to 0 to
avoid blending for such images in the graphics pipeline when used by
evas.
SVN revision: 70954
- Cleanup cache2 things on shutdown
- Use Eina_File instead of straight shm_open + mmap when loading things from cserve2
- Do free the mapped images when we don't need them
SVN revision: 70936
As we move back and forth from double to fixed point, we do
have some rounding error. I am trying to limit them at much as
possible by reducing the number of computation in double.
SVN revision: 70905
NOTE: now you can change theme dynamically in elementary apps more reliably.
This doesn't handle the case where the swallow was done in a parent object and
the reswallow should happen in a another group. I don't how to fix that use
case.
don't see yet how to handle that
SVN revision: 70901
For the moment only edje_player use it. This means that when used with
edje_watch, you don't need any more to type any kind of command line
when you are testing value in your theme. As a side effect, this means
that their is a real use case to make edje_cc faster !
SVN revision: 70890
edje_watch call edje_cc and monitor all the source file (edc, font
image, sound). If any of them change, it call edje_cc, update its
watching list and so on. edje_watch as the same command line as
edje_cc.
Still a little bit rought, but it's the beginning of an interesting
experiment.
SVN revision: 70872
Mainly, glDeleteBuffers was being called instead of glDeleteRenderbuffers.
Also, there was an error when checking if surface is valid.
SVN revision: 70870
Hello.
Just 3 small fixes to get our warning count down. The tempget one
should actually save us against wrong reads.
Also a small DSO fix reported and confirmed in IRC.
Please review and apply.
regards
Stefan Schmidt
Submitted-By-Off: Stefan Schmidt<stefan@datenfreihafen.org>
SVN revision: 70759
now seriously...
Introducing Cache Serve 2.
This cache server will initially load images for clients connected to
it. It starts slave processes to load these images, and share the loaded
images through shm with the clients. All the connection done between
clients and the server goes through sockets.
The cserve2 build option is turned on by default, while the old cserve
was disabled, but in order to make clients use it, the environment
variable EVAS_CSERVE2 must be set, and a server must be running.
Clients will try to find the socket on a specified location using the
environment variable EVAS_CSERVE2_SOCKET. If it's not defined, then the
XDG_RUNTIME_DIR path should be used, and finally HOME, TMPDIR and /tmp.
SVN revision: 70699
(Trying it again since this commit broke evas build yesterday.)
Previously, evas_gl_surface_create() didn't actually do
the render buffer attach to the the FBO. It was performed when
the make_current was called for the first time. The issue
was that even though the surface was successfully created with
the given configuration, there was a possibility of make_current
failing with the error message "FBO not complete" because of
the surface configuration.
So, I've added a piece of code that checks the FBO
capabilities beforehand to set up a available surface configurations
so that it doesn't have to fail during make_current for unsupported
surface format.
Also, I've changed the surface config in a way that once the
user calls evas_gl_surface_create(), evas gl sets the config
parameter with configuration that evas_gl is actually using.
SVN revision: 70680
Complete support for keyboard events. Thank You :)
NB: This is a modified patch from what Rob originally sent. This fixes
formatting, uint32_t types, function name, and other such things ;)
SVN revision: 70672
Previously, evas_gl_surface_create() didn't actually do
the render buffer attach to the the FBO. It was performed when
the make_current was called for the first time. The issue
was that even though the surface was successfully created with
the given configuration, there was a possibility of make_current
failing with the error message "FBO not complete" because of
the surface configuration.
So, I've added a piece of code that checks the FBO
capabilities beforehand to set up a available surface configurations
so that it doesn't have to fail during make_current for unsupported
surface format.
Also, I've changed the surface config in a way that once the
user calls evas_gl_surface_create(), evas gl sets the config
parameter with configuration that evas_gl is actually using.
SVN revision: 70617