From 1a5d6572e9a699699fba3e9eb5ebbcb18f04994c Mon Sep 17 00:00:00 2001 From: ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> Date: Sun, 9 Oct 2022 17:42:55 +0200 Subject: Fix issue #510: image transparency is not properly processed. --- src/drivers/Cairo/Fl_Cairo_Graphics_Driver.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/drivers/Cairo/Fl_Cairo_Graphics_Driver.cxx b/src/drivers/Cairo/Fl_Cairo_Graphics_Driver.cxx index ebe7c515a..48c6120c6 100644 --- a/src/drivers/Cairo/Fl_Cairo_Graphics_Driver.cxx +++ b/src/drivers/Cairo/Fl_Cairo_Graphics_Driver.cxx @@ -778,7 +778,8 @@ void Fl_Cairo_Graphics_Driver::draw_cached_pattern_(Fl_Image *img, cairo_pattern cairo_matrix_init_scale(&matrix, double(img->data_w())/Ws, double(img->data_h())/Hs); cairo_matrix_translate(&matrix, -Xs + offset, -Ys + offset); cairo_pattern_set_matrix(pat, &matrix); - cairo_mask(cairo_, pat); + if (img->d() >= 1) cairo_paint(cairo_); + else cairo_mask(cairo_, pat); cairo_restore(cairo_); surface_needs_commit(); } -- cgit v1.2.3