X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Fimage%2Fimage-visual.cpp;h=e79edd71cd60bdc854ee6d679a6141da630222b2;hb=refs%2Fchanges%2F15%2F225315%2F4;hp=8607fa852792b6a30609be9234fabe0fc032cc00;hpb=7b3868bc2f2ecb7ecc030e92d47d64b3057ca8f8;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/visuals/image/image-visual.cpp b/dali-toolkit/internal/visuals/image/image-visual.cpp index 8607fa8..e79edd7 100644 --- a/dali-toolkit/internal/visuals/image/image-visual.cpp +++ b/dali-toolkit/internal/visuals/image/image-visual.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 Samsung Electronics Co., Ltd. + * Copyright (c) 2020 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,15 +56,6 @@ namespace Internal namespace { -// property names -const char * const IMAGE_FITTING_MODE( "fittingMode" ); -const char * const IMAGE_SAMPLING_MODE( "samplingMode" ); -const char * const IMAGE_DESIRED_WIDTH( "desiredWidth" ); -const char * const IMAGE_DESIRED_HEIGHT( "desiredHeight" ); -const char * const SYNCHRONOUS_LOADING( "synchronousLoading" ); -const char * const IMAGE_ATLASING("atlasing"); -const char * const ALPHA_MASK_URL("alphaMaskUrl"); - // fitting modes DALI_ENUM_TO_STRING_TABLE_BEGIN( FITTING_MODE ) DALI_ENUM_TO_STRING_WITH_SCOPE( Dali::FittingMode, SHRINK_TO_FIT ) @@ -227,7 +218,7 @@ ImageVisual::~ImageVisual() if( mMaskingData->mAlphaMaskId != TextureManager::INVALID_TEXTURE_ID ) { TextureManager& textureManager = mFactoryCache.GetTextureManager(); - textureManager.Remove( mMaskingData->mAlphaMaskId ); + textureManager.Remove( mMaskingData->mAlphaMaskId, this ); } } @@ -425,10 +416,7 @@ void ImageVisual::DoSetProperty( Property::Index index, const Property::Value& v if( value.Get( alphaUrl ) ) { AllocateMaskData(); - // Immediately trigger the alpha mask loading (it may just get a cached value) mMaskingData->mAlphaMaskUrl = alphaUrl; - TextureManager& textureManager = mFactoryCache.GetTextureManager(); - mMaskingData->mAlphaMaskId = textureManager.RequestMaskLoad( alphaUrl ); } break; } @@ -570,7 +558,8 @@ void ImageVisual::CreateRenderer( TextureSet& textureSet ) shader = mImageVisualShaderFactory.GetShader( mFactoryCache, mImpl->mFlags & Impl::IS_ATLASING_APPLIED, - mWrapModeU <= WrapMode::CLAMP_TO_EDGE && mWrapModeV <= WrapMode::CLAMP_TO_EDGE ); + mWrapModeU <= WrapMode::CLAMP_TO_EDGE && mWrapModeV <= WrapMode::CLAMP_TO_EDGE, + IsRoundedCornerRequired() ); } else { @@ -665,11 +654,6 @@ void ImageVisual::CreateNativeImageRenderer( NativeImage& nativeImage ) mImpl->mTransform.RegisterUniforms( mImpl->mRenderer, Direction::LEFT_TO_RIGHT ); } -bool ImageVisual::IsSynchronousResourceLoading() const -{ - return mImpl->mFlags & Impl::IS_SYNCHRONOUS_RESOURCE_LOADING; -} - void ImageVisual::LoadTexture( bool& atlasing, Vector4& atlasRect, TextureSet& textures, bool orientationCorrection, TextureManager::ReloadPolicy forceReload ) { @@ -690,7 +674,7 @@ void ImageVisual::LoadTexture( bool& atlasing, Vector4& atlasRect, TextureSet& t : TextureManager::MultiplyOnLoad::LOAD_WITHOUT_MULTIPLY; textures = textureManager.LoadTexture( mImageUrl, mDesiredSize, mFittingMode, mSamplingMode, - mMaskingData, IsSynchronousResourceLoading(), mTextureId, + mMaskingData, IsSynchronousLoadingRequired(), mTextureId, atlasRect, mAtlasRectSize, atlasing, mLoading, mWrapModeU, mWrapModeV, textureObserver, atlasUploadObserver, atlasManager, mOrientationCorrection, forceReload, preMultiplyOnLoad); @@ -831,7 +815,7 @@ void ImageVisual::DoCreatePropertyMap( Property::Map& map ) const map.Clear(); map.Insert( Toolkit::Visual::Property::TYPE, Toolkit::Visual::IMAGE ); - bool sync = IsSynchronousResourceLoading(); + bool sync = IsSynchronousLoadingRequired(); map.Insert( SYNCHRONOUS_LOADING, sync ); if( mImageUrl.IsValid() ) { @@ -1014,7 +998,7 @@ void ImageVisual::RemoveTexture() { if( mTextureId != TextureManager::INVALID_TEXTURE_ID ) { - mFactoryCache.GetTextureManager().Remove( mTextureId ); + mFactoryCache.GetTextureManager().Remove( mTextureId, this ); mTextureId = TextureManager::INVALID_TEXTURE_ID; } else