SetupTouch();
- DevelControl::AppendAccessibilityAttribute(self, "sub-role", "Alert");
+ DevelControl::AppendAccessibilityAttribute(Toolkit::Control::DownCast(self), "sub-role", "Alert");
DevelControl::SetAccessibilityConstructor(self, [](Dali::Actor actor) {
return std::unique_ptr<Dali::Accessibility::Accessible>(new AccessibleImpl(actor, Dali::Accessibility::Role::DIALOG, true));
return;
}
- auto* accessible = Dali::Accessibility::Accessible::Get(Self());
- if(display)
- {
- Dali::Accessibility::Bridge::GetCurrentBridge()->AddPopup(accessible);
- accessible->EmitStateChanged(Dali::Accessibility::State::SHOWING, 1, 0);
- }
- else
- {
- accessible->EmitStateChanged(Dali::Accessibility::State::SHOWING, 0, 0);
- Dali::Accessibility::Bridge::GetCurrentBridge()->RemovePopup(accessible);
- }
-
// Convert the bool state to the actual display state to use.
- mDisplayState = display ? Toolkit::Popup::SHOWING : Toolkit::Popup::HIDING;
+ mDisplayState = display ? Toolkit::Popup::SHOWING : Toolkit::Popup::HIDING;
+ auto* accessible = Dali::Accessibility::Accessible::Get(Self());
if(display)
{
// Update the state to indicate the current intent.
mDisplayState = Toolkit::Popup::SHOWING;
+ Dali::Accessibility::Bridge::GetCurrentBridge()->RegisterDefaultLabel(accessible);
+ accessible->EmitShowing(true);
// We want the popup to have key input focus when it is displayed
SetKeyInputFocus();
else // Not visible.
{
mDisplayState = Toolkit::Popup::HIDING;
+ Dali::Accessibility::Bridge::GetCurrentBridge()->UnregisterDefaultLabel(accessible);
ClearKeyInputFocus();
-
+ accessible->EmitShowing(false);
// Restore the keyboard focus when popup is hidden.
if(mPreviousFocusedActor && mPreviousFocusedActor.GetProperty<bool>(Actor::Property::KEYBOARD_FOCUSABLE))
{
}
}
-std::string Popup::AccessibleImpl::GetNameRaw()
+std::string Popup::AccessibleImpl::GetNameRaw() const
{
auto popup = Toolkit::Popup::DownCast(Self());
std::string title;
Dali::Accessibility::States Popup::AccessibleImpl::CalculateStates()
{
- auto states = DevelControl::AccessibleImpl::CalculateStates();
+ auto states = DevelControl::ControlAccessible::CalculateStates();
auto popup = Toolkit::Popup::DownCast(Self());
auto displayState = popup.GetProperty<std::string>(Toolkit::Popup::Property::DISPLAY_STATE);