summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorbulia byak <buliabyak@gmail.com>2006-10-20 08:33:17 +0000
committerbuliabyak <buliabyak@users.sourceforge.net>2006-10-20 08:33:17 +0000
commit4dc8a449f3e61b8bafa427e0420038b0775f63a8 (patch)
treed879c70dc0c888ef142877c5f9b0549b34f1597e /src
parentfix the erroneous double opacity on filtered objects (diff)
downloadinkscape-4dc8a449f3e61b8bafa427e0420038b0775f63a8.tar.gz
inkscape-4dc8a449f3e61b8bafa427e0420038b0775f63a8.zip
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)
Diffstat (limited to 'src')
-rw-r--r--src/display/nr-arena-item.cpp5
1 files changed, 2 insertions, 3 deletions
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);
}
}