summaryrefslogtreecommitdiff
path: root/vcl/unx/gtk3
diff options
context:
space:
mode:
authorIvan Timofeev <timofeev.i.s@gmail.com>2012-08-02 16:06:33 +0400
committerIvan Timofeev <timofeev.i.s@gmail.com>2012-08-02 16:06:33 +0400
commit92e00f2e536ce0458961d329a3c676acc86249e6 (patch)
tree086cfea244cfabb0677557bd9eec40568c33d96e /vcl/unx/gtk3
parentd1a66813a0a4f28af34728efa48a97e4a48a9bf8 (diff)
cairo uses pre-multiplied alpha
Change-Id: I6cf04b10bfdd6c7b16761b2aa2f31c1392c49546
Diffstat (limited to 'vcl/unx/gtk3')
-rw-r--r--vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx6
1 files changed, 3 insertions, 3 deletions
diff --git a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx
index 5e0972ff841b..42984934a9a4 100644
--- a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx
+++ b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx
@@ -972,9 +972,9 @@ void GtkSalGraphics::renderAreaToPix( cairo_t *cr,
for (int x = 0; x < awidth && y < aheight; ++x)
{
double alpha = ((float)cairo_data[x*4 + 3])/255.0;
- src[x*3 + 0] = src[x*3 + 0] * (1.0 - alpha) + cairo_data[x*4+0] * alpha;
- src[x*3 + 1] = src[x*3 + 1] * (1.0 - alpha) + cairo_data[x*4+1] * alpha;
- src[x*3 + 2] = src[x*3 + 2] * (1.0 - alpha) + cairo_data[x*4+2] * alpha;
+ src[x*3 + 0] = src[x*3 + 0] * (1.0 - alpha) + cairo_data[x*4+0];
+ src[x*3 + 1] = src[x*3 + 1] * (1.0 - alpha) + cairo_data[x*4+1];
+ src[x*3 + 2] = src[x*3 + 2] * (1.0 - alpha) + cairo_data[x*4+2];
}
src += nStride;
cairo_data += cairo_stride;