path: root/src/modules (follow)
AgeCommit message (Collapse)Author
31 hoursEvas engines: remove last bits of evas_cserve2Vincent Torri
Reviewers: raster Reviewed By: raster Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2 daysevas - software x11 - remove unused xlib+egl code in sw x11Carsten Haitzler (Rasterman)
this code is unused and just wastest space, compile time etc.
2 daysEvas: remove old xcb code in software_x11 codeVincent Torri
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:
2021-09-26emotion - properly track subtitle mute state and init emotion obj earlyCarsten Haitzler (Rasterman)
fix setting things on an emotion obj early bu initting engine early and also track spu mute flags to set on pipe later @fix
2021-09-06evas - gl x11 - dont crearte eglimage multiple times in same frameCarsten Haitzler (Rasterman)
if we're rendering in multiple scissor regions/updates - dont create the eglimage multiple times for each bind+pass - only once for that frame.
2021-09-05evas - gl - ensure surfaces are 0 when destroyedCarsten Haitzler (Rasterman)
easier on debugging when we know that we destroyed them already
2021-07-28evas gl: bind texture with external target for mapShinwoo Kim
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:
2021-07-05evas - tga - remove errant printfCarsten Haitzler (Rasterman)
2021-06-26ecore evas - fix leake and possile seg i added in cnp paste fixCarsten Haitzler (Rasterman)
previous commit fixed a bug but added this possible one. this fixes that.
2021-06-26ecore evas - cnp - look for exact mime matches before conversionsCarsten Haitzler (Rasterman)
fixes chrome -> efl copy and paste. @fix
2021-06-18evas_vg_load_svg: Fix color parsingJunsuChoi
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="" 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:
2021-05-24gif loader: show the current frame image if getting row is failedTaehyub Kim
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:
2021-05-18egl: silence warning of deprecated feature test.Alastair Poole
2021-05-03evas gl - dont swap with damages if we are debugging partialCarsten Haitzler (Rasterman)
2021-05-03evas - image loader - tiff - switch types to avoid deprecated warningsCarsten Haitzler (Rasterman)
2021-05-03evas - saver - tiff - change types to remove deprecated warningsCarsten Haitzler (Rasterman)
2021-04-18fix modules/ecore_evas/engines/wayland compilationJérémy Zurcher
broken after introduction of EMODAPI by a33138 Differential Revision:
2021-04-17modules: Rename EAPI macro to MODAPI for modulesFelipe Magno de Almeida
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 <> Co-authored-by: Ricardo Campos <> Co-authored-by: Lucas Cavalcante de Sousa <> 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:
2021-04-16evas gl - drm - native bind - handle null eglimage create on bindCarsten Haitzler (Rasterman)
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
2021-04-09improve heif loader: * efl coding style * faster head callback * faster ↵Vincent Torri
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:
2021-04-04evas - gl - optimize dither shader - use integer vecs and go to 2x2Carsten Haitzler (Rasterman)
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.
2021-04-02evas gl - add env var to disable dither because some gl's are brokenCarsten Haitzler (Rasterman)
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
2021-03-31Evas avif loader: fix segfault when the avif loader tries to load a non avif ↵Vincent Torri
image Test Plan: entice is not crashing Reviewers: raster Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2021-03-28Avif image loader: add another check to verify that libavif has been built ↵Vincent Torri
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:
2021-03-28ecore evas ews - deprecate/removeCarsten Haitzler (Rasterman)
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
2021-03-26evas - gl add export for getting dmabuf formats and modifiersCarsten Haitzler (Rasterman)
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
2021-03-26evas - gl - respect yinvert now as it ... seems to work.Carsten Haitzler (Rasterman)
2021-03-20evas - gl - stop leaking images and never freeing them from cacheCarsten Haitzler (Rasterman)
the subject says it all @fix
2021-03-09evas gl - remove freed gl image from context image listCarsten Haitzler (Rasterman)
fix asan memory mis-access @fix
2021-03-01ecore-evas-wayland: Remove wayland wobbly windows junkChristopher Michael
Never worked properly, is unsupported by upstream wayland, and is just general clutter so let's remove it.
2021-02-13gl: remove memory leak of orient_setShinwoo Kim
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:
2021-02-06Added the heif loaderthierry1970
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:
2021-02-06evas - gl engine - look for extension in the right extension string setCarsten Haitzler (Rasterman)
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
2021-02-01evas - tga loader - ignore origin as it leads to valid tga's not loadingCarsten Haitzler (Rasterman)
2021-01-14evas - let's not set dynamic img hints if extns not thereCarsten Haitzler (Rasterman)
2021-01-14gl: remove invalid read and writeShinwoo Kim
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:
2021-01-06evas webp loader - stop complainig its an invalid fileCarsten Haitzler (Rasterman)
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
2020-12-18evas - avif - fix for 0.8.2 libavif that broke apiCarsten Haitzler (Rasterman)
also require 0.8.2 ... as well - no point trying to support older versions forever and this is still experimental. fixes T8844 @fix
2020-12-07png: handle 9-patch ends with stretchShinwoo Kim
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:
2020-11-30evas - fix build on bigendianCarsten Haitzler (Rasterman)
macro forgot to () a param ... so it broke on bigendian as it has spaces and a | ... fixes T8860
2020-11-27evas gl - experiment with dithered gl renderingCarsten Haitzler (Rasterman)
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
2020-11-25ui transit: improve zoom effect smoothness by subpixel rendering.Hermet Park
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:
2020-11-20evas gl: make 9 patch workShinwoo Kim
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:
2020-11-10ecore evas - wayland clients - dont set invalid min/max widthCarsten Haitzler (Rasterman)
max width < 0 is wrong.. dont set it. min width < 1 for efl is stupid/invalid and dont set it either, so clamp these and now things work right in corner cases. @fix
2020-11-02vg_load_svg: Prevent memory overflow for tag_nameJunsuChoi
Summary: When copying tag_name, if length of referenced string is longer than general case, it is not used as tag_name. Test Plan: N/A Reviewers: Hermet, smohanty Reviewed By: Hermet Subscribers: kimcinoo, herb, cedric, #committers, #reviewers Tags: #efl Differential Revision:
2020-10-14vg_load_svg: Implement ClipPath featureJunsuChoi
Summary: Supports case of using style attribute for defined <clipPath> and node. In SVG, <clipPath> can be used as a "clipPath" attribute or a style "clip-path". If there is a clip-path node, save it as a composition node and use composition method(matte_alpha) to compose it. Below node types support clip-path. <circle> <ellipse> <g> <path> <polygon> <polyline> <rect> Test Plan: Please see attached svg files {F4026162} Reviewers: Hermet, smohanty Reviewed By: Hermet Subscribers: #reviewers, #committers, cedric, herb, kimcinoo Tags: #efl Differential Revision:
2020-10-13Ecore_Win32: add the API ecore_win32_window_maximized_set()Vincent Torri
Summary: ecore_evas win32 engine is updated to support it. This fixes the "maximized/unmaximized" elm "windows states" test. Test Plan: elm_test Reviewers: raster, jptiz, felipealmeida Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2020-10-13Ecore_Evas win32: fix activate() functionVincent Torri
Summary: activating the function needs un-iconified first Test Plan: elm windows status tests Reviewers: raster, jptiz, felipealmeida Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2020-10-12evas svg: Fix build errorJunsuChoi
Fix build error from 9e14a57020
2020-10-12evas svg: avoid unnecessary memory clear.Hermet Park