SFSafariViewController does not work reliably with VoiceOver

Originator:greg
Number:rdar://22492329 Date Originated:30-Aug-2015 11:46 AM
Status:Open Resolved:
Product:Accessibility Product Version:Xcode-beta (7A192o)
Classification:Serious Bug Reproducible:Always
 
Summary:
Many websites cause VoiceOver to stop working when displayed within SFSafariViewController.

Steps to Reproduce:
1. Enable VoiceOver
2. Display untappd.com in an SFSafariViewController
3. Use VoiceOver to navigate to the Done button from SFSafariViewController, or read any elements on the screen within the SFSafariViewController 

Expected Results:
* VoiceOver works as expected.

Actual Results:
* VoiceOver will not read any items on screen except those in the status bar.
* Numerous console output lines, repeating:
AX Lookup problem! 1100 com.apple.iphone.axserver:2019 (
	0   AXRuntime                           0x000000018b12cdd4 _AXGetPortFromCache + 296
	1   AXRuntime                           0x000000018b12ca88 AXUIElementCopyAttributeValue + 340
	2   AXRuntime                           0x000000018b12d2f4 <redacted> + 1004
	3   AXRuntime                           0x000000018b12cb94 AXUIElementCopyAttributeValue + 608
	4   AXRuntime                           0x000000018b13d1a8 <redacted> + 60
	5   libdispatch.dylib                   0x00000001000f5e0c _dispatch_call_block_and_release + 24
	6   libdispatch.dylib                   0x00000001000f5dcc _dispatch_client_callout + 16
	7   libdispatch.dylib                   0x0000000100104fb4 _dispatch_root_queue_drain + 2344
	8   libdispatch.dylib                   0x000000010010467c _dispatch_worker_thread3 + 132
	9   libsystem_pthread.dylib             0x0000000199cd1478 _pthread_wqthread + 1092
	10  libsystem_pthread.dylib             0x0000000199cd1028 start_wqthread + 4
)

AX Lookup problem! 1100 com.apple.iphone.axserver:1330 (
	0   AXRuntime                           0x000000018b12cdd4 _AXGetPortFromCache + 296
	1   AXRuntime                           0x000000018b12d4a0 AXUIElementCopyParameterizedAttributeValue + 416
	2   AXRuntime                           0x000000018b12cc24 AXUIElementCopyAttributeValue + 752
	3   AXRuntime                           0x000000018b13d1a8 <redacted> + 60
	4   libdispatch.dylib                   0x00000001000f5e0c _dispatch_call_block_and_release + 24
	5   libdispatch.dylib                   0x00000001000f5dcc _dispatch_client_callout + 16
	6   libdispatch.dylib                   0x0000000100104fb4 _dispatch_root_queue_drain + 2344
	7   libdispatch.dylib                   0x000000010010467c _dispatch_worker_thread3 + 132
	8   libsystem_pthread.dylib             0x0000000199cd1478 _pthread_wqthread + 1092
	9   libsystem_pthread.dylib             0x0000000199cd1028 start_wqthread + 4
)

Notes:
All sites appear to produce the console output, but some sites (like apple.com) don't break VoiceOver. untappd.com reliably breaks VoiceOver.

Attached sample project.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!