Commit Graph

1987 Commits

Author SHA1 Message Date
Jean-Philippe Andre 00cf9e2fc5 Evas: Move REND_DBG to evas_render.c
Unlike what the comment claimed, it is not being used anywhere outside
this file.
2015-09-04 15:13:35 +09:00
Jean-Philippe Andre 3e640ab226 evas: Use malloc instead of calloc in context_dup
Since we call memcpy right after, no need for calloc
2015-09-04 15:02:48 +09:00
Jean-Philippe Andre ef0ec6bed3 evas_render: Fix some clipping issues inside proxy
Inside a proxy, clipping information might be wrong since the
source object may be at a different position than within
the proxy. If source_clip is not set, then we need to discard
all clips that are outside the proxy context.

So we just propagate the clip information inside the current
draw context, and even recurse from clipper to clipper to
find the final state of clipping.

Map and proxies and others (who said masks?) should definitely
rely more on the same model.

This code is not a mess. At all. You gotta love evas_render.
2015-09-04 11:11:58 +09:00
Jean-Philippe Andre 4ac9d2af54 evas_render: print out context clip with REND_DBG 2015-09-04 11:11:39 +09:00
Jean-Philippe Andre f654a3b300 evas_render: simplify masking and clipping in general
Use context_dup to inherit from previous contexts in a clean
manner. This removes the need for restoring the previous
clip information.

Plus, this commit removes lines of code so it must be good, right?
2015-09-04 11:11:39 +09:00
Jean-Philippe Andre 3d003b52de evas_render: Cosmetic changes in evas_render_mapped
Use ENFN, ENDT macros to simplify code.
I believe it is more concise and readable like this.
2015-09-04 11:11:39 +09:00
Jean-Philippe Andre 69cbbc2184 evas: Add internal context_dup function
This will simplify some code related to clipping and masking.
2015-09-04 11:11:39 +09:00
Jean-Philippe Andre bcbf7d14e6 evas_render: moar debug (REND_DBG) 2015-09-04 11:11:39 +09:00
Jean-Philippe Andre d69f9e0b84 Evas masking: Fix potential invalid access to mask image
After clip_image_get, the old mask may be replaced by a new one,
and unref'ed, but it is later on set back as the context mask image.
Maybe it's possible that there was 0 reference and the image
got freed in between.

No idea how to test this.

@fix
2015-09-04 11:11:39 +09:00
Daniel Kolesa 35a6bb1666 evas canvas: finish doc conversion 2015-09-03 15:00:06 +01:00
Daniel Kolesa 62d6ab54a4 evas canvas: some doc conversions 2015-09-02 16:21:43 +01:00
Daniel Kolesa 00678aea1b evas_canvas: prepare for doc conversion + partial conversion 2015-09-02 15:13:36 +01:00
Daniel Kolesa 03bbe8a4a7 efl_vg_base: fix wrong @since (was pushed after 1.15) 2015-09-02 14:16:25 +01:00
Daniel Kolesa 791de84f5b efl_vg_base: convert docs 2015-09-02 14:13:15 +01:00
Daniel Kolesa 3752e0aa34 evas object: finish doc conversion 2015-09-02 14:09:04 +01:00
Daniel Kolesa d381b79e95 evas object: more doc conversion 2015-09-02 12:51:15 +01:00
Daniel Kolesa 37a4157bb8 evas object: partial doc conversion 2015-09-02 12:21:59 +01:00
Boris Faure 1df1b23e21 evas:textgrid: correctly check malloc failures 2015-09-01 23:38:43 +02:00
Boris Faure 7a7d3c4022 evas:textgrid: rename text_props to text_props_index 2015-09-01 23:38:43 +02:00
ChunEon Park ea442da9ed evas clip: add warning msg for wrong scenario. 2015-09-01 16:34:17 +09:00
perepelits.m 32c405f8fa [Evas] Counting of tangent space (fix)
Summary: It is counting here, so we can avoid using glsl functions dFdx, dFdy.

Reviewers: cedric, raster, Hermet

Subscribers: Oleksander, cedric, artem.popov

Differential Revision: https://phab.enlightenment.org/D2923
2015-08-31 19:04:27 +09:00
Oleksandr Shcherbina c850cc0d80 evas_canvas3d: Recalculation coordinates for pick object from scene
Summary:
Change recalculation coordinate for pick to depend on size of viewport, not from
scene data.
Due to not correct working pick in case resize view window.
@fix

Reviewers: cedric, Hermet

Reviewed By: Hermet

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2950
2015-08-28 20:32:46 +09:00
Daniel Hirt d6b6a73358 Evas textblock: fix case of own_closer in style_set
Looks like it was assumed that an fnode->orig_format always ends with a
'/' character if the fnode is an own_closer.
The problem is that a paragraph separator ("ps" and "br" - the latter in
legacy newline mode) is also an own_closer, but might not have '/' at the
end, so decrementing the length is wrong.

This fixes T2654. The example markup had "br" read as "b", which led to
a mismatch with the "font_weight=Bold" tag. Coincidentally, "ps" was not
affected as there was no matching "p" in the style.

@fix
2015-08-27 22:59:19 +03:00
Marcel Hollerbach 2eb4f2604d evas_3d: fix defines
Summary:
evas_3d: removed unnessecary defines

Evas_Real was allready defined.

The typedefs of the Eo types can be avoided by fixing the include order

Reviewers: cedric, stefan_schmidt, tasn

Reviewed By: stefan_schmidt, tasn

Subscribers: stefan_schmidt, cedric

Projects: #efl

Maniphest Tasks: T2658

Differential Revision: https://phab.enlightenment.org/D2974
2015-08-24 12:00:57 +02:00
Stefan Schmidt eb6832f62e evas/filter: Remove unused variable
lib/evas/filters/evas_filter_parser.c:861:14: warning: unused variable 'ok' [-Wunused-variable]
2015-08-24 10:15:11 +02:00
Cedric BAIL 05fdfcc76a evas: add logic to duplicate recursively an Efl_VG_Node tree. 2015-08-21 16:40:31 +02:00
Cedric BAIL 126edbb48c evas: allow parent during dup to be an Evas_Object_VG. 2015-08-21 16:40:31 +02:00
Cedric BAIL 7cb92ff35d evas: add support for interpolating Efl_VG_Node tree. 2015-08-21 16:40:31 +02:00
Cedric BAIL d595324a8d evas: add an unique name for each Efl.VG.Base object and make it possible to find it from parent. 2015-08-21 16:40:31 +02:00
Jean-Philippe Andre 2472dfdb24 Evas filters: Fix build for Jenkins gcc_x32
Disable bit32 library if it's not available.
We should probably either ship it or disable it altogether
for the filters. Hmm.
2015-08-21 11:42:30 +09:00
Cedric BAIL 67ef1b11ff evas: properly fix unref of ector renderer.
Async rendering doesn't have a main loop cleanup function. The only one
being called is in the rendering thread. I wrongly assumed in my previous
patch that render_post on an object was called after the async render was
done which is obviously not the case as pointed by Subhransu. This patch
now wait for the async rendering to be done.
2015-08-20 15:39:16 +02:00
Jean-Philippe Andre 50e91e5321 Evas filters: Fix char buffer size
Thanks Coverity.
Fixes CID 1316684
2015-08-20 11:37:53 +09:00
Cedric BAIL 0ee28f12e1 evas: be more pedantic in case of error in Evas_VG_Node. 2015-08-19 20:22:57 +02:00
Daniel Hirt a197aa366b Evas language: fix script run code
For script runs that start with an UNKNOWN character, the whole
run was mistakenly identified as script type UNKNOWN.

Also, refactored code a bit for readability.

Fixes T2670.
@fix
2015-08-19 17:16:42 +03:00
Cedric BAIL f1e3c7f41f evas: no need to get the data if it is not the right type of object. 2015-08-19 16:12:58 +02:00
Cedric BAIL 7c83af2ae3 evas: fix ref/unref of ector renderer to always happen in the main loop. 2015-08-19 16:06:39 +02:00
Subhransu Mohanty ad3ae08b82 evas: delete the ector_renderer when evas_vg_node gets deleted.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-08-19 14:46:26 +02:00
Jean-Philippe Andre 8c8d254fbc Evas filters: Fix proxy buffer size in Lua
In order to do that, avoid creating multiple Buffer instances
when pointing to the same proxy source. This fixes buffer.width
and buffer.height in Lua.
2015-08-18 18:31:39 +09:00
Jean-Philippe Andre 8e9ab6440f Evas filters: Fix massive memleak with async sw render
Oooops, the flag stolen meant that we don't hold any reference on
this buffer anymore, which meant we should not increase the refcount
here!

@fix
2015-08-18 18:31:39 +09:00
Jean-Philippe Andre ea001c3ec1 Evas: Add debug env var EVAS_IMAGE_NO_MMAP
Looking for image buffer memory leaks with Valgrind is impossible
when all images are mmaped. This is intended as a DEBUG environment
variable only.
2015-08-18 18:31:39 +09:00
Jean-Philippe Andre 6124d07336 Evas filters: Fix for Lua 5.3 (with --enable-lua-old)
Tested with LuaJIT, Lua 5.2 and Lua 5.3.

@fix
2015-08-18 18:31:39 +09:00
Daniel Kolesa d737233dd5 evas_image: finish doc conversion 2015-08-14 16:36:21 +01:00
Daniel Kolesa 11101af3bb evas_image: convert more docs 2015-08-14 16:21:51 +01:00
Daniel Kolesa f00013b018 evas_object,evas_image: partial doc conversion 2015-08-14 13:20:17 +01:00
Carsten Haitzler 40fc5a9282 evas render 2 - tiled rouding of updates to keep number regions down
tile to 16x16 (we can cahnge) to keep number of update rects
down/minimal with render2
2015-08-12 20:08:14 +09:00
Carsten Haitzler 9d9e8ffab5 evas - handle case where layer->evas is null - don't crash
there seems to be a corner case where obj->layer->evas is null for an
object. i think during shutdown of a canvas.

@fix
2015-08-12 20:08:14 +09:00
Cedric BAIL 08e888156e evas: force full redraw of snapshot for every frame, every time.
NOTE: it would be nicer to setup a specific context for each snapshot
and walk all the child below. If any of them did change, only trigger the
full redraw in that case (and of course only if a filter with blurr does
use it somewhere).
2015-08-06 11:05:50 +02:00
Cedric BAIL 941d75d24d evas: move make update to be outside of the reused code for rendering sub objects. 2015-08-05 15:12:33 +02:00
Cedric BAIL 46082eb13d evas: make sure that the context is only relevant to the surface we are currently manipulating. 2015-08-05 15:12:33 +02:00
Cedric BAIL c5c94ce027 evas: we now need to force mark the object as changed. 2015-08-05 15:12:33 +02:00