+ map[Toolkit::DevelColorVisual::Property::RENDER_IF_TRANSPARENT] = true;
+ 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;
+ }
+ }