From 4dc8a449f3e61b8bafa427e0420038b0775f63a8 Mon Sep 17 00:00:00 2001 From: bulia byak Date: Fri, 20 Oct 2006 08:33:17 +0000 Subject: more correct double opacity fix: do not multiply by opacity if item->render_opacity, i.e. the opacity was already applied during render (bzr r1815) --- src/display/nr-arena-item.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/display/nr-arena-item.cpp b/src/display/nr-arena-item.cpp index a46ad0cc0..12312c251 100644 --- a/src/display/nr-arena-item.cpp +++ b/src/display/nr-arena-item.cpp @@ -509,10 +509,9 @@ nr_arena_item_invoke_render (NRArenaItem *item, NRRectL const *area, /* This pointer wouldn't be valid outside this block, so clear it */ item->background_pb = NULL; } else { - if (item->filter && !outline) { + if (item->render_opacity) { // opacity was already rendered in, just copy to dpb here nr_blit_pixblock_pixblock(dpb, &ipb); - } else { - /* Opacity only */ + } else { // copy while multiplying by opacity nr_blit_pixblock_pixblock_alpha (dpb, &ipb, item->opacity); } } -- cgit v1.2.3