How to build an accessible Windows 8.1 app
Premalini DavidProgram Manager, Windows Accessibility2-001
What is software accessibility?
Why build accessible apps?
Top built-in Accessibility features
Key points to build accessible apps
Agenda
What is Software Accessibility?
Software accessibility is the ability to make your applications usable by those with disabilities.
What is software accessibility?
Why build accessible apps?
Top built-in Accessibility features
Key points to build accessible apps
Agenda
• Reach more customers!!
• Comply with federal
regulations
Why build Accessible apps?
Source: WHO, ILO and US Census Bureau
Reach more customers!!• 1.2 billion disabled individuals
world-wide
• 386 million are working-age people
• 34.7% of disabled individuals in the US alone are in the working-age category!
Why build Accessible apps?
Source: WHO, ILO and US Census Bureau
For Compliance purposes:• Communication Apps: Twenty
First Century Communications and Video Accessibility Act compliance by Oct 2013 in the US
• Web Apps: Section 508 of the US Rehabilitation Act
Why build Accessible apps?
Source: WHO, ILO and US Census Bureau
What is software accessibility?
Why build accessible apps?
Top Built-in Accessibility features
Key points to build accessible apps
Agenda
• Make things on screen larger
• Turning off animations
• Formatted text reading support
Top Built-in Accessibility features
Turning off Animations
XAML now supports screen reading of formatted text within TextBlocks, RichTextBlock and RichTextBlockOverflow controls
Formatted text reading support
What is software accessibility?
Why build accessible apps?
Top built-in Accessibility features
Key points to build accessible apps
Agenda
Let’s walkthrough the stepsDesign
Develop
Test
S e l l !!!!!
Key Areas of focus for building accessible apps
Accessible Visual Design
Keyboard Navigation
Screen Reading
Key Areas of focus for building accessible apps
Accessible Visual Design- Support High Contrast
Keyboard Navigation
Screen Reading
DEMO - Design and code for Keyboard Navigation and Screen Reading
Users
Assistive Technologies(Screen readers, magnifiers..etc.)
UI Automation Framework
WINJS and HTML5 – Use ARIA Properties
XAML and C++/C#/VB – Use
Automation Properties
Provided by the Windows Platform
RECAP of code changes
Supporting Tab indexing for KB navigationXAML Code Snippet<TextBox TabIndex="1" Width="200" Grid.Column="1"…/>
WINJS/HTML Code Snippet<textarea id="Text Area1" tabindex="1"...></textarea>
Providing an Accessible name XAML Code Snippet:<TextBox AutomationProperties.Name= "First Name" .../>
WINJS /HTML code snippet<textarea aria-label= “First Name" ...></textarea>
No elements missing accessible names
Use of Live RegionsXAML Code Snippet<TextBlock Text="Submission Successful!" AutomationProperties.LiveSetting="Assertive" .../><!--ORAutomationProperties.LiveSetting="Polite" .../> -->
In the code behind file, raise a LiveRegionChanged event as part of changing the textAutomationPeer peer = TextBlockAutomationPeer.FromElement(tblSubmissionStatus);peer.RaiseAutomationEvent(AutomationEvents.LiveRegionChanged);
Use of Live RegionsHTML Code snippet<textarea id="TextArea1" aria-live="assertive" ...></textarea>
Key Areas of focus for building accessible apps
Accessible Visual Design Support High Contrast
Keyboard NavigationSupport Tabbing
Screen ReadingAccessible Names, Live Regions
Mark your App as being accessible on the Store!
Selling your app
Design and Develop for:• Accessible visual design• KB navigation• Screen Reading
Leverage common controls for built-in platform support
Testing tools –UI Accessibility Checker(AccChecker)
Selling – mark app as being accessible on the Store !!!
Recap - How to build Accessible apps
Resources• Go to the Windows Dev Center. Look up the
following topics: Making your app accessible Guidelines and Checklists for Accessibility Testing your app for Accessibility
• Accessibility testing tools available in the Windows SDK: UI Accessibility Checker(AccChecker) Inspect AccEvent
Resources• Accessibility Samples in the Windows SDK
XAML Accessibility sample XAML High Contrast sample ARIA sample
Recommended sessions to attend• 2-164: What’s New in XAML by Tim Heuer • 2-165: What’s New in WINJS by Paul Gusmorino• 2-082: Creating your first app using XAML by
Harini Kannan
Evaluate this session
Scan this QR code to evaluate this session and be automatically entered in a drawing to win a prize!
© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Top Related