summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>2020-05-26 12:16:09 +0100
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>2020-05-26 12:19:17 +0100
commit1cca032b55b373a29318d48827d3f1aac2114347 (patch)
treebb753f469e1ffff684b59e06cc7fb48bf54a03a1
parentf917a389b24d341bfed6f8f8ff9340a3a655518a (diff)
downloadefl-1cca032b55b373a29318d48827d3f1aac2114347.tar.gz
evas - csd and wl csd - fix alpha zeroing to avoid framespace junk
i noticed some junk in framespace... this happesn when solid objects are outside the normal window content area and their solid areas are not clipped to this inner frame area thus those areas are not "zeroed out" next render. @fix
-rw-r--r--src/lib/evas/canvas/evas_render.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/lib/evas/canvas/evas_render.c b/src/lib/evas/canvas/evas_render.c
index 139e292ad3..f8abfd5700 100644
--- a/src/lib/evas/canvas/evas_render.c
+++ b/src/lib/evas/canvas/evas_render.c
@@ -2722,6 +2722,15 @@ _evas_render_cutout_add(Evas_Public_Data *evas, void *context,
obj->cur->cache.clip.w, obj->cur->cache.clip.h);
}
else return;
+ if (!_is_obj_in_framespace(obj, evas))
+ {
+ int fw, fh;
+
+ fw = evas->viewport.w - evas->framespace.w;
+ fh = evas->viewport.h - evas->framespace.h;
+ RECTS_CLIP_TO_RECT(cox, coy, cow, coh,
+ 0, 0, fw, fh);
+ }
if (cutout_margin)
{
cox += cutout_margin->l;