X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Fnpatch%2Fnpatch-visual.cpp;h=dcf734eb1ef9650d62401bff5f1dcae0598f7638;hb=2b281ce2a2d3358fc9798943b920193fda6e02f8;hp=618c4663adcc5e36e21a649192a6b2c31144827b;hpb=c0f19460b99fc0253297831f0807b03d3ea6901d;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/visuals/npatch/npatch-visual.cpp b/dali-toolkit/internal/visuals/npatch/npatch-visual.cpp index 618c466..dcf734e 100755 --- a/dali-toolkit/internal/visuals/npatch/npatch-visual.cpp +++ b/dali-toolkit/internal/visuals/npatch/npatch-visual.cpp @@ -227,13 +227,13 @@ void AddVertex( Vector< Vector2 >& vertices, unsigned int x, unsigned int y ) vertices.PushBack( Vector2( x, y ) ); } -void RegisterStretchProperties( Renderer& renderer, const char * uniformName, const NinePatchImage::StretchRanges& stretchPixels, uint16_t imageExtent) +void RegisterStretchProperties( Renderer& renderer, const char * uniformName, const NPatchLoader::StretchRanges& stretchPixels, uint16_t imageExtent) { uint16_t prevEnd = 0; uint16_t prevFix = 0; uint16_t prevStretch = 0; unsigned int i = 1; - for( NinePatchImage::StretchRanges::ConstIterator it = stretchPixels.Begin(); it != stretchPixels.End(); ++it, ++i ) + for( NPatchLoader::StretchRanges::ConstIterator it = stretchPixels.Begin(); it != stretchPixels.End(); ++it, ++i ) { uint16_t start = it->GetX(); uint16_t end = it->GetY(); @@ -291,7 +291,14 @@ void NPatchVisual::LoadImages() { if( NPatchLoader::UNINITIALIZED_ID == mId && mImageUrl.IsLocalResource() ) { - mId = mLoader.Load( mImageUrl.GetUrl(), mBorder ); + bool preMultiplyOnLoad = mFactoryCache.GetPreMultiplyOnLoad() && !mImpl->mCustomShader ? true : false; + + mId = mLoader.Load( mImageUrl.GetUrl(), mBorder, preMultiplyOnLoad ); + + if( preMultiplyOnLoad ) + { + EnablePreMultipliedAlpha( true ); + } } if( ! mAuxiliaryPixelBuffer && mAuxiliaryUrl.IsValid() && mAuxiliaryUrl.IsLocalResource() ) @@ -473,8 +480,8 @@ Shader NPatchVisual::CreateShader() const NPatchLoader::Data* data; // 0 is either no data (load failed?) or no stretch regions on image // for both cases we use the default shader - NinePatchImage::StretchRanges::SizeType xStretchCount = 0; - NinePatchImage::StretchRanges::SizeType yStretchCount = 0; + NPatchLoader::StretchRanges::SizeType xStretchCount = 0; + NPatchLoader::StretchRanges::SizeType yStretchCount = 0; auto fragmentShader = mAuxiliaryPixelBuffer ? FRAGMENT_MASK_SHADER : FRAGMENT_SHADER;