Make translucent windows working properly with OpenVG.
authorLaszlo Agocs <laszlo.p.agocs@nokia.com>
Wed, 27 Apr 2011 13:18:58 +0000 (15:18 +0200)
committerOlivier Goffart <olivier.goffart@nokia.com>
Tue, 10 May 2011 10:54:50 +0000 (12:54 +0200)
commitb9f6b156c65d4ab0066d9d78fe7d499f1c5c4c49
tree2cd4dfbd1d4ff0d0d843887222599978b96898c4
parent45baf4ed0b2b6c7862d4df5d8b9878cec88237f3
Make translucent windows working properly with OpenVG.

The OpenVG engine correctly uses vgClear() to fill the surface with
transparent pixels whenever the window has the WA_TranslucentBackground
attribute enabled. However both scissoring and masking affects
the operation of vgClear(). Drawing artifacts were previously
visible due this, simply because scissoring was left enabled by
the VG paint engine, and the filling with transparent pixels
happens in the window surface's beginPaint() that is called
between the paint engine's end() (for the previous paint) and
begin() (for the next paint).

Task-number: QT-4907
Reviewed-by: Jani Hautakangas
(cherry picked from commit 4a1ae3d1b4e8e032b1c978fcc7e1812e37e1f047)
src/openvg/qpaintengine_vg.cpp