diff --git a/clients/oxygen/oxygen.cpp b/clients/oxygen/oxygen.cpp index efe533c846..d095623ca8 100644 --- a/clients/oxygen/oxygen.cpp +++ b/clients/oxygen/oxygen.cpp @@ -193,6 +193,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 ); @@ -207,6 +208,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 ); @@ -319,6 +321,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