#define DALI_TOOLKIT_CONTROL_ACCESSIBLE_H
/*
- * Copyright (c) 2021 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2023 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.
*/
// EXTERNAL INCLUDES
-#include <dali/devel-api/adaptor-framework/accessibility.h>
#include <dali/devel-api/adaptor-framework/accessibility-bridge.h>
+#include <dali/devel-api/adaptor-framework/accessibility.h>
#include <dali/devel-api/adaptor-framework/actor-accessible.h>
#include <dali/devel-api/atspi-interfaces/action.h>
#include <dali/public-api/object/weak-handle.h>
// INTERNAL INCLUDES
#include <dali-toolkit/public-api/dali-toolkit-common.h>
-namespace Dali::Toolkit::DevelControl {
-
+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)
+ * You can create a derived class (and override Control::CreateAccessibleObject)
* 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
protected:
Vector2 mLastPosition{0.0f, 0.0f};
Dali::WeakHandle<Dali::Actor> mCurrentHighlightActor;
- bool mIsModal = false;
- bool mIsRoot = false;
void ScrollToSelf();
void UnregisterPositionPropertyNotification();
/**
+ * @brief Registers PropertySet signal to notify when ACCESSIBILITY_NAME or ACCESSIBILITY_DESCRIPTION is changed.
+ * Note that those two signals only need for highlighted control. So, let us ensure to connect PropertySet signal
+ * only if control has been grabbed.
+ */
+ void RegisterPropertySetSignal();
+
+ /**
+ * @brief Unregisters PropertySet signal to notify when ACCESSIBILITY_NAME or ACCESSIBILITY_DESCRIPTION is changed.
+ */
+ void UnregisterPropertySetSignal();
+
+ /**
* @brief Check if the actor is showing
* @return True if the actor is showing
*/
bool IsShowing();
public:
- ControlAccessible(Dali::Actor self, Dali::Accessibility::Role role, bool modal = false);
+ ControlAccessible(Dali::Actor self);
/**
* @copydoc Dali::Accessibility::Accessible::GetName()