| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Values different from numbers and percentages should be ignored
and the default values should be applied (zeros).
And set the min and max of the offset value to be 0, 1.
Also, this patch make that the offset is not input in the reverse order.
Test Plan:
Test SVG Image
```
<svg viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" >
<linearGradient id="grad" x1="0" y1="0" x2="1" y2="1">
<stop offset="10%" stop-color="white"/>
<stop offset="0.2" stop-color="red"/>
<stop offset="30% k" stop-color="blue"/>
<stop offset="40%" stop-color="yellow"/>
<stop offset="0.5m" stop-color="red"/>
<stop offset="0.6 " stop-color="green"/>
<stop offset="70%m" stop-color="black"/>
<stop offset="80%" stop-color="white"/>
</linearGradient>
<rect x="20" y="20" width="160" height="160" fill="url(#grad)"/>
</svg>
```
Result
{F4792365}
Reviewers: Hermet, raster, kimcinoo
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12318
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
"none" is the default value of dasharray and can actually be used.
Currently using "none" causes a segfault. This patch prevents it.
Test Plan:
SVG image
```
<svg viewBox="0 0 30 10" xmlns="http://www.w3.org/2000/svg">
<line x1="0" y1="3" x2="30" y2="3" stroke="black" stroke-dasharray="none" />
</svg>
```
Reviewers: Hermet, raster, kimcinoo
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12317
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
After finding no attributes but spaces, attrsLength could be negative.
This will cause a segfault in parser functions.
So, change the position of attrs_length to prevent this.
Test Plan:
Example SVG
```
<?xml version="1.0" encoding="UTF-8"?>
<svg><g ></g></svg>
```
Reviewers: Hermet, raster, kimcinoo
Reviewed By: Hermet
Subscribers: #reviewers, cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12314
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: sz must be less than 20 to append 'carriage return'
Test Plan:
Example SVG
```
<?xml version="1.0" encoding="UTF-8"?>
<svg><aaaaaaaaaaaaaaaaaaaa > </aaaaaaaaaaaaaaaaaaaa></svg>
```
@fix
Reviewers: Hermet, raster, kimcinoo
Reviewed By: raster
Subscribers: cedric, #committers, #reviewers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12313
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Test Plan: save as avif file
Reviewers: raster
Reviewed By: raster
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12310
|
|
|
|
|
|
|
|
|
|
|
|
| |
this has all sorts of nasty side effects by rewinding time far too
much and thus causing timers to expire early and so on - these
timestamps are MEANT to be like a frame vsync time... they thus should
be like normally 0.02sec or so in the past or less... (0.008s on
average) so at 0.1 sec complain and ignore the old timestamp. weston
does this and sends us timestmaps 0.33sec in the past ... and its not
nice.
@fix
|
|
|
|
|
|
| |
i see no good reason to not allow these loaders to run in threads.
they are isolated and i don't see a reason for the libs called to not
be threadsafe.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: raster
Reviewed By: raster
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12302
|
|
|
|
| |
this code is unused and just wastest space, compile time etc.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: this backend code was for selecting XCB over Xlib. Now XCB is removed, this code is useless
Reviewers: raster
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12299
|
|
|
|
|
|
|
| |
fix setting things on an emotion obj early bu initting engine early
and also track spu mute flags to set on pipe later
@fix
|
|
|
|
|
|
| |
if we're rendering in multiple scissor regions/updates - dont create
the eglimage multiple times for each bind+pass - only once for that
frame.
|
|
|
|
| |
easier on debugging when we know that we destroyed them already
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
egl images created using tbm surface for native surface set use
GL_TEXTURE_EXTERNA_OES as texture target, so we should bind to
this target when rendering. Or there is a GL_INVALID_OPERATION
error on glBindTexture in function _orig_shader_array_flush.
Thia patch follows logic of following commit;
7db0e20 evas/gl: Bind texture with external target for tbm surface
Reviewers: Hermet, raster, jsuya, herb
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12286
|
| |
|
|
|
|
|
| |
previous commit fixed a bug but added this possible one. this fixes
that.
|
|
|
|
|
|
| |
fixes chrome -> efl copy and paste.
@fix
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Remove unnecessary point movement in rgb(255, 255, 255) case in svg parsing.
In svg parsing, move the pointer by 'rgb(' before calling
_color_parser() in the rgb(255, 255, 255) case.
In function, string pointer moved unnecessary, so parsing is incorrect.
Therefore, remove unnecessary point movement.
Test Plan:
svg sample code
```
<svg xmlns:svg="http://www.w3.org/2000/svg" viewBox="0 0 300 300">
<path d="M 0 0 h 200 v 200 z" style="fill:rgb(255, 155, 55);"/>
</svg>
```
before
{F4504779}
after
{F4504778}
Reviewers: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12284
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Change-Id: I17c79f89550e9a758a532babd55826b3c7ad2810
To show gif animation smoothly, we keep the current frame even if getting line is failed.
Currently, the frame image will be freed if getting gif line is failed and this makes the frame drop.
Reviewers: Hermet, kimcinoo, raster
Reviewed By: raster
Subscribers: raster, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12277
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
broken after introduction of EMODAPI by a33138
Differential Revision: https://phab.enlightenment.org/D1222
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Patch from a series of patches to rename EAPI symbols to specific
library DSOs.
= The Rationale =
EAPI was designed to be able to pass
`__attribute__ ((visibility ("default")))` for symbols with
GCC, which would mean that even if -fvisibility=hidden was used
when compiling the library, the needed symbols would get exported.
MSVC __almost__ works like GCC (or mingw) in which you can
declare everything as export and it will just work (slower, but
it will work). But there's a caveat: global variables will not
work the same way for MSVC, but works for mingw and GCC.
For global variables (as opposed to functions), MSVC requires
correct DSO visibility for MSVC: instead of declaring a symbol as
export for everything, you need to declare it as import when
importing from another DSO and export when defining it locally.
With current EAPI definitions, we get the following example
working in mingw and MSVC (observe it doesn't define any global
variables as exported symbols).
Example 1:
dll1:
```
EAPI void foo(void);
EAPI void bar()
{
foo();
}
```
dll2:
```
EAPI void foo()
{
printf ("foo\n");
}
```
This works fine with API defined as __declspec(dllexport) in both
cases and for gcc defining as
`__atttribute__((visibility("default")))`.
However, the following:
Example 2:
dll1:
```
EAPI extern int foo;
EAPI void foobar(void);
EAPI void bar()
{
foo = 5;
foobar();
}
```
dll2:
```
EAPI int foo = 0;
EAPI void foobar()
{
printf ("foo %d\n", foo);
}
```
This will work on mingw but will not work for MSVC. And that's why
EAPI is the only solution that worked for MSVC.
Co-authored-by: João Paulo Taylor Ienczak Zanette <jpaulotiz@gmail.com>
Co-authored-by: Ricardo Campos <ricardo.campos@expertise.dev>
Co-authored-by: Lucas Cavalcante de Sousa <lucks.sousa@gmail.com>
Reviewers: vtorri, jptiz, woohyun, lucas, SPAM-smith78899
Reviewed By: vtorri, SPAM-smith78899
Subscribers: SPAM-smith78899, raster, SPAM-cabanacatalogs, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12228
|
|
|
|
|
|
|
|
| |
this can happen if dmabuf is invalid (already destroyed) so handle
this so evas knows and falls back to rendering a rect and complains to
stderr so we know
@fix
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
copy of image data
Summary: and minor fix of some values in avif loader
Test Plan: entice still can read heif
Reviewers: raster
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12257
|
|
|
|
|
|
|
|
|
|
| |
a 2x2 matrix visually here is about as good as 4x4. at least in what i
see, but on low end gpu's it can halve the cost. in fact i was watching the
gpu on my old i5-4200u drop down to 340-410mhz (no dithering is 320-360mhz).
i got to 630-660mhz with the original 4x4 code.
the 4x4 is still there ifdefed out. perhaps i can bring it back with a
high-quality dither option, but 2x3 i think is good enough.
|
|
|
|
|
|
|
|
|
|
|
| |
this adds a
EVAS_GL_RENDER_DISABLE_DITHER=1
env var (set it to anything) to disable dithered rendering.p this is
an added cost, but normally not much at all, but it seems some gl
implementations are broken, and they can't generate correct code for
the dither shader, so this disables this if this env var above is set
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
image
Test Plan: entice is not crashing
Reviewers: raster
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12254
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
with an AV1 decoder
Summary: libavif can be built without a AV1 decoder. Check this in the image loader
Test Plan: entice
Reviewers: raster
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12252
|
|
|
|
|
|
|
|
|
| |
it's broken. it doesnt render anything. input is broken. it isn't in
use so it doesnt justify fixing. no one has complained it's brokne
thus proof of it not in use, so proof that it's not needed, so do the
right thing and nuke it to save work
@feat
|
|
|
|
|
|
|
|
| |
we need this to do formats and modifiers properly... and this is what
broke on the rpi4 - it started using interesting formats etc. ... new
feature to support a bug fix in e
@feat
|
| |
|
|
|
|
|
|
| |
the subject says it all
@fix
|
|
|
|
|
|
| |
fix asan memory mis-access
@fix
|
|
|
|
|
| |
Never worked properly, is unsupported by upstream wayland, and is just
general clutter so let's remove it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The tex->pt->references is descreased by
evas_gl_common_texture_free -> pt_unref
if tex->references is 0
And tex->pt->texture is removed by
evas_gl_common_texture_free -> pt_unref -> glDeleteTextures
if tex->pt->references is 0
The evas_gl_common_texture_free decreases tex->references only
if tex->references is bigger than 0. There is no chance to decrease
tex->pt->references at this point.
So if orient_set increases both references of tex and tex->pt, then
the tex->pt->reference is not decreased till tex->references is 0.
So do not increase tex->pt->references in eng_orient_set.
Reviewers: raster, cedric, Hermet
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12243
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: that supports images : *.heif, *hiec and *.avif I have disabled *.avif images, there is already a loader.
Reviewers: stefan_schmidt, raster
Subscribers: raster, vtorri, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12135
|
|
|
|
|
|
|
| |
this fixes slow operation on what seems to be a minority of instances
that dont advertise the extension in both egl and gl strings
@fix
|
|
|
|
| |
@fix
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
There could be 2 evas_gl_image referencing 1 evas_gl_texture.
evas_object_image_orient_set could make this case.
In this case, when one evas_gl_image is removed(free), the evas_gl_texture
is not removed because its reference count.
After this point, if the other evas_gl_image is removed without drawing
(see function evas_gl_common_image_draw, line "im->tex->im = im")
then evas_gl_texture is reading invalid adress when it is removed.
Reviewers: Hermet, jsuya, herb, devilhorns
Reviewed By: devilhorns
Subscribers: devilhorns, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12229
|
|
|
|
|
|
|
|
| |
when a file has no extension to guess by.. evas goes back to trying
every loader until one works. this leads to noise. loaders should not
printf/stder or eina log err anything if the file seems to not be valid.
@fix
|
|
|
|
|
|
|
|
| |
also require 0.8.2 ... as well - no point trying to support older
versions forever and this is still experimental.
fixes T8844
@fix
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The strech region has paired information; total and strechable.
Refer to function _strech_region_load retrieving strech region info.
But if 9-patch information line ends with strechable,
png did not push the strechable information.
And it leads to devide by zero.
This patch is adding strechable info to the strech region,
if 9-patch information ends with strechable.
Test Plan:
[Code]
{F4219278}
{F4219280}
[Test]
ECORE_EVAS_ENGINE=opengl_x11 ./evas-image-9patch ./end_with_strech.9.png
Reviewers: Hermet, jsuya, herb, cedric
Reviewed By: Hermet
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12204
|
|
|
|
|
|
|
| |
macro forgot to () a param ... so it broke on bigendian as it has
spaces and a | ...
fixes T8860
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
this adds a dither func (4x4 dither matrix) to experiment with higher
quality rendering in gl - this assumes you have a normal 8bit per
channel buffer for now (99% of people) and will approximate values in
between the 256 steps 8 bits provides by using the dither matrix based
on gl_FragCoord position. it's just a flag in the shader flags for now
so can be turned on/off in code. this definitely makes blurs look much
better... everything else seems basicall the same. let's see how this
goes.
@feat
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
evas image might have a better quaility if scaling/transform is not necessary,
so we have a condition to check if image is axis-aligned transformed or not.
On the other hand sub-pixel(floating point coordinates unit) rendering necessary
if image has an effect such a zooming. This would result in a smoother effect
than integer coodinate system.
We need a more precise condition to confirm this,
so we intrduce "anti-alias" option to decide the condition.
now, anti-aliased objects will have a sub-pixel rendering always.
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12194
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The 9 patch is using image_stretch_region_get, but GL did not override it.
So the 9 patch did not work for GL engine at all.
Test Plan:
Evas_Object*img = evas_object_image_filled_add(evas);
evas_object_image_file_set(img, "test.9.png", 0);
evas_object_show(img);
Reviewers: Hermet, jsuya, herb, cedric
Reviewed By: Hermet
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D12192
|