X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Fpublic-api%2Fcontrols%2Fcontrol-impl.cpp;h=f777b004aad2845e477d0072b1837c66a3ba7584;hp=ec56a2f2e3ebd1d5f5921c0b104ca58e964aa96d;hb=f4a28993f3f77f15015e5c9b4e1bedd06e23b926;hpb=ccd53048e482f41b00ad1daa7664b3781d6b7626;ds=sidebyside diff --git a/dali-toolkit/public-api/controls/control-impl.cpp b/dali-toolkit/public-api/controls/control-impl.cpp index ec56a2f..f777b00 100644 --- a/dali-toolkit/public-api/controls/control-impl.cpp +++ b/dali-toolkit/public-api/controls/control-impl.cpp @@ -599,8 +599,7 @@ void Control::ClearBackground() { if( mImpl->mBackgroundVisual ) { - Actor self( Self() ); - Toolkit::GetImplementation( mImpl->mBackgroundVisual ).SetOffStage( self ); + UnregisterVisual( Toolkit::Control::Property::BACKGROUND ); mImpl->mBackgroundVisual.Reset(); } mImpl->mBackgroundColor = Color::TRANSPARENT; @@ -783,11 +782,14 @@ void Control::RegisterVisual( Property::Index index, Toolkit::Visual::Base& visu void Control::UnregisterVisual( Property::Index index ) { - RegisteredVisualContainer::Iterator iter; - if ( FindVisual( index, mImpl->mVisuals, iter ) ) - { - mImpl->mVisuals.Erase( iter ); - } + RegisteredVisualContainer::Iterator iter; + if ( FindVisual( index, mImpl->mVisuals, iter ) ) + { + Actor self( Self() ); + Toolkit::GetImplementation((*iter)->visual).SetOffStage( self ); + (*iter)->visual.Reset(); + mImpl->mVisuals.Erase( iter ); + } } Toolkit::Visual::Base Control::GetVisual( Property::Index index ) const