Don't use vgClear() for semi-transparent brushes.
Don't use vgClear() for semi-transparent brushes.

If the brush is not totally opaque we should not use vgClear() at this
point because vgClear() does not support blending. Instead it writes
the values directly into the surface which clobbers any existing
content. The bug exhibits itself when a child widget fills itself with
any transparent color. Instead of blending with the parent widget's
content, it writes the semi-transparent color directly to the surface,
overwriting the parent content and leaving the surface in a somewhat
undefined state because the alpha channel is not honoured unless
Qt::WA_TranslucentBackground is set.

Task-number: QTBUG-8007
Reviewed-by: Rhys Weatherley

pruiz/wkhtmltopdf-qt,igor-sfdc/qt-wk,igor-sfdc/qt-wk,igor-sfdc/qt-wk,pruiz/wkhtmltopdf-qt,igor-sfdc/qt-wk,igor-sfdc/qt-wk,igor-sfdc/qt-wk,pruiz/wkhtmltopdf-qt,pruiz/wkhtmltopdf-qt,pruiz/wkhtmltopdf-qt,pruiz/wkhtmltopdf-qt,igor-sfdc/qt-wk,pruiz/wkhtmltopdf-qt,pruiz/wkhtmltopdf-qt,igor-sfdc/qt-wk,igor-sfdc/qt-wk,igor-sfdc/qt-wk,pruiz/wkhtmltopdf-qt,igor-sfdc/qt-wk,pruiz/wkhtmltopdf-qt,pruiz/wkhtmltopdf-qt