Skip to content
This repository has been archived by the owner on May 1, 2024. It is now read-only.

Don't set IsAccessibilityElement for everything #13423

Merged
merged 2 commits into from
Jan 21, 2021
Merged

Don't set IsAccessibilityElement for everything #13423

merged 2 commits into from
Jan 21, 2021

Conversation

PureWeen
Copy link
Contributor

@PureWeen PureWeen commented Jan 16, 2021

Description of Change

The original comment says this

		// UIKit UIViews created via storyboard default IsAccessibilityElement to true, BUT	
			// UIViews created programmatically default IsAccessibilityElement to false.	
			// We need to default to true to allow all elements to be accessible by default and	
			// allow users to override this later via AutomationProperties.IsInAccessibleTree

I don't feel like that's completely accurate. If you inspect IsAccessibilityElement directly after instantiating a control then it is indeed false but by the time the control is rendering it is set to the correct value for the given control. If you breakpoint SetAccessibilityElement inside the Automation Extensions you will see that IsAccessibilityElement is true when it should be true and false when it should be false

There are certain controls (UIScrollView, ListView, really anything that's a container of views) that should always remain false. If they get set to true then it causes all the content inside the view to become unreachable.

Just let the OS do what the OS is going to do

Issues Resolved

Platforms Affected

  • iOS

Testing Procedure

  • Test any of the collection view samples using voice over and make sure they still work
  • Test all samples that are voice over related and make sure they still work

PR Checklist

  • Targets the correct branch
  • Tests are passing (or failures are unrelated)

@PureWeen PureWeen added this to To do in vNext+1 (5.0.0) via automation Jan 16, 2021
@PureWeen PureWeen added this to the 5.0.0 milestone Jan 16, 2021
@PureWeen PureWeen moved this from To do to Blockers in vNext+1 (5.0.0) Jan 16, 2021
@PureWeen PureWeen added the blocker Issue blocks next stable release. Prioritize fixing and reviewing this issue. label Jan 16, 2021
@PureWeen PureWeen moved this from Blockers to In Review in vNext+1 (5.0.0) Jan 16, 2021
Copy link
Contributor

@rachelkang rachelkang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some previously accessible things are no longer accessible

i.e. Open iOS ControlGallery >> CollectionView Gallery
The various buttons linking to different CV sample galleries are no longer accessible. Where they were previously focusable with VO, they no longer are. Will these issues be resolved elsewhere? If not, can we move this bit of code to several other areas where they may still be applicable?

@rachelkang
Copy link
Contributor

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@PureWeen
Copy link
Contributor Author

Failing tests unrelated

@PureWeen PureWeen merged commit 193fedc into 4.8.0 Jan 21, 2021
vNext+1 (5.0.0) automation moved this from In Review to Done Jan 21, 2021
@PureWeen PureWeen deleted the fix_12252 branch January 21, 2021 12:38
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
a/a11y 🔍 blocker Issue blocks next stable release. Prioritize fixing and reviewing this issue. p/iOS 🍎
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet

3 participants