Bug 20079 - [Qt] Canvas transparency errors
Summary: [Qt] Canvas transparency errors
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit Qt (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Linux
: P2 Normal
Assignee: Nobody
URL: http://annevankesteren.nl/test/html/c...
Depends on:
Reported: 2008-07-17 09:20 PDT by marcoil
Modified: 2008-12-09 04:36 PST (History)
0 users

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description marcoil 2008-07-17 09:20:11 PDT
In the url, the circles should be translucent and they are completely opaque. I'm also getting some background artifacts, like if the background wasn't properly initialized.
Comment 1 Dirk Schulze 2008-09-10 12:15:24 PDT
This problem appears after the canvas clean-up.
In HTMLCanvasElement.cpp a QImage was initialised and filled with fill(0). To make everything a bit more platform-independent, the qt code was droped and replaced by an image-buffer.
And ImageBuffer creates a QPixmap. This pixmap isn't filled or cleared. Thats why you see this strange "background". This happens on every canvas-example where the background isn't set by canvas.fillRect() or something simular.

I tried to fix it by adding px.fill(Qt::transparent); to ImageBuffer::create(). That works for canvas (except of compositing), but brakes many html-pages.
Comment 2 Dirk Schulze 2008-09-10 13:16:25 PDT
talked to Simon Hausmann over IRC and it could be the problem that QPainter is not calling end(). 
QtWebKit seems to work with it like before the changes on Canvas then.
Comment 3 Dirk Schulze 2008-12-09 04:36:54 PST
no longer an issue.