* Giving highlightable state explicitly for particular control by its developer is more reasonable than giving this state for all controls by default.
* Such approach allows for better control over UI elements highlightability. We avoid highlighting containers like layouts, etc.
Change-Id: Ifc1b5e268c2bd02c17498d0dba619771c5d5b00d
mTapDetector.DetectedSignal().Connect(this, &Button::OnTap);
self.SetProperty( Actor::Property::KEYBOARD_FOCUSABLE, true );
+ self.SetProperty( Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE, true );
self.TouchedSignal().Connect( this, &Button::OnTouch );
}
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] = true;
+ 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;
return std::unique_ptr< Dali::Accessibility::Accessible >(
new Control::Impl::AccessibleImpl( actor, Dali::Accessibility::Role::IMAGE ) );
} );
+
+ //Enable highightability
+ Self().SetProperty( Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE, true );
+
}
void ImageView::SetImage( const Property::Map& map )
return std::unique_ptr< Dali::Accessibility::Accessible >(
new AccessibleImpl( actor, Dali::Accessibility::Role::PROGRESS_BAR ) );
} );
+ //Enable highightability
+ Self().SetProperty( Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE, true );
}
void ProgressBar::OnRelayout( const Vector2& size, RelayoutContainer& container )
// Size the Slider actor to a default
self.SetProperty( Actor::Property::SIZE, Vector2( DEFAULT_HIT_REGION.x, DEFAULT_HIT_REGION.y ) );
+ // Set the Slider to be highlightable in Screen Reader mode
+ self.SetProperty( Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE, true );
+
// Connect to the touch signal
self.TouchedSignal().Connect( this, &Slider::OnTouch );
self.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::HEIGHT );
self.OnSceneSignal().Connect( this, &TextEditor::OnSceneConnect );
+ //Enable highightability
+ self.SetProperty( Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE, true );
+
DevelControl::SetInputMethodContext( *this, mInputMethodContext );
// Creates an extra control to be used as stencil buffer.
self.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::HEIGHT );
self.OnSceneSignal().Connect( this, &TextField::OnSceneConnect );
+ //Enable highightability
+ self.SetProperty( Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE, true );
+
DevelControl::SetInputMethodContext( *this, mInputMethodContext );
if( Dali::Toolkit::TextField::EXCEED_POLICY_CLIP == mExceedPolicy )
self.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
self.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+ // Enable highlightability
+ self.SetProperty( Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE, true );
+
// Enable the text ellipsis.
mController->SetTextElideEnabled( true ); // If false then text larger than control will overflow
return std::unique_ptr< Dali::Accessibility::Accessible >(
new Control::Impl::AccessibleImpl( actor, Dali::Accessibility::Role::DIALOG, true ) );
} );
+
+ //Enable highightability
+ self.SetProperty( Toolkit::DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE, true );
}
void TextSelectionPopup::HideAnimationFinished( Animation& animation )