X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Fcolor%2Fcolor-visual.cpp;h=ef61a6bf86e593ec24fdf960721d84060f744728;hp=ad7d3a55ac95374ec7fb5ee45fb078e0d67c7444;hb=72c50266669b227509735ba9d1d8da24c0335a6b;hpb=e53a04c17ec1b512bb7c9e8defa62a32ef384e11 diff --git a/dali-toolkit/internal/visuals/color/color-visual.cpp b/dali-toolkit/internal/visuals/color/color-visual.cpp index ad7d3a5..ef61a6b 100644 --- a/dali-toolkit/internal/visuals/color/color-visual.cpp +++ b/dali-toolkit/internal/visuals/color/color-visual.cpp @@ -62,6 +62,8 @@ enum ColorVisualRequireFlag BORDERLINE = 1 << 1, BLUR = 1 << 2, }; + +constexpr uint32_t MINIMUM_SHADER_VERSION_SUPPORT_ROUNDED_BLUR = 300; } // unnamed namespace ColorVisualPtr ColorVisual::New(VisualFactoryCache& factoryCache, const Property::Map& properties) { @@ -235,15 +237,21 @@ Shader ColorVisual::GenerateShader() const bool blur = IsBlurRequired(); int shaderTypeFlag = ColorVisualRequireFlag::DEFAULT; - if(roundedCorner) - { - shaderTypeFlag |= ColorVisualRequireFlag::ROUNDED_CORNER; - } if(blur) { // If we use blur, just ignore borderline borderline = false; shaderTypeFlag |= ColorVisualRequireFlag::BLUR; + + // If shader version doesn't support blur with corner radius, ignore corner radius + if(DALI_UNLIKELY(Dali::Shader::GetShaderLanguageVersion() < MINIMUM_SHADER_VERSION_SUPPORT_ROUNDED_BLUR)) + { + roundedCorner = false; + } + } + if(roundedCorner) + { + shaderTypeFlag |= ColorVisualRequireFlag::ROUNDED_CORNER; } if(borderline) {