Promote Control::Impl::AccessibleImpl to DevelControl 25/253225/8
authorArtur Świgoń <a.swigon@samsung.com>
Fri, 5 Feb 2021 16:07:34 +0000 (17:07 +0100)
committerBartlomiej Grzelewski <b.grzelewski@samsung.com>
Wed, 3 Mar 2021 10:00:53 +0000 (11:00 +0100)
Change-Id: I171cf49ea494791435a4849970ea0ec0c3952ec3

39 files changed:
dali-toolkit/devel-api/controls/accessible-impl.cpp [new file with mode: 0644]
dali-toolkit/devel-api/controls/accessible-impl.h [new file with mode: 0644]
dali-toolkit/devel-api/controls/control-devel.h
dali-toolkit/devel-api/file.list
dali-toolkit/internal/controls/alignment/alignment-impl.cpp
dali-toolkit/internal/controls/bloom-view/bloom-view-impl.cpp
dali-toolkit/internal/controls/buttons/button-impl.cpp
dali-toolkit/internal/controls/buttons/button-impl.h
dali-toolkit/internal/controls/control/control-data-impl.cpp
dali-toolkit/internal/controls/control/control-data-impl.h
dali-toolkit/internal/controls/effects-view/effects-view-impl.cpp
dali-toolkit/internal/controls/flex-container/flex-container-impl.cpp
dali-toolkit/internal/controls/gaussian-blur-view/gaussian-blur-view-impl.cpp
dali-toolkit/internal/controls/image-view/image-view-impl.cpp
dali-toolkit/internal/controls/magnifier/magnifier-impl.cpp
dali-toolkit/internal/controls/model3d-view/model3d-view-impl.cpp
dali-toolkit/internal/controls/navigation-view/navigation-view-impl.cpp
dali-toolkit/internal/controls/page-turn-view/page-turn-view-impl.cpp
dali-toolkit/internal/controls/popup/popup-impl.cpp
dali-toolkit/internal/controls/popup/popup-impl.h
dali-toolkit/internal/controls/progress-bar/progress-bar-impl.cpp
dali-toolkit/internal/controls/progress-bar/progress-bar-impl.h
dali-toolkit/internal/controls/scroll-bar/scroll-bar-impl.cpp
dali-toolkit/internal/controls/scroll-bar/scroll-bar-impl.h
dali-toolkit/internal/controls/scrollable/scrollable-impl.h
dali-toolkit/internal/controls/shadow-view/shadow-view-impl.cpp
dali-toolkit/internal/controls/slider/slider-impl.cpp
dali-toolkit/internal/controls/slider/slider-impl.h
dali-toolkit/internal/controls/super-blur-view/super-blur-view-impl.cpp
dali-toolkit/internal/controls/table-view/table-view-impl.cpp
dali-toolkit/internal/controls/text-controls/text-editor-impl.cpp
dali-toolkit/internal/controls/text-controls/text-editor-impl.h
dali-toolkit/internal/controls/text-controls/text-field-impl.cpp
dali-toolkit/internal/controls/text-controls/text-field-impl.h
dali-toolkit/internal/controls/text-controls/text-label-impl.h
dali-toolkit/internal/controls/text-controls/text-selection-popup-impl.cpp
dali-toolkit/internal/controls/text-controls/text-selection-toolbar-impl.cpp
dali-toolkit/internal/controls/tool-bar/tool-bar-impl.cpp
dali-toolkit/internal/controls/video-view/video-view-impl.cpp

diff --git a/dali-toolkit/devel-api/controls/accessible-impl.cpp b/dali-toolkit/devel-api/controls/accessible-impl.cpp
new file mode 100644 (file)
index 0000000..f986bd4
--- /dev/null
@@ -0,0 +1,421 @@
+/*
+ * Copyright (c) 2021 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.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// CLASS HEADER
+#include "accessible-impl.h"
+
+// EXTERNAL INCLUDES
+#include <dali/devel-api/actors/actor-devel.h>
+
+// INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/asset-manager/asset-manager.h>
+#include <dali-toolkit/internal/controls/control/control-data-impl.h>
+#include <dali-toolkit/public-api/controls/control-impl.h>
+#include <dali-toolkit/public-api/controls/control.h>
+#include <dali-toolkit/public-api/controls/image-view/image-view.h>
+#include <dali-toolkit/public-api/focus-manager/keyboard-focus-manager.h>
+
+namespace Dali::Toolkit::DevelControl {
+
+AccessibleImpl::AccessibleImpl(Dali::Actor self, Dali::Accessibility::Role role, bool modal)
+: self(self),
+  modal(modal)
+{
+  auto control = Dali::Toolkit::Control::DownCast(self);
+
+  Internal::Control&       internalControl = Toolkit::Internal::GetImplementation(control);
+  Internal::Control::Impl& controlImpl     = Internal::Control::Impl::Get(internalControl);
+  if(controlImpl.mAccessibilityRole == Dali::Accessibility::Role::UNKNOWN)
+    controlImpl.mAccessibilityRole = role;
+
+  self.PropertySetSignal().Connect(&controlImpl, [this, &controlImpl](Dali::Handle& handle, Dali::Property::Index index, Dali::Property::Value value) {
+    if(this->self != Dali::Accessibility::Accessible::GetCurrentlyHighlightedActor())
+    {
+      return;
+    }
+
+    if(index == DevelControl::Property::ACCESSIBILITY_NAME || (index == GetNamePropertyIndex() && !controlImpl.mAccessibilityNameSet))
+    {
+      if(controlImpl.mAccessibilityGetNameSignal.Empty())
+      {
+        Emit(Dali::Accessibility::ObjectPropertyChangeEvent::NAME);
+      }
+    }
+
+    if(index == DevelControl::Property::ACCESSIBILITY_DESCRIPTION || (index == GetDescriptionPropertyIndex() && !controlImpl.mAccessibilityDescriptionSet))
+    {
+      if(controlImpl.mAccessibilityGetDescriptionSignal.Empty())
+      {
+        Emit(Dali::Accessibility::ObjectPropertyChangeEvent::DESCRIPTION);
+      }
+    }
+  });
+}
+
+std::string AccessibleImpl::GetName()
+{
+  auto control = Dali::Toolkit::Control::DownCast(self);
+
+  Internal::Control&       internalControl = Toolkit::Internal::GetImplementation(control);
+  Internal::Control::Impl& controlImpl     = Internal::Control::Impl::Get(internalControl);
+
+  if(!controlImpl.mAccessibilityGetNameSignal.Empty())
+  {
+    std::string ret;
+    controlImpl.mAccessibilityGetNameSignal.Emit(ret);
+    return ret;
+  }
+
+  if(controlImpl.mAccessibilityNameSet)
+    return controlImpl.mAccessibilityName;
+
+  if(auto raw = GetNameRaw(); !raw.empty())
+    return raw;
+
+  return self.GetProperty<std::string>(Actor::Property::NAME);
+}
+
+std::string AccessibleImpl::GetNameRaw()
+{
+  return {};
+}
+
+std::string AccessibleImpl::GetDescription()
+{
+  auto control = Dali::Toolkit::Control::DownCast(self);
+
+  Internal::Control&       internalControl = Toolkit::Internal::GetImplementation(control);
+  Internal::Control::Impl& controlImpl     = Internal::Control::Impl::Get(internalControl);
+
+  if(!controlImpl.mAccessibilityGetDescriptionSignal.Empty())
+  {
+    std::string ret;
+    controlImpl.mAccessibilityGetDescriptionSignal.Emit(ret);
+    return ret;
+  }
+
+  if(controlImpl.mAccessibilityDescriptionSet)
+    return controlImpl.mAccessibilityDescription;
+
+  return GetDescriptionRaw();
+}
+
+std::string AccessibleImpl::GetDescriptionRaw()
+{
+  return "";
+}
+
+Dali::Accessibility::Accessible* AccessibleImpl::GetParent()
+{
+  return Dali::Accessibility::Accessible::Get(self.GetParent());
+}
+
+size_t AccessibleImpl::GetChildCount()
+{
+  return self.GetChildCount();
+}
+
+Dali::Accessibility::Accessible* AccessibleImpl::GetChildAtIndex(size_t index)
+{
+  return Dali::Accessibility::Accessible::Get(self.GetChildAt(static_cast<unsigned int>(index)));
+}
+
+size_t AccessibleImpl::GetIndexInParent()
+{
+  auto s      = self;
+  auto parent = s.GetParent();
+  DALI_ASSERT_ALWAYS(parent && "can't call GetIndexInParent on object without parent");
+  auto count = parent.GetChildCount();
+  for(auto i = 0u; i < count; ++i)
+  {
+    auto c = parent.GetChildAt(i);
+    if(c == s)
+      return i;
+  }
+  DALI_ASSERT_ALWAYS(false && "object isn't child of it's parent");
+  return static_cast<size_t>(-1);
+}
+
+Dali::Accessibility::Role AccessibleImpl::GetRole()
+{
+  return self.GetProperty<Dali::Accessibility::Role>(Toolkit::DevelControl::Property::ACCESSIBILITY_ROLE);
+}
+
+Dali::Accessibility::States AccessibleImpl::CalculateStates()
+{
+  Dali::Accessibility::States s;
+  s[Dali::Accessibility::State::FOCUSABLE] = self.GetProperty<bool>(Actor::Property::KEYBOARD_FOCUSABLE);
+  s[Dali::Accessibility::State::FOCUSED]   = Toolkit::KeyboardFocusManager::Get().GetCurrentFocusActor() == self;
+  if(self.GetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE).GetType() == Dali::Property::NONE)
+    s[Dali::Accessibility::State::HIGHLIGHTABLE] = false;
+  else
+    s[Dali::Accessibility::State::HIGHLIGHTABLE] = self.GetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE).Get<bool>();
+  s[Dali::Accessibility::State::HIGHLIGHTED] = GetCurrentlyHighlightedActor() == self;
+  s[Dali::Accessibility::State::ENABLED]     = true;
+  s[Dali::Accessibility::State::SENSITIVE]   = true;
+  s[Dali::Accessibility::State::ANIMATED]    = self.GetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_ANIMATED).Get<bool>();
+  s[Dali::Accessibility::State::VISIBLE]     = true;
+  if(modal)
+  {
+    s[Dali::Accessibility::State::MODAL] = true;
+  }
+  s[Dali::Accessibility::State::SHOWING] = !self.GetProperty(Dali::DevelActor::Property::CULLED).Get<bool>() && self.GetCurrentProperty<bool>(Actor::Property::VISIBLE);
+
+  s[Dali::Accessibility::State::DEFUNCT] = !self.GetProperty(Dali::DevelActor::Property::CONNECTED_TO_SCENE).Get<bool>();
+  return s;
+}
+
+Dali::Accessibility::States AccessibleImpl::GetStates()
+{
+  return CalculateStates();
+}
+
+Dali::Accessibility::Attributes AccessibleImpl::GetAttributes()
+{
+  std::unordered_map<std::string, std::string> attribute_map;
+  auto                                         q = Dali::Toolkit::Control::DownCast(self);
+  auto                                         w =
+    q.GetProperty(Dali::Toolkit::DevelControl::Property::ACCESSIBILITY_ATTRIBUTES);
+  auto z = w.GetMap();
+
+  if(z)
+  {
+    auto map_size = z->Count();
+
+    for(unsigned int i = 0; i < map_size; i++)
+    {
+      auto map_key = z->GetKeyAt(i);
+      if(map_key.type == Dali::Property::Key::STRING)
+      {
+        std::string map_value;
+        if(z->GetValue(i).Get(map_value))
+        {
+          attribute_map.emplace(std::move(map_key.stringKey),
+                                std::move(map_value));
+        }
+      }
+    }
+  }
+
+  return attribute_map;
+}
+
+Dali::Accessibility::ComponentLayer AccessibleImpl::GetLayer()
+{
+  return Dali::Accessibility::ComponentLayer::WINDOW;
+}
+
+Dali::Rect<> AccessibleImpl::GetExtents(Dali::Accessibility::CoordType ctype)
+{
+  Vector2 screenPosition =
+    self.GetProperty(Dali::DevelActor::Property::SCREEN_POSITION)
+      .Get<Vector2>();
+  auto size = self.GetCurrentProperty<Vector3>(Actor::Property::SIZE) * self.GetCurrentProperty<Vector3>(Actor::Property::WORLD_SCALE);
+  bool positionUsesAnchorPoint =
+    self.GetProperty(Dali::DevelActor::Property::POSITION_USES_ANCHOR_POINT)
+      .Get<bool>();
+  Vector3 anchorPointOffSet =
+    size * (positionUsesAnchorPoint ? self.GetCurrentProperty<Vector3>(Actor::Property::ANCHOR_POINT)
+                                    : AnchorPoint::TOP_LEFT);
+  Vector2 position = Vector2(screenPosition.x - anchorPointOffSet.x,
+                             screenPosition.y - anchorPointOffSet.y);
+
+  return {position.x, position.y, size.x, size.y};
+}
+
+int16_t AccessibleImpl::GetMdiZOrder()
+{
+  return 0;
+}
+double AccessibleImpl::GetAlpha()
+{
+  return 0;
+}
+
+bool AccessibleImpl::GrabFocus()
+{
+  return Toolkit::KeyboardFocusManager::Get().SetCurrentFocusActor(self);
+}
+
+static Dali::Actor CreateHighlightIndicatorActor()
+{
+  std::string focusBorderImagePath(AssetManager::GetDaliImagePath());
+  focusBorderImagePath += "/keyboard_focus.9.png";
+  // Create the default if it hasn't been set and one that's shared by all the
+  // keyboard focusable actors
+  auto actor = Toolkit::ImageView::New(focusBorderImagePath);
+  actor.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS);
+  DevelControl::AppendAccessibilityAttribute(actor, "highlight", "");
+  actor.SetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_ANIMATED, true);
+  actor.SetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE, false);
+
+  return actor;
+}
+
+bool AccessibleImpl::GrabHighlight()
+{
+  auto old = GetCurrentlyHighlightedActor();
+
+  if(!Dali::Accessibility::IsUp())
+    return false;
+  if(self == old)
+    return true;
+  if(old)
+  {
+    auto c = dynamic_cast<Dali::Accessibility::Component*>(Internal::Control::Impl::GetAccessibilityObject(old));
+    if(c)
+      c->ClearHighlight();
+  }
+  auto highlight = GetHighlightActor();
+  if(!highlight)
+  {
+    highlight = CreateHighlightIndicatorActor();
+    SetHighlightActor(highlight);
+  }
+  highlight.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER);
+  highlight.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER);
+  highlight.SetProperty(Actor::Property::POSITION_Z, 1.0f);
+  highlight.SetProperty(Actor::Property::POSITION, Vector2(0.0f, 0.0f));
+
+  EnsureSelfVisible();
+  self.Add(highlight);
+  SetCurrentlyHighlightedActor(self);
+  EmitHighlighted(true);
+
+  return true;
+}
+
+bool AccessibleImpl::ClearHighlight()
+{
+  if(!Dali::Accessibility::IsUp())
+    return false;
+  if(GetCurrentlyHighlightedActor() == self)
+  {
+    self.Remove(GetHighlightActor());
+    SetCurrentlyHighlightedActor({});
+    EmitHighlighted(false);
+    return true;
+  }
+  return false;
+}
+
+std::string AccessibleImpl::GetActionName(size_t index)
+{
+  if(index >= GetActionCount()) return "";
+  Dali::TypeInfo type;
+  self.GetTypeInfo(type);
+  DALI_ASSERT_ALWAYS(type && "no TypeInfo object");
+  return type.GetActionName(index);
+}
+
+std::string AccessibleImpl::GetLocalizedActionName(size_t index)
+{
+  // TODO: add localization
+  return GetActionName(index);
+}
+
+std::string AccessibleImpl::GetActionDescription(size_t index)
+{
+  return "";
+}
+
+size_t AccessibleImpl::GetActionCount()
+{
+  Dali::TypeInfo type;
+  self.GetTypeInfo(type);
+  DALI_ASSERT_ALWAYS(type && "no TypeInfo object");
+  return type.GetActionCount();
+}
+
+std::string AccessibleImpl::GetActionKeyBinding(size_t index)
+{
+  return "";
+}
+
+bool AccessibleImpl::DoAction(size_t index)
+{
+  std::string actionName = GetActionName(index);
+  return self.DoAction(actionName, {});
+}
+
+bool AccessibleImpl::DoAction(const std::string& name)
+{
+  return self.DoAction(name, {});
+}
+
+bool AccessibleImpl::DoGesture(const Dali::Accessibility::GestureInfo& gestureInfo)
+{
+  auto control = Dali::Toolkit::Control::DownCast(self);
+
+  Internal::Control&       internalControl = Toolkit::Internal::GetImplementation(control);
+  Internal::Control::Impl& controlImpl     = Internal::Control::Impl::Get(internalControl);
+
+  if(!controlImpl.mAccessibilityDoGestureSignal.Empty())
+  {
+    auto ret = std::make_pair(gestureInfo, false);
+    controlImpl.mAccessibilityDoGestureSignal.Emit(ret);
+    return ret.second;
+  }
+
+  return false;
+}
+
+std::vector<Dali::Accessibility::Relation> AccessibleImpl::GetRelationSet()
+{
+  auto control = Dali::Toolkit::Control::DownCast(self);
+
+  Internal::Control&       internalControl = Toolkit::Internal::GetImplementation(control);
+  Internal::Control::Impl& controlImpl     = Internal::Control::Impl::Get(internalControl);
+
+  std::vector<Dali::Accessibility::Relation> ret;
+
+  auto& v = controlImpl.mAccessibilityRelations;
+  for(auto i = 0u; i < v.size(); ++i)
+  {
+    if(v[i].empty())
+      continue;
+
+    ret.emplace_back(Accessibility::Relation{static_cast<Accessibility::RelationType>(i), v[i]});
+  }
+
+  return ret;
+}
+
+void AccessibleImpl::EnsureChildVisible(Actor child)
+{
+}
+
+void AccessibleImpl::EnsureSelfVisible()
+{
+  auto parent = dynamic_cast<AccessibleImpl*>(GetParent());
+  if(parent)
+  {
+    parent->EnsureChildVisible(self);
+  }
+}
+
+Dali::Property::Index AccessibleImpl::GetNamePropertyIndex()
+{
+  return Actor::Property::NAME;
+}
+
+Dali::Property::Index AccessibleImpl::GetDescriptionPropertyIndex()
+{
+  return Dali::Property::INVALID_INDEX;
+}
+
+} // namespace Dali::Toolkit::DevelControl
diff --git a/dali-toolkit/devel-api/controls/accessible-impl.h b/dali-toolkit/devel-api/controls/accessible-impl.h
new file mode 100644 (file)
index 0000000..feffe75
--- /dev/null
@@ -0,0 +1,217 @@
+#ifndef DALI_TOOLKIT_ACCESSIBLE_IMPL_H
+#define DALI_TOOLKIT_ACCESSIBLE_IMPL_H
+/*
+ * Copyright (c) 2021 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.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+// EXTERNAL INCLUDES
+#include <dali/devel-api/adaptor-framework/accessibility-impl.h>
+#include <dali/devel-api/adaptor-framework/accessibility.h>
+
+// INTERNAL INCLUDES
+#include <dali-toolkit/public-api/dali-toolkit-common.h>
+
+namespace Dali::Toolkit::DevelControl {
+
+/**
+ * @brief Represents the Accessible object for Dali::Toolkit::Control and derived classes
+ *
+ * You can create a derived class (and register it using SetAccessibilityConstructor)
+ * in order to customize Accessibility for a given control.
+ *
+ * @see Dali::Toolkit::DevelControl::SetAccessibilityConstructor
+ * @see Dali::Accessibility::Accessible
+ * @see Dali::Accessibility::Component
+ * @see Dali::Accessibility::Collection
+ * @see Dali::Accessibility::Action
+ * @see Dali::Accessibility::Value
+ * @see Dali::Accessibility::Text
+ * @see Dali::Accessibility::EditableText
+ */
+struct DALI_TOOLKIT_API AccessibleImpl : public virtual Dali::Accessibility::Accessible,
+                                         public virtual Dali::Accessibility::Component,
+                                         public virtual Dali::Accessibility::Collection,
+                                         public virtual Dali::Accessibility::Action
+{
+  Dali::Actor self;
+  bool        modal = false, root = false;
+
+  AccessibleImpl(Dali::Actor self, Dali::Accessibility::Role role, bool modal = false);
+
+  /**
+   * @copydoc Dali::Accessibility::Accessible::GetName()
+   */
+  std::string GetName() override;
+
+  /**
+   * @brief Returns the actor's name in the absence of ACCESSIBILITY_NAME property
+   */
+  virtual std::string GetNameRaw();
+
+  /**
+   * @copydoc Dali::Accessibility::Accessible::GetDescription()
+   */
+  std::string GetDescription() override;
+
+  /**
+   * @brief Returns the actor's description in the absence of ACCESSIBILITY_DESCRIPTION property
+   */
+  virtual std::string GetDescriptionRaw();
+
+  /**
+   * @copydoc Dali::Accessibility::Accessible::GetParent()
+   */
+  Dali::Accessibility::Accessible* GetParent() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Accessible::GetChildCount()
+   */
+  size_t GetChildCount() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Accessible::GetChildAtIndex()
+   */
+  Dali::Accessibility::Accessible* GetChildAtIndex(size_t index) override;
+
+  /**
+   * @copydoc Dali::Accessibility::Accessible::GetIndexInParent()
+   */
+  size_t GetIndexInParent() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Accessible::GetRole()
+   */
+  Dali::Accessibility::Role GetRole() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Accessible::GetStates()
+   */
+  Dali::Accessibility::States GetStates() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Accessible::GetAttributes()
+   */
+  Dali::Accessibility::Attributes GetAttributes() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Component::GetExtents()
+   */
+  Dali::Rect<> GetExtents(Dali::Accessibility::CoordType ctype) override;
+
+  /**
+   * @copydoc Dali::Accessibility::Component::GetLayer()
+   */
+  Dali::Accessibility::ComponentLayer GetLayer() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Component::GetMdiZOrder()
+   */
+  int16_t GetMdiZOrder() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Component::GrabFocus()
+   */
+  bool GrabFocus() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Component::GetAlpha()
+   */
+  double GetAlpha() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Component::GrabHighlight()
+   */
+  bool GrabHighlight() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Component::ClearHighlight()
+   */
+  bool ClearHighlight() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Action::GetActionName()
+   */
+  std::string GetActionName(size_t index) override;
+
+  /**
+   * @copydoc Dali::Accessibility::Action::GetLocalizedActionName()
+   */
+  std::string GetLocalizedActionName(size_t index) override;
+
+  /**
+   * @copydoc Dali::Accessibility::Action::GetActionDescription()
+   */
+  std::string GetActionDescription(size_t index) override;
+
+  /**
+   * @copydoc Dali::Accessibility::Action::GetActionCount()
+   */
+  size_t GetActionCount() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Action::GetActionKeyBinding()
+   */
+  std::string GetActionKeyBinding(size_t index) override;
+
+  /**
+   * @copydoc Dali::Accessibility::Action::DoAction(size_t)
+   */
+  bool DoAction(size_t index) override;
+
+  /**
+   * @copydoc Dali::Accessibility::Action::DoAction(const std::string&)
+   */
+  bool DoAction(const std::string& name) override;
+
+  /**
+   * @copydoc Dali::Accessibility::Accessible::DoGesture()
+   */
+  bool DoGesture(const Dali::Accessibility::GestureInfo& gestureInfo) override;
+
+  /**
+   * @copydoc Dali::Accessibility::Accessible::GetRelationSet()
+   */
+  std::vector<Dali::Accessibility::Relation> GetRelationSet() override;
+
+  /**
+   * @copydoc Dali::Accessibility::Accessible::GetStates()
+   */
+  virtual Dali::Accessibility::States CalculateStates();
+
+  /**
+   * @brief Makes sure that a given child of this container (e.g. ItemView) is visible
+   */
+  virtual void EnsureChildVisible(Actor child);
+
+  /**
+   * @brief Makes sure this actor is visible (when moving the highlight frame to an
+   * actor that is scrolled out of the viewport)
+   */
+  virtual void EnsureSelfVisible();
+
+  /**
+   * @brief Returns the index of the property that represents this actor's name
+   */
+  virtual Dali::Property::Index GetNamePropertyIndex();
+
+  /**
+   * @brief Returns the index of the property that represents this actor's description
+   */
+  virtual Dali::Property::Index GetDescriptionPropertyIndex();
+};
+
+} // namespace Dali::Toolkit::DevelControl
+
+#endif // DALI_TOOLKIT_ACCESSIBLE_IMPL_H
index c9d13f2..3d340ec 100644 (file)
@@ -22,6 +22,7 @@
 #include <dali/devel-api/adaptor-framework/input-method-context.h>
 
 // INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/controls/accessible-impl.h>
 #include <dali-toolkit/devel-api/visual-factory/visual-base.h>
 #include <dali-toolkit/public-api/controls/control.h>
 
index f43ca09..0e1ec7d 100755 (executable)
@@ -9,6 +9,7 @@ SET( devel_api_src_files
   ${devel_api_src_dir}/builder/builder.cpp
   ${devel_api_src_dir}/builder/json-parser.cpp
   ${devel_api_src_dir}/builder/tree-node.cpp
+  ${devel_api_src_dir}/controls/accessible-impl.cpp
   ${devel_api_src_dir}/controls/control-devel.cpp
   ${devel_api_src_dir}/controls/control-wrapper.cpp
   ${devel_api_src_dir}/controls/control-wrapper-impl.cpp
@@ -81,6 +82,7 @@ SET( devel_api_accessibility-manager_header_files
 )
 
 SET( devel_api_controls_header_files
+  ${devel_api_src_dir}/controls/accessible-impl.h
   ${devel_api_src_dir}/controls/control-depth-index-ranges.h
   ${devel_api_src_dir}/controls/control-devel.h
   ${devel_api_src_dir}/controls/control-wrapper.h
index ac7a72f..1c2271c 100644 (file)
@@ -25,7 +25,7 @@
 #include <dali/public-api/size-negotiation/relayout-container.h>
 
 // INTERNAL INCLUDES
-#include <dali-toolkit/internal/controls/control/control-data-impl.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 
 namespace Dali
 {
@@ -189,7 +189,7 @@ void Alignment::OnInitialize()
 {
   DevelControl::SetAccessibilityConstructor(Self(), [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
   });
 }
 
index b685219..55259db 100644 (file)
@@ -32,8 +32,8 @@
 
 // INTERNAL INCLUDES
 #include <dali-toolkit/devel-api/controls/bloom-view/bloom-view.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/devel-api/controls/gaussian-blur-view/gaussian-blur-view.h>
-#include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/internal/controls/control/control-renderers.h>
 #include <dali-toolkit/internal/controls/gaussian-blur-view/gaussian-blur-view-impl.h>
 #include <dali-toolkit/internal/graphics/builtin-shader-extern-gen.h>
@@ -219,7 +219,7 @@ void BloomView::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(Self(), [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::ANIMATION));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::ANIMATION));
   });
 }
 
index c242bc6..2b830fa 100644 (file)
@@ -1331,7 +1331,7 @@ Property::Index Button::AccessibleImpl::GetNamePropertyIndex()
 
 Dali::Accessibility::States Button::AccessibleImpl::CalculateStates()
 {
-  auto tmp                                    = Control::Impl::AccessibleImpl::CalculateStates();
+  auto tmp                                    = DevelControl::AccessibleImpl::CalculateStates();
   tmp[Dali::Accessibility::State::SELECTABLE] = true;
   auto slf                                    = Toolkit::Button::DownCast(self);
   tmp[Dali::Accessibility::State::ENABLED]    = !slf.GetProperty<bool>(Toolkit::Button::Property::DISABLED);
index 315e4c5..ced51fd 100644 (file)
@@ -24,8 +24,8 @@
 
 // INTERNAL INCLUDES
 #include <dali-toolkit/devel-api/controls/buttons/button-devel.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/devel-api/visual-factory/visual-base.h>
-#include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/public-api/controls/control-impl.h>
 
 namespace Dali
@@ -535,9 +535,9 @@ private:
   bool mClickActionPerforming; ///< Used to manage signal emissions during action
 
 protected:
-  struct AccessibleImpl : public Control::Impl::AccessibleImpl
+  struct AccessibleImpl : public DevelControl::AccessibleImpl
   {
-    using Control::Impl::AccessibleImpl::AccessibleImpl;
+    using DevelControl::AccessibleImpl::AccessibleImpl;
 
     Dali::Accessibility::States CalculateStates() override;
     std::string                 GetNameRaw() override;
index ff1ca1e..1c48bc1 100644 (file)
@@ -463,8 +463,8 @@ Control::Impl::Impl(Control& controlImpl)
     });
 
   accessibilityConstructor = [](Dali::Actor actor) -> std::unique_ptr<Dali::Accessibility::Accessible> {
-    return std::unique_ptr<Dali::Accessibility::Accessible>(new AccessibleImpl(actor,
-                                                                               Dali::Accessibility::Role::UNKNOWN));
+    return std::unique_ptr<Dali::Accessibility::Accessible>(new DevelControl::AccessibleImpl(actor,
+                                                                                             Dali::Accessibility::Role::UNKNOWN));
   };
 
   size_t len = static_cast<size_t>(Dali::Accessibility::RelationType::MAX_COUNT);
@@ -1903,387 +1903,6 @@ Dali::Accessibility::Accessible* Control::Impl::GetAccessibilityObject(Dali::Act
   return nullptr;
 }
 
-Control::Impl::AccessibleImpl::AccessibleImpl(Dali::Actor self, Dali::Accessibility::Role role, bool modal)
-: self(self),
-  modal(modal)
-{
-  auto control = Dali::Toolkit::Control::DownCast(self);
-
-  Internal::Control&       internalControl = Toolkit::Internal::GetImplementation(control);
-  Internal::Control::Impl& controlImpl     = Internal::Control::Impl::Get(internalControl);
-  if(controlImpl.mAccessibilityRole == Dali::Accessibility::Role::UNKNOWN)
-    controlImpl.mAccessibilityRole = role;
-
-  self.PropertySetSignal().Connect(&controlImpl, [this, &controlImpl](Dali::Handle& handle, Dali::Property::Index index, Dali::Property::Value value) {
-    if(this->self != Dali::Accessibility::Accessible::GetCurrentlyHighlightedActor())
-    {
-      return;
-    }
-
-    if(index == DevelControl::Property::ACCESSIBILITY_NAME || (index == GetNamePropertyIndex() && !controlImpl.mAccessibilityNameSet))
-    {
-      if(controlImpl.mAccessibilityGetNameSignal.Empty())
-      {
-        Emit(Dali::Accessibility::ObjectPropertyChangeEvent::NAME);
-      }
-    }
-
-    if(index == DevelControl::Property::ACCESSIBILITY_DESCRIPTION || (index == GetDescriptionPropertyIndex() && !controlImpl.mAccessibilityDescriptionSet))
-    {
-      if(controlImpl.mAccessibilityGetDescriptionSignal.Empty())
-      {
-        Emit(Dali::Accessibility::ObjectPropertyChangeEvent::DESCRIPTION);
-      }
-    }
-  });
-}
-
-std::string Control::Impl::AccessibleImpl::GetName()
-{
-  auto control = Dali::Toolkit::Control::DownCast(self);
-
-  Internal::Control&       internalControl = Toolkit::Internal::GetImplementation(control);
-  Internal::Control::Impl& controlImpl     = Internal::Control::Impl::Get(internalControl);
-
-  if(!controlImpl.mAccessibilityGetNameSignal.Empty())
-  {
-    std::string ret;
-    controlImpl.mAccessibilityGetNameSignal.Emit(ret);
-    return ret;
-  }
-
-  if(controlImpl.mAccessibilityNameSet)
-    return controlImpl.mAccessibilityName;
-
-  if(auto raw = GetNameRaw(); !raw.empty())
-    return raw;
-
-  return self.GetProperty<std::string>(Actor::Property::NAME);
-}
-
-std::string Control::Impl::AccessibleImpl::GetNameRaw()
-{
-  return {};
-}
-
-std::string Control::Impl::AccessibleImpl::GetDescription()
-{
-  auto control = Dali::Toolkit::Control::DownCast(self);
-
-  Internal::Control&       internalControl = Toolkit::Internal::GetImplementation(control);
-  Internal::Control::Impl& controlImpl     = Internal::Control::Impl::Get(internalControl);
-
-  if(!controlImpl.mAccessibilityGetDescriptionSignal.Empty())
-  {
-    std::string ret;
-    controlImpl.mAccessibilityGetDescriptionSignal.Emit(ret);
-    return ret;
-  }
-
-  if(controlImpl.mAccessibilityDescriptionSet)
-    return controlImpl.mAccessibilityDescription;
-
-  return GetDescriptionRaw();
-}
-
-std::string Control::Impl::AccessibleImpl::GetDescriptionRaw()
-{
-  return "";
-}
-
-Dali::Accessibility::Accessible* Control::Impl::AccessibleImpl::GetParent()
-{
-  return Dali::Accessibility::Accessible::Get(self.GetParent());
-}
-
-size_t Control::Impl::AccessibleImpl::GetChildCount()
-{
-  return self.GetChildCount();
-}
-
-Dali::Accessibility::Accessible* Control::Impl::AccessibleImpl::GetChildAtIndex(size_t index)
-{
-  return Dali::Accessibility::Accessible::Get(self.GetChildAt(static_cast<unsigned int>(index)));
-}
-
-size_t Control::Impl::AccessibleImpl::GetIndexInParent()
-{
-  auto s      = self;
-  auto parent = s.GetParent();
-  DALI_ASSERT_ALWAYS(parent && "can't call GetIndexInParent on object without parent");
-  auto count = parent.GetChildCount();
-  for(auto i = 0u; i < count; ++i)
-  {
-    auto c = parent.GetChildAt(i);
-    if(c == s)
-      return i;
-  }
-  DALI_ASSERT_ALWAYS(false && "object isn't child of it's parent");
-  return static_cast<size_t>(-1);
-}
-
-Dali::Accessibility::Role Control::Impl::AccessibleImpl::GetRole()
-{
-  return self.GetProperty<Dali::Accessibility::Role>(Toolkit::DevelControl::Property::ACCESSIBILITY_ROLE);
-}
-
-Dali::Accessibility::States Control::Impl::AccessibleImpl::CalculateStates()
-{
-  Dali::Accessibility::States s;
-  s[Dali::Accessibility::State::FOCUSABLE] = self.GetProperty<bool>(Actor::Property::KEYBOARD_FOCUSABLE);
-  s[Dali::Accessibility::State::FOCUSED]   = Toolkit::KeyboardFocusManager::Get().GetCurrentFocusActor() == self;
-  if(self.GetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE).GetType() == Property::NONE)
-    s[Dali::Accessibility::State::HIGHLIGHTABLE] = false;
-  else
-    s[Dali::Accessibility::State::HIGHLIGHTABLE] = self.GetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE).Get<bool>();
-  s[Dali::Accessibility::State::HIGHLIGHTED] = GetCurrentlyHighlightedActor() == self;
-  s[Dali::Accessibility::State::ENABLED]     = true;
-  s[Dali::Accessibility::State::SENSITIVE]   = true;
-  s[Dali::Accessibility::State::ANIMATED]    = self.GetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_ANIMATED).Get<bool>();
-  s[Dali::Accessibility::State::VISIBLE]     = true;
-  if(modal)
-  {
-    s[Dali::Accessibility::State::MODAL] = true;
-  }
-  s[Dali::Accessibility::State::SHOWING] = !self.GetProperty(Dali::DevelActor::Property::CULLED).Get<bool>() && self.GetCurrentProperty<bool>(Actor::Property::VISIBLE);
-
-  s[Dali::Accessibility::State::DEFUNCT] = !self.GetProperty(Dali::DevelActor::Property::CONNECTED_TO_SCENE).Get<bool>();
-  return s;
-}
-
-Dali::Accessibility::States Control::Impl::AccessibleImpl::GetStates()
-{
-  return CalculateStates();
-}
-
-Dali::Accessibility::Attributes Control::Impl::AccessibleImpl::GetAttributes()
-{
-  std::unordered_map<std::string, std::string> attribute_map;
-  auto                                         q = Dali::Toolkit::Control::DownCast(self);
-  auto                                         w =
-    q.GetProperty(Dali::Toolkit::DevelControl::Property::ACCESSIBILITY_ATTRIBUTES);
-  auto z = w.GetMap();
-
-  if(z)
-  {
-    auto map_size = z->Count();
-
-    for(unsigned int i = 0; i < map_size; i++)
-    {
-      auto map_key = z->GetKeyAt(i);
-      if(map_key.type == Property::Key::STRING)
-      {
-        std::string map_value;
-        if(z->GetValue(i).Get(map_value))
-        {
-          attribute_map.emplace(std::move(map_key.stringKey),
-                                std::move(map_value));
-        }
-      }
-    }
-  }
-
-  return attribute_map;
-}
-
-Dali::Accessibility::ComponentLayer Control::Impl::AccessibleImpl::GetLayer()
-{
-  return Dali::Accessibility::ComponentLayer::WINDOW;
-}
-
-Dali::Rect<> Control::Impl::AccessibleImpl::GetExtents(Dali::Accessibility::CoordType ctype)
-{
-  Vector2 screenPosition =
-    self.GetProperty(Dali::DevelActor::Property::SCREEN_POSITION)
-      .Get<Vector2>();
-  auto size = self.GetCurrentProperty<Vector3>(Actor::Property::SIZE) * self.GetCurrentProperty<Vector3>(Actor::Property::WORLD_SCALE);
-  bool positionUsesAnchorPoint =
-    self.GetProperty(Dali::DevelActor::Property::POSITION_USES_ANCHOR_POINT)
-      .Get<bool>();
-  Vector3 anchorPointOffSet =
-    size * (positionUsesAnchorPoint ? self.GetCurrentProperty<Vector3>(Actor::Property::ANCHOR_POINT)
-                                    : AnchorPoint::TOP_LEFT);
-  Vector2 position = Vector2(screenPosition.x - anchorPointOffSet.x,
-                             screenPosition.y - anchorPointOffSet.y);
-
-  return {position.x, position.y, size.x, size.y};
-}
-
-int16_t Control::Impl::AccessibleImpl::GetMdiZOrder()
-{
-  return 0;
-}
-double Control::Impl::AccessibleImpl::GetAlpha()
-{
-  return 0;
-}
-
-bool Control::Impl::AccessibleImpl::GrabFocus()
-{
-  return Toolkit::KeyboardFocusManager::Get().SetCurrentFocusActor(self);
-}
-
-static Dali::Actor CreateHighlightIndicatorActor()
-{
-  std::string focusBorderImagePath(AssetManager::GetDaliImagePath());
-  focusBorderImagePath += "/keyboard_focus.9.png";
-  // Create the default if it hasn't been set and one that's shared by all the
-  // keyboard focusable actors
-  auto actor = Toolkit::ImageView::New(focusBorderImagePath);
-  actor.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS);
-  DevelControl::AppendAccessibilityAttribute(actor, "highlight", "");
-  actor.SetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_ANIMATED, true);
-  actor.SetProperty(Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE, false);
-
-  return actor;
-}
-
-bool Control::Impl::AccessibleImpl::GrabHighlight()
-{
-  auto old = GetCurrentlyHighlightedActor();
-
-  if(!Dali::Accessibility::IsUp())
-    return false;
-  if(self == old)
-    return true;
-  if(old)
-  {
-    auto c = dynamic_cast<Dali::Accessibility::Component*>(GetAccessibilityObject(old));
-    if(c)
-      c->ClearHighlight();
-  }
-  auto highlight = GetHighlightActor();
-  if(!highlight)
-  {
-    highlight = CreateHighlightIndicatorActor();
-    SetHighlightActor(highlight);
-  }
-  highlight.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER);
-  highlight.SetProperty(Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER);
-  highlight.SetProperty(Actor::Property::POSITION_Z, 1.0f);
-  highlight.SetProperty(Actor::Property::POSITION, Vector2(0.0f, 0.0f));
-
-  EnsureSelfVisible();
-  self.Add(highlight);
-  SetCurrentlyHighlightedActor(self);
-  EmitHighlighted(true);
-
-  return true;
-}
-
-bool Control::Impl::AccessibleImpl::ClearHighlight()
-{
-  if(!Dali::Accessibility::IsUp())
-    return false;
-  if(GetCurrentlyHighlightedActor() == self)
-  {
-    self.Remove(GetHighlightActor());
-    SetCurrentlyHighlightedActor({});
-    EmitHighlighted(false);
-    return true;
-  }
-  return false;
-}
-
-std::string Control::Impl::AccessibleImpl::GetActionName(size_t index)
-{
-  if(index >= GetActionCount()) return "";
-  Dali::TypeInfo type;
-  self.GetTypeInfo(type);
-  DALI_ASSERT_ALWAYS(type && "no TypeInfo object");
-  return type.GetActionName(index);
-}
-std::string Control::Impl::AccessibleImpl::GetLocalizedActionName(size_t index)
-{
-  // TODO: add localization
-  return GetActionName(index);
-}
-std::string Control::Impl::AccessibleImpl::GetActionDescription(size_t index)
-{
-  return "";
-}
-size_t Control::Impl::AccessibleImpl::GetActionCount()
-{
-  Dali::TypeInfo type;
-  self.GetTypeInfo(type);
-  DALI_ASSERT_ALWAYS(type && "no TypeInfo object");
-  return type.GetActionCount();
-}
-std::string Control::Impl::AccessibleImpl::GetActionKeyBinding(size_t index)
-{
-  return "";
-}
-bool Control::Impl::AccessibleImpl::DoAction(size_t index)
-{
-  std::string actionName = GetActionName(index);
-  return self.DoAction(actionName, {});
-}
-bool Control::Impl::AccessibleImpl::DoAction(const std::string& name)
-{
-  return self.DoAction(name, {});
-}
-
-bool Control::Impl::AccessibleImpl::DoGesture(const Dali::Accessibility::GestureInfo& gestureInfo)
-{
-  auto control = Dali::Toolkit::Control::DownCast(self);
-
-  Internal::Control&       internalControl = Toolkit::Internal::GetImplementation(control);
-  Internal::Control::Impl& controlImpl     = Internal::Control::Impl::Get(internalControl);
-
-  if(!controlImpl.mAccessibilityDoGestureSignal.Empty())
-  {
-    auto ret = std::make_pair(gestureInfo, false);
-    controlImpl.mAccessibilityDoGestureSignal.Emit(ret);
-    return ret.second;
-  }
-
-  return false;
-}
-
-std::vector<Dali::Accessibility::Relation> Control::Impl::AccessibleImpl::GetRelationSet()
-{
-  auto control = Dali::Toolkit::Control::DownCast(self);
-
-  Internal::Control&       internalControl = Toolkit::Internal::GetImplementation(control);
-  Internal::Control::Impl& controlImpl     = Internal::Control::Impl::Get(internalControl);
-
-  std::vector<Dali::Accessibility::Relation> ret;
-
-  auto& v = controlImpl.mAccessibilityRelations;
-  for(auto i = 0u; i < v.size(); ++i)
-  {
-    if(v[i].empty())
-      continue;
-
-    ret.emplace_back(Accessibility::Relation{static_cast<Accessibility::RelationType>(i), v[i]});
-  }
-
-  return ret;
-}
-
-void Control::Impl::AccessibleImpl::EnsureChildVisible(Actor child)
-{
-}
-
-void Control::Impl::AccessibleImpl::EnsureSelfVisible()
-{
-  auto parent = dynamic_cast<Control::Impl::AccessibleImpl*>(GetParent());
-  if(parent)
-  {
-    parent->EnsureChildVisible(self);
-  }
-}
-
-Property::Index Control::Impl::AccessibleImpl::GetNamePropertyIndex()
-{
-  return Actor::Property::NAME;
-}
-
-Property::Index Control::Impl::AccessibleImpl::GetDescriptionPropertyIndex()
-{
-  return Property::INVALID_INDEX;
-}
-
 void Control::Impl::PositionOrSizeChangedCallback(PropertyNotification& p)
 {
   auto self = Dali::Actor::DownCast(p.GetTarget());
index d944114..492461e 100644 (file)
@@ -69,6 +69,8 @@ typedef Dali::OwnerContainer<RegisteredVisual*> RegisteredVisualContainer;
  */
 class Control::Impl : public ConnectionTracker, public Visual::EventObserver
 {
+  friend class Toolkit::DevelControl::AccessibleImpl;
+
 public:
   /**
    * @brief Retrieves the implementation of the internal control class.
@@ -544,52 +546,6 @@ public:
   void AccessibilityRegister();
   void AccessibilityDeregister();
 
-  struct AccessibleImpl : public virtual Dali::Accessibility::Accessible,
-                          public virtual Dali::Accessibility::Component,
-                          public virtual Dali::Accessibility::Collection,
-                          public virtual Dali::Accessibility::Action
-  {
-    Dali::Actor self;
-    bool        modal = false, root = false;
-
-    AccessibleImpl(Dali::Actor self, Dali::Accessibility::Role role, bool modal = false);
-
-    std::string                         GetName() override;
-    virtual std::string                 GetNameRaw();
-    std::string                         GetDescription() override;
-    virtual std::string                 GetDescriptionRaw();
-    Dali::Accessibility::Accessible*    GetParent() override;
-    size_t                              GetChildCount() override;
-    Dali::Accessibility::Accessible*    GetChildAtIndex(size_t index) override;
-    size_t                              GetIndexInParent() override;
-    Dali::Accessibility::Role           GetRole() override;
-    Dali::Accessibility::States         GetStates() override;
-    Dali::Accessibility::Attributes     GetAttributes() override;
-    Dali::Rect<>                        GetExtents(Dali::Accessibility::CoordType ctype) override;
-    Dali::Accessibility::ComponentLayer GetLayer() override;
-    int16_t                             GetMdiZOrder() override;
-    bool                                GrabFocus() override;
-    double                              GetAlpha() override;
-    bool                                GrabHighlight() override;
-    bool                                ClearHighlight() override;
-
-    std::string                                GetActionName(size_t index) override;
-    std::string                                GetLocalizedActionName(size_t index) override;
-    std::string                                GetActionDescription(size_t index) override;
-    size_t                                     GetActionCount() override;
-    std::string                                GetActionKeyBinding(size_t index) override;
-    bool                                       DoAction(size_t index) override;
-    bool                                       DoAction(const std::string& name) override;
-    bool                                       DoGesture(const Dali::Accessibility::GestureInfo& gestureInfo) override;
-    std::vector<Dali::Accessibility::Relation> GetRelationSet() override;
-
-    virtual Dali::Accessibility::States CalculateStates();
-    virtual void                        EnsureChildVisible(Actor child);
-    virtual void                        EnsureSelfVisible();
-    virtual Property::Index             GetNamePropertyIndex();
-    virtual Property::Index             GetDescriptionPropertyIndex();
-  };
-
   std::function<std::unique_ptr<Dali::Accessibility::Accessible>(Actor)> accessibilityConstructor;
   std::unique_ptr<Dali::Accessibility::Accessible>                       accessibilityObject;
   Dali::PropertyNotification                                             accessibilityNotificationPosition, accessibilityNotificationSize, accessibilityNotificationCulled;
index 2bc36e0..88fa83f 100644 (file)
@@ -236,7 +236,7 @@ void EffectsView::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(self, [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
   });
 }
 
index 263d0c9..111e480 100644 (file)
@@ -28,8 +28,7 @@
 #include <dali/public-api/size-negotiation/relayout-container.h>
 #include <sstream>
 
-// INTERNAL INCLUDES
-#include <dali-toolkit/internal/controls/control/control-data-impl.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 
 using namespace Dali;
 
@@ -837,7 +836,7 @@ void FlexContainer::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(self, [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
   });
 }
 
index 961ff9f..29d36b1 100644 (file)
@@ -34,6 +34,7 @@
 #include <sstream>
 
 // INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/internal/controls/control/control-renderers.h>
 #include <dali-toolkit/internal/graphics/builtin-shader-extern-gen.h>
@@ -296,7 +297,7 @@ void GaussianBlurView::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(Self(), [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
   });
 }
 
@@ -560,7 +561,7 @@ void GaussianBlurView::SetShaderConstants()
   uvOffsets[0].x            = 0.0f;
   uvOffsets[0].y            = 0.0f;
 
-  for(i = 0; i < mNumSamples >> 1; i++)
+  for(i = 0; i<mNumSamples >> 1; i++)
   {
     w                     = CalcGaussianWeight((float)(i + 1));
     weights[(i << 1) + 1] = w;
index 091e341..513960f 100644 (file)
@@ -95,7 +95,7 @@ void ImageView::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(Self(), [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::IMAGE));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::IMAGE));
   });
 
   //Enable highightability
index 11fa7a7..e37a534 100644 (file)
@@ -28,6 +28,7 @@
 #include <dali/public-api/render-tasks/render-task-list.h>
 
 // INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
 #include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/internal/visuals/visual-factory-impl.h>
@@ -219,7 +220,7 @@ void Magnifier::Initialize()
 
   DevelControl::SetAccessibilityConstructor(self, [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
   });
 }
 
index 492f529..f9bf491 100644 (file)
@@ -29,6 +29,7 @@
 #include <dali/public-api/object/type-registry.h>
 
 // INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/internal/controls/model3d-view/obj-loader.h>
 #include <dali-toolkit/internal/graphics/builtin-shader-extern-gen.h>
@@ -281,7 +282,7 @@ void Model3dView::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(Self(), [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::IMAGE));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::IMAGE));
   });
 }
 
index 47906cd..3dd6909 100644 (file)
@@ -22,7 +22,7 @@
 #include <dali/public-api/object/type-registry-helper.h>
 
 // INTERNAL INCLUDES
-#include <dali-toolkit/internal/controls/control/control-data-impl.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 
 namespace Dali
 {
@@ -72,7 +72,7 @@ void NavigationView::OnInitialize()
 {
   DevelControl::SetAccessibilityConstructor(Self(), [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
   });
 }
 
index 974dbcf..d74574c 100644 (file)
@@ -27,6 +27,7 @@
 #include <cstring> // for strcmp
 
 // INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/internal/controls/page-turn-view/page-turn-book-spine-effect.h>
 #include <dali-toolkit/internal/controls/page-turn-view/page-turn-effect.h>
@@ -415,7 +416,7 @@ void PageTurnView::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(Self(), [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::PAGE_TAB_LIST));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::PAGE_TAB_LIST));
   });
 }
 
index 768a978..edb0929 100644 (file)
@@ -36,6 +36,7 @@
 // INTERNAL INCLUDES
 #include <dali-toolkit/dali-toolkit.h>
 #include <dali-toolkit/devel-api/asset-manager/asset-manager.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/internal/focus-manager/keyboard-focus-manager-impl.h>
 #include <dali-toolkit/public-api/controls/control-impl.h>
@@ -2025,7 +2026,7 @@ std::string Popup::AccessibleImpl::GetNameRaw()
 
 Dali::Accessibility::States Popup::AccessibleImpl::CalculateStates()
 {
-  auto states       = Control::Impl::AccessibleImpl::CalculateStates();
+  auto states       = DevelControl::AccessibleImpl::CalculateStates();
   auto popup        = Toolkit::Popup::DownCast(self);
   auto displayState = popup.GetProperty<std::string>(Toolkit::Popup::Property::DISPLAY_STATE);
 
index 5d9eae3..630caa8 100644 (file)
@@ -25,6 +25,7 @@
 #include <dali/public-api/animation/animation.h>
 
 // INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/devel-api/controls/popup/popup.h>
 #include <dali-toolkit/devel-api/controls/table-view/table-view.h>
 #include <dali-toolkit/internal/controls/control/control-data-impl.h>
@@ -240,9 +241,9 @@ public:
   static Property::Value GetProperty(BaseObject* object, Property::Index propertyIndex);
 
 protected:
-  struct AccessibleImpl : public Control::Impl::AccessibleImpl
+  struct AccessibleImpl : public DevelControl::AccessibleImpl
   {
-    using Control::Impl::AccessibleImpl::AccessibleImpl;
+    using DevelControl::AccessibleImpl::AccessibleImpl;
 
     std::string                 GetNameRaw() override;
     Dali::Accessibility::States CalculateStates() override;
index 12ccab6..2df2b77 100644 (file)
@@ -23,6 +23,7 @@
 #include <dali-toolkit/devel-api/visual-factory/visual-base.h>
 #include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
 #include <dali-toolkit/devel-api/visuals/arc-visual-properties-devel.h>
+#include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/internal/visuals/visual-base-impl.h>
 #include <dali-toolkit/internal/visuals/visual-string-constants.h>
 #include <dali-toolkit/public-api/align-enumerations.h>
index f806926..9ff203a 100644 (file)
@@ -19,6 +19,7 @@
  */
 
 // INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/devel-api/controls/progress-bar/progress-bar-devel.h>
 #include <dali-toolkit/devel-api/visual-factory/transition-data.h>
 #include <dali-toolkit/internal/controls/control/control-data-impl.h>
@@ -261,10 +262,10 @@ private:
   Property::Map           mSecondaryProgressVisualMap;    ///< To backup visual properties when switching determinate/indeterminate.
 
 protected:
-  struct AccessibleImpl : public Control::Impl::AccessibleImpl,
+  struct AccessibleImpl : public DevelControl::AccessibleImpl,
                           public virtual Dali::Accessibility::Value
   {
-    using Control::Impl::AccessibleImpl::AccessibleImpl;
+    using DevelControl::AccessibleImpl::AccessibleImpl;
     double GetMinimum() override;
     double GetCurrent() override;
     double GetMaximum() override;
index 4701d6c..5716c5e 100644 (file)
@@ -31,6 +31,7 @@
 
 // INTERNAL INCLUDES
 #include <dali-toolkit/devel-api/asset-manager/asset-manager.h>
+#include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/internal/controls/scrollable/item-view/item-view-impl.h>
 #include <dali-toolkit/public-api/controls/image-view/image-view.h>
 
index be77d6c..abb5200 100644 (file)
@@ -27,6 +27,7 @@
 #include <dali/public-api/object/weak-handle.h>
 
 // INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/devel-api/controls/scroll-bar/scroll-bar.h>
 #include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/public-api/controls/control-impl.h>
@@ -312,10 +313,10 @@ private:
   bool mIndicatorFirstShow : 1; ///< True if the indicator has never been shown
 
 protected:
-  struct AccessibleImpl : public Control::Impl::AccessibleImpl,
+  struct AccessibleImpl : public DevelControl::AccessibleImpl,
                           public virtual Dali::Accessibility::Value
   {
-    using Control::Impl::AccessibleImpl::AccessibleImpl;
+    using DevelControl::AccessibleImpl::AccessibleImpl;
     double GetMinimum() override;
     double GetCurrent() override;
     double GetMaximum() override;
index 73ff256..4240a1e 100644 (file)
@@ -22,6 +22,7 @@
 #include <dali/public-api/animation/alpha-function.h>
 
 // INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/public-api/controls/control-impl.h>
 #include <dali-toolkit/public-api/controls/scrollable/scrollable.h>
@@ -116,9 +117,9 @@ public:
   virtual void SetOvershootSize(const Vector2& size) = 0;
 
 protected: // From Control
-  struct AccessibleImpl : public Control::Impl::AccessibleImpl
+  struct AccessibleImpl : public DevelControl::AccessibleImpl
   {
-    using Control::Impl::AccessibleImpl::AccessibleImpl;
+    using DevelControl::AccessibleImpl::AccessibleImpl;
 
     bool IsScrollable() override;
   };
index 6440bb0..612a9a4 100644 (file)
@@ -30,6 +30,7 @@
 #include <sstream>
 
 // INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/internal/controls/control/control-renderers.h>
 #include <dali-toolkit/internal/controls/shadow-view/shadow-view-impl.h>
@@ -257,7 +258,7 @@ void ShadowView::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(Self(), [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
   });
 }
 
index 6829485..34da9ff 100644 (file)
@@ -28,6 +28,7 @@
 
 // INTERNAL INCLUDES
 #include <dali-toolkit/devel-api/asset-manager/asset-manager.h>
+#include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/public-api/controls/control-impl.h>
 #include <dali-toolkit/public-api/controls/image-view/image-view.h>
 #include <dali-toolkit/public-api/visuals/image-visual-properties.h>
index 6e2a324..134b9f2 100644 (file)
@@ -24,6 +24,7 @@
 #include <dali/public-api/object/property-map.h>
 
 // INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/public-api/controls/control-impl.h>
 #include <dali-toolkit/public-api/controls/image-view/image-view.h>
@@ -747,10 +748,10 @@ private:
     mSnapToMarks : 1;  ///< Turn on or off snapping to marks
 
 protected:
-  struct AccessibleImpl : public Control::Impl::AccessibleImpl,
+  struct AccessibleImpl : public DevelControl::AccessibleImpl,
                           public virtual Dali::Accessibility::Value
   {
-    using Control::Impl::AccessibleImpl::AccessibleImpl;
+    using DevelControl::AccessibleImpl::AccessibleImpl;
     double GetMinimum() override;
     double GetCurrent() override;
     double GetMaximum() override;
index b1e60c7..6325e62 100644 (file)
@@ -151,7 +151,7 @@ void SuperBlurView::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(self, [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::FILLER));
   });
 }
 
index f5c3cc4..4b3e019 100644 (file)
@@ -29,7 +29,7 @@
 #include <sstream>
 
 // INTERNAL INCLUDES
-#include <dali-toolkit/internal/controls/control/control-data-impl.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 
 using namespace Dali;
 
@@ -1121,7 +1121,7 @@ void TableView::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(self, [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::TABLE));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::TABLE));
   });
 }
 
index 42f9926..4e7d3f0 100644 (file)
@@ -36,6 +36,7 @@
 #include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/devel-api/focus-manager/keyinput-focus-manager.h>
 #include <dali-toolkit/devel-api/text/rendering-backend.h>
+#include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/internal/styling/style-manager-impl.h>
 #include <dali-toolkit/internal/text/rendering/text-backend.h>
 #include <dali-toolkit/internal/text/text-effects-style.h>
@@ -2199,7 +2200,7 @@ Dali::Accessibility::States TextEditor::AccessibleImpl::CalculateStates()
 {
   using namespace Dali::Accessibility;
 
-  auto states              = Control::Impl::AccessibleImpl::CalculateStates();
+  auto states              = DevelControl::AccessibleImpl::CalculateStates();
   states[State::EDITABLE]  = true;
   states[State::FOCUSABLE] = true;
 
index ed8d039..866c444 100644 (file)
@@ -25,6 +25,7 @@
 #include <dali/public-api/animation/animation.h>
 
 // INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/devel-api/controls/scroll-bar/scroll-bar.h>
 #include <dali-toolkit/devel-api/controls/text-controls/text-editor-devel.h>
 #include <dali-toolkit/internal/controls/control/control-data-impl.h>
@@ -402,11 +403,11 @@ private: // Data
   bool  mScrollBarEnabled : 1;
   bool  mScrollStarted : 1;
 
-  struct AccessibleImpl : public Control::Impl::AccessibleImpl,
+  struct AccessibleImpl : public DevelControl::AccessibleImpl,
                           public virtual Dali::Accessibility::Text,
                           public virtual Dali::Accessibility::EditableText
   {
-    using Control::Impl::AccessibleImpl::AccessibleImpl;
+    using DevelControl::AccessibleImpl::AccessibleImpl;
 
     std::string           GetName() override;
     std::string           GetText(size_t startOffset, size_t endOffset) override;
index 9ad7a84..8b60fbe 100644 (file)
@@ -2081,7 +2081,7 @@ Dali::Accessibility::States TextField::AccessibleImpl::CalculateStates()
 {
   using namespace Dali::Accessibility;
 
-  auto states = Control::Impl::AccessibleImpl::CalculateStates();
+  auto states = DevelControl::AccessibleImpl::CalculateStates();
 
   states[State::EDITABLE]  = true;
   states[State::FOCUSABLE] = true;
index dbafa30..2fae0bb 100644 (file)
@@ -23,6 +23,7 @@
 #include <dali/devel-api/adaptor-framework/input-method-context.h>
 
 // INTERNAL INCLUDES
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/internal/controls/control/control-data-impl.h>
 #include <dali-toolkit/internal/text/decorator/text-decorator.h>
 #include <dali-toolkit/internal/text/rendering/text-renderer.h>
@@ -358,11 +359,11 @@ private: // Data
   bool  mHasBeenStaged : 1;
 
 protected:
-  struct AccessibleImpl : public Control::Impl::AccessibleImpl,
+  struct AccessibleImpl : public DevelControl::AccessibleImpl,
                           public virtual Dali::Accessibility::Text,
                           public virtual Dali::Accessibility::EditableText
   {
-    using Control::Impl::AccessibleImpl::AccessibleImpl;
+    using DevelControl::AccessibleImpl::AccessibleImpl;
 
     std::string           GetName() override;
     std::string           GetText(size_t startOffset, size_t endOffset) override;
index 87a80e0..e9ad7a7 100644 (file)
@@ -159,10 +159,10 @@ private: // Data
   bool mTextUpdateNeeded : 1;
 
 protected:
-  struct AccessibleImpl : public Control::Impl::AccessibleImpl,
+  struct AccessibleImpl : public DevelControl::AccessibleImpl,
                           public virtual Dali::Accessibility::Text
   {
-    using Control::Impl::AccessibleImpl::AccessibleImpl;
+    using DevelControl::AccessibleImpl::AccessibleImpl;
 
     std::string          GetText(size_t startOffset, size_t endOffset) override;
     size_t               GetCharacterCount() override;
index ebc01b6..bccfe84 100644 (file)
@@ -386,7 +386,7 @@ void TextSelectionPopup::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(Self(), [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::DIALOG, true));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::DIALOG, true));
   });
 
   //Enable highightability
index 2e1251e..ba2b8d5 100644 (file)
@@ -27,7 +27,7 @@
 
 // INTERNAL INCLUDES
 #include <dali-toolkit/devel-api/controls/control-depth-index-ranges.h>
-#include <dali-toolkit/internal/controls/control/control-data-impl.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/internal/helpers/color-conversion.h>
 #include <dali-toolkit/public-api/controls/image-view/image-view.h>
 
@@ -166,7 +166,7 @@ void TextSelectionToolbar::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(Self(), [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::TOOL_BAR));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::TOOL_BAR));
   });
 }
 
index a0cd9e4..2aefaaf 100644 (file)
@@ -25,7 +25,7 @@
 
 // INTERNAL INCLUDES
 #include <dali-toolkit/devel-api/controls/alignment/alignment.h>
-#include <dali-toolkit/internal/controls/control/control-data-impl.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 
 namespace Dali
 {
@@ -313,7 +313,7 @@ void ToolBar::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(Self(), [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::TOOL_BAR));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::TOOL_BAR));
   });
 }
 
index d45b21f..5608105 100644 (file)
@@ -30,7 +30,7 @@
 #include <cstring>
 
 // INTERNAL INCLUDES
-#include <dali-toolkit/internal/controls/control/control-data-impl.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 #include <dali-toolkit/internal/graphics/builtin-shader-extern-gen.h>
 #include <dali-toolkit/internal/visuals/visual-factory-cache.h>
 #include <dali-toolkit/public-api/controls/video-view/video-view.h>
@@ -115,7 +115,7 @@ void VideoView::OnInitialize()
 
   DevelControl::SetAccessibilityConstructor(Self(), [](Dali::Actor actor) {
     return std::unique_ptr<Dali::Accessibility::Accessible>(
-      new Control::Impl::AccessibleImpl(actor, Dali::Accessibility::Role::VIDEO));
+      new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::VIDEO));
   });
 }