When keyboard navigating with the Tab key, I cannot set focus on Buttons within the app.
@kikisaints On the old branch, the workaround for this was using FocusableWindows. While Button tabstops probably should work out of the box, the added benefit of FocusableWindows is that it also works for 3rd party and custom components, so there was merit in having that irrespective of whether (or which of) the default components had tabstop support.
Generally, as most of these components somehow tie back to TouchableOpacity/Highlight, that's where I would expect this support to come/inherit from (having it just for button feels a bit too specific of a request).
@achipa Makes sense! If the behavior needs to be implemented on a different level, and not on Button specifically, that's probably a better solution. This issue is addressing the end user experience - which is a lack of keyboard accessibility. However we decided to go about enabling this behavior is fine by me.
I can label these as "user experience" issues too, if that makes more sense for triaging purposes.
This PR contains some progress towards this: https://github.com/Microsoft/react-native-windows/pull/2074
In there we've added some additional props to View, which Touchable* and Button are using. When something is accessible, we wrap the viewpanel in a control that can take focus, sends focus events, etc. We just need to hook up more for keyboard input and accessibility press. Btw we're using a ContentControl right now as our wrapper - we wanted to create lighter custom control but couldn't get the cppwinrt stuff for that working so went for an existing control to start.
PR #2074 appears to have fixed this issue.
Most helpful comment
This PR contains some progress towards this: https://github.com/Microsoft/react-native-windows/pull/2074
In there we've added some additional props to View, which Touchable* and Button are using. When something is accessible, we wrap the viewpanel in a control that can take focus, sends focus events, etc. We just need to hook up more for keyboard input and accessibility press. Btw we're using a ContentControl right now as our wrapper - we wanted to create lighter custom control but couldn't get the cppwinrt stuff for that working so went for an existing control to start.