+ renderIfTransparent = true;
+ }
+
+ Toolkit::Visual::Base visual = mImpl->GetVisual( Toolkit::Control::Property::BACKGROUND );
+ if( visual && visual.GetType() == Toolkit::Visual::COLOR )
+ {
+ Property::Map visualMap;
+ visual.CreatePropertyMap( visualMap );
+
+ Property::Value* renderValue = visualMap.Find( Toolkit::DevelColorVisual::Property::RENDER_IF_TRANSPARENT );
+ Property::Value* colorValue = visualMap.Find( Toolkit::ColorVisual::Property::MIX_COLOR );
+ if( renderValue && colorValue )
+ {
+ if( ( renderValue->Get< bool >() == true || colorValue->Get< Vector4 >().a > 0.0f )
+ && ( renderIfTransparent || color.a > 0.0f ) )
+ {
+ // Update background color only
+ mImpl->DoAction( Toolkit::Control::Property::BACKGROUND, DevelColorVisual::Action::UPDATE_PROPERTY, map );
+ return;
+ }
+ }