recalcClipRegions when transparency changed
[enigma2.git] / lib / gui / ewidget.cpp
index 30602c558ca238acc6c59c9a3d648cb2e2237f6c..8a396ad36e09a1d533d25c2da817defc6e8280b0 100644 (file)
@@ -205,10 +205,14 @@ void eWidget::setZPosition(int z)
 
 void eWidget::setTransparent(int transp)
 {
-       if (transp)
-               m_vis |= wVisTransparent;
-       else
-               m_vis &=~wVisTransparent;
+       if (isTransparent() != transp)
+       {
+               if (transp)
+                       m_vis |= wVisTransparent;
+               else
+                       m_vis &=~wVisTransparent;
+               recalcClipRegionsWhenVisible();
+       }
 }
 
 ePoint eWidget::getAbsolutePosition()