Add accessibility support for SceneView 34/324634/2
authorSeoyeon Kim <seoyeon2.kim@samsung.com>
Thu, 22 May 2025 02:02:52 +0000 (11:02 +0900)
committerSeoyeon Kim <seoyeon2.kim@samsung.com>
Mon, 26 May 2025 01:13:15 +0000 (10:13 +0900)
- SceneView properly responds to screen reader when accessibility features are enabled
- Child elements within the SceneView are properly discoverable by accessibility tools

Change-Id: I7b90b24bc12fbfca53b1631d63803792951c7383
Signed-off-by: Seoyeon Kim <seoyeon2.kim@samsung.com>
dali-scene3d/internal/controls/scene-view/scene-view-impl.cpp

index 8b3093e89dddc23988e6bddf5115720e009e6193..58a11e87caf4818be06d3bf590f220c288cfe651 100644 (file)
@@ -38,6 +38,7 @@
 #include <dali/public-api/object/type-registry-helper.h>
 #include <dali/public-api/object/type-registry.h>
 #include <string_view>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
 
 // INTERNAL INCLUDES
 #include <dali-scene3d/internal/common/image-resource-loader.h>
@@ -1323,6 +1324,9 @@ void SceneView::OnInitialize()
   mRootLayer.SetProperty(Dali::Actor::Property::HEIGHT_RESIZE_POLICY, ResizePolicy::FILL_TO_PARENT);
   self.Add(mRootLayer);
 
+  Dali::Toolkit::DevelControl::AppendAccessibilityAttribute(Dali::Toolkit::Control::DownCast(self), "forceChildSearch", "1");
+  self.SetProperty(Dali::Toolkit::DevelControl::Property::ACCESSIBILITY_ROLE, Dali::Accessibility::Role::FILLER);
+
   mDefaultCamera = Dali::CameraActor::New3DCamera();
   mDefaultCamera.SetProperty(Dali::Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER);
   mDefaultCamera.SetProperty(Dali::Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER);