From ec7c735fc62dec9b148dab6bd419f9fd6129dc7f Mon Sep 17 00:00:00 2001 From: Adeel Kazmi Date: Mon, 21 Jun 2021 11:38:25 +0100 Subject: [PATCH 1/1] (Control) Fix some SVACE issues in Transition Change-Id: Iea4054b9942f3b2b27a2f7cf1110d89f47673561 --- .../controls/control/control-data-impl.cpp | 29 ++++++++++++++-------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/dali-toolkit/internal/controls/control/control-data-impl.cpp b/dali-toolkit/internal/controls/control/control-data-impl.cpp index 06027de..33670d6 100644 --- a/dali-toolkit/internal/controls/control/control-data-impl.cpp +++ b/dali-toolkit/internal/controls/control/control-data-impl.cpp @@ -1456,10 +1456,10 @@ Dali::Accessibility::ReadingInfoTypes Control::Impl::GetAccessibilityReadingInfo else { Dali::Accessibility::ReadingInfoTypes types; - types[Dali::Accessibility::ReadingInfoType::NAME] = true; - types[Dali::Accessibility::ReadingInfoType::ROLE] = true; + types[Dali::Accessibility::ReadingInfoType::NAME] = true; + types[Dali::Accessibility::ReadingInfoType::ROLE] = true; types[Dali::Accessibility::ReadingInfoType::DESCRIPTION] = true; - types[Dali::Accessibility::ReadingInfoType::STATE] = true; + types[Dali::Accessibility::ReadingInfoType::STATE] = true; return types; } @@ -1828,13 +1828,22 @@ void Control::Impl::MakeVisualTransition(Dali::Animation& animation, Dali::Toolk Dali::Toolkit::Control destinationHandle = Dali::Toolkit::Control::DownCast(mControlImpl.Self()); Property::Map destinationMap = destinationHandle.GetProperty(visualIndex); - Vector4 mixColor(1.0f, 1.0f, 1.0f, 1.0f); - Vector4 cornerRadius(0.0f, 0.0f, 0.0f, 0.0f); + Vector4 mixColor(1.0f, 1.0f, 1.0f, 1.0f); + Vector4 cornerRadius(0.0f, 0.0f, 0.0f, 0.0f); if(!destinationMap.Empty()) { - mixColor = destinationMap.Find(Dali::Toolkit::Visual::Property::MIX_COLOR)->Get(); - cornerRadius = destinationMap.Find(Toolkit::DevelVisual::Property::CORNER_RADIUS)->Get(); + static auto findValue = [](const Property::Map& map, Property::Index index) -> Vector4 { + Property::Value* propertyValue = map.Find(index); + if(propertyValue) + { + return propertyValue->Get(); + } + return Vector4{}; + }; + + mixColor = findValue(destinationMap, Dali::Toolkit::Visual::Property::MIX_COLOR); + cornerRadius = findValue(destinationMap, Toolkit::DevelVisual::Property::CORNER_RADIUS); if(sourceMap.Empty()) { @@ -1843,10 +1852,10 @@ void Control::Impl::MakeVisualTransition(Dali::Animation& animation, Dali::Toolk sourceMap.Insert(Toolkit::DevelVisual::Property::CORNER_RADIUS, cornerRadius); } - Vector4 sourceMixColor = sourceMap.Find(Dali::Toolkit::Visual::Property::MIX_COLOR)->Get(); - Vector4 sourceCornerRadius = sourceMap.Find(Toolkit::DevelVisual::Property::CORNER_RADIUS)->Get(); + Vector4 sourceMixColor = findValue(sourceMap, Dali::Toolkit::Visual::Property::MIX_COLOR); + Vector4 sourceCornerRadius = findValue(sourceMap, Toolkit::DevelVisual::Property::CORNER_RADIUS); - std::vector properties; + std::vector properties; std::vector> values; if(Vector3(sourceMixColor) != Vector3(mixColor)) -- 2.7.4