The property "pixelSnapFactor" only be used for TextLabel.
But if some control try to use TextVisual, that value not be registered.
To resolve this issue, we need to register the default values
to the TextVisual's shader class.
Change-Id: Ic178144a9a06a9addf28222f0d280d8df707e927
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
{
namespace
{
+constexpr std::string_view PIXEL_SNAP_FACTOR_UNIFORM_NAME = "pixelSnapFactor";
+constexpr float PIXEL_SNAP_DISABLED_VALUE(0.0f);
+
// enum of required list when we select shader
enum class TextVisualRequireFlag : uint32_t
{
std::string fragmentShader = std::string(Dali::Shader::GetFragmentShaderPrefix() + fragmentShaderPrefixList + SHADER_TEXT_VISUAL_SHADER_FRAG.data());
shader = factoryCache.GenerateAndSaveShader(shaderType, vertexShader, fragmentShader);
+
+ // Register property which only textlabel used.
+ shader.RegisterProperty(PIXEL_SNAP_FACTOR_UNIFORM_NAME.data(), PIXEL_SNAP_DISABLED_VALUE);
}
return shader;
}