diff --git a/clients/ozone/oxygen.cpp b/clients/ozone/oxygen.cpp index 99154db3c5..20963de2d6 100644 --- a/clients/ozone/oxygen.cpp +++ b/clients/ozone/oxygen.cpp @@ -199,6 +199,7 @@ QList< QList > OxygenFactory::shadowTextures() shadow->fill( Qt::transparent ); QRadialGradient rg( size, size, size ); QColor c = color; + c.setAlpha( 0 ); rg.setColorAt( 4/size, c ); c.setAlpha( 255 ); rg.setColorAt( 4.4/size, c ); c = glow; c.setAlpha( 220 ); rg.setColorAt( 4.5/size, c ); @@ -213,6 +214,7 @@ QList< QList > OxygenFactory::shadowTextures() rg = QRadialGradient( size, size, size ); c = color; + c.setAlpha( 0 ); rg.setColorAt( 4/size, c ); c.setAlpha( 255 ); rg.setColorAt( 4.4/size, c ); c = glow2; c.setAlpha( 0.58*255 ); rg.setColorAt( 4.5/size, c ); @@ -325,6 +327,12 @@ QList< QList > OxygenFactory::shadowTextures() p.setPen(QPen(lg, 0.8)); p.drawEllipse(QRectF(size-4, size-4, 8, 8)); + // cut out the part of the texture that is under the window + p.setCompositionMode( QPainter::CompositionMode_Xor ); + p.setBrush( QColor( 0, 0, 0, 255 )); + p.setPen( Qt::NoPen ); + p.drawEllipse(QRectF(size-4, size-4, 8, 8)); + p.end(); MAKE_TEX( w, h, 0, h+1 ); // corner