SlideShare ist ein Scribd-Unternehmen logo
1 von 55
Downloaden Sie, um offline zu lesen
The Audio
User Experience
    for Widgets


        Todd Kloots
            @todd
Goals

1. Understand what users of screen readers
   expect or need to hear when interacting
   with widgets
2. Understand the common keyboard and
   touch interaction patterns for widgets
Screen Readers
                        Read the code (HTML)
                        Read the focused element
                        What is read:
                                 Element/Control type
                                 Label
                                 Properties
                                 State changes

For web-based interfaces most of the information that screen readers announce originates from the code—the HTML.
Navigation



Some fundamentals. First, how do users of screen readers navigate through a page or application?
Navigating web pages or applications using a screen reader is very much the opposite of the experience for sighted users.

As a sighted person, when you first see a web page or application you see the gestalt.
Then you can focus your eyes on the task you want to accomplish, often ignoring the other parts of the page or application.

For example, if you want to search, you focus your eyes on the search box and ignore the rest of the page.
Or if you want to read a section of a page, you move your focus to that section.
On the other hand, users of screen readers begin with a blank canvas and discover the page or application one element or section at a time. It is not until they traverse through a section that
they can begin to get a sense of the whole.
Imagine navigating through yahoo.com using a screen reader. You’d first encounter the Yahoo! logo.
Then the first of the search tabs at the top of the page: “Web”
Then “Images”
Then “Video”
Then “Travel”
Then “News”
Then the search box.
And finally the “Search” button.
And after navigating through those elements you might begin to perceive them as belonging to a section.
Widgets



That's navigation. Now, how do users of screen readers interact with wigets?
Demo




                                                   http://youtu.be/ZnlvBIfTQfI

Demo of interacting with a checkbox using VoiceOver—the screen reader for the Mac. Notice how VoiceOver announces the control type (“checkbox”), the label “Send me offers”, and the
current state (“checked” and “not checked”).

All this text is announced to ensure that users of screen readers can perceive and operate the widget.
See                                                                                       Hear



That's the experience for existing widgets. For custom controls, most often problems are caused when there is a gap between the visual and audio user experience such that users of screen
readers do not have access to the same information as sighted users.
http://youtu.be/lpU8IHiU8rw

This short video illustrates the screen reader user experience of a custom toolbar that doesn't use ARIA and whose buttons aren't properly labeled. Notice how the user is unaware of the fact
that they are interacting with a toolbar, and how each button is indistinguishable for one another.

This demonstrates a common problem accessibility problem for custom controls built using JavaScript: a perception gap between the visual and audio user experience.
Visual rendering of the screen reader user experience when contextual information and labels are not available.
http://youtu.be/3AdvVg2Cs9Q

This short video illustrates the user experience of a custom toolbar that uses ARIA to improve the user experience for users of screen readers. Notice how there is no gap in what sighted
users perceive and what the screen reader announces; the screen reader announces to the user they are in a toolbar and the label of each button.

This is made possible by ARIA—it provides developers with the necessary tools to close gaps between the visual and audio user experience.
http://youtu.be/WK6qN4OCwVU
This short video illustrates the screen reader user experience of a custom modal dialog that doesn't use ARIA. Notice how when the dialog is made visible the only information that is
announced is the label of the "OK" button. Other contextual information such as the dialog's title, and message are not announced.

This demonstrates a common accessibility problem for custom controls built using JavaScript: a perception gap between the visual and audio user experience.
http://youtu.be/XqEwuV2HySs
This short video illustrates the user experience of a custom modal dialog that uses ARIA to improve the user experience for users of screen readers. Notice how when the dialog is made
visible the same information visible to sighted users is also announced by the screen reader. This is made possible by ARIA—it provides developers with the necessary tools to close gaps
between the visual and audio user experience.
Screen readers are available on a variety of devices including: desktop, phones and tablets.
As for mobile: Screen readers are available for both iOS and Android.
Configuring the Mac




Every Mac has a built-in screen reader called VoiceOver.
Start/Stop VoiceOver

     Cmd + F5
     (or Fn + Cmd + F5)
Speech Rate
                          Press Ctrl + Option + Command + → until
                          you see/hear "Rate"
                          Press Ctrl + Option + Command + ↓ to        To change the speech rate (how fast VoiceOver speaks)
                                                                        • Press Ctrl + Option + Command + → until you see/hear "Rate"

                          make VoiceOver speak slower                   • Press Ctrl + Option + Command + ↓ to make VoiceOver speak slower
                                                                        • Press Ctrl + Option + Command + ↑ to make VoiceOver speak faster




                          Press Ctrl + Option + Command + ↑ to
                          make VoiceOver speak faster



If you find VoiceOver is speaking too fast, you can adjust the rate.
VoiceOver Shortcuts
          Task                                                                   Shortcut
          Toggle VoiceOver on/off                                                Command + F5 (or Fn + Command + F5)

           Stop speaking                                                         Ctrl

           Read the focused item                                                 Ctrl + Option + A

           Move to next/previous control Tab / Shift + Tab

          Activate the focused item                                              Spacebar OR Ctrl + Opt + Spacebar

          Toggle keyboard help                                                   Ctrl + Option + K

          Toggle the display off/on                                              Ctrl + Option + Shift + F11




Some of the very basic shortcuts you’ll need to know to begin using VoiceOver and to test custom widgets.
nvda-project.org
The NVDA screen reader is a free screen readers for Windows.
Install NVDA

1. Download and install NVDA
2. Press Ctrl + Alt + N to start NVDA
3. After NVDA starts uncheck the
   checkbox labeled "Show this dialog when
   NVDA starts"
Disable Mouse Tracking

                 1. Right click on the NVDA icon in the
                    system tray
                 2. Go to Preferences > Mouse Settings
                 3. Uncheck the checkbox labeled "Mouse
                    Tracking"



Sighted users might want to disable mouse tracking in the interest of reducing "noise"
Save Preferences

1. Right click on the NVDA icon in the
   system tray
2. Choose the "Save Configuration"
   menu item
Configuring Speech Rate


                                            Ctrl + Insert + ↓                 Speak slower


                                            Ctrl + Insert + ↑                 Speak faster




If you find the screen reader is speaking too fast, you can adjust the rate.
NVDA Speech Viewer
                                                                                                           Click on the
                                                                                                           NVDA icon in
                                                                                                           the system try
                                                                                                           Go to Tools >
                                                                                                           Speech Viewer




If you don't want to listen to the screen reader, the spoken text is available via NVDA's speech viewer.
NVDA Keyboard Shortcuts
               Task                                                                                    Shortcut
               Stop NVDA from speaking                                                                 Ctrl
               Toggle Browse Mode on/off                                                               Insert + Spacebar
               Read the focused item                                                                   Insert + Tab
               Activate the focused item                                                               Enter or Spacebar
               Move between objects in the tab order Tab or Shift + Tab
               Toggle NVDA on                                                                          Ctrl + Alt + N
               Toggle NVDA off                                                                         Insert + Q




Some of the very basic shortcuts you’ll need to know to begin using NVDA and to test custom widgets.
Configuring Your iOS Device
Enable VoiceOver on iOS


                         Settings > General > Accessibility > Triple-
                         click Home
                         Choose VoiceOver




As a developer, I recommend setting up VoiceOver on iOS such that triple-clicking the Home button toggles VoiceOver on and off.
Widget Touch Patterns
        Task                                                                                               Gesture
         Speak item or navigate to item                                                                   Tap
         Select the next or previous item                                                                  Flick right or left
        Activate (click) the selected item                                                                 Double-tap
         Change selection or value                                                                         Flick up or down
         Dismiss an alert                                                                                 Two-finger “scrub”


Some of the very basic shortcuts you’ll need to know to begin using VoiceOver and to test custom widgets for mobile.
Exercises



Some exercises to get you familiar with using existing web form controls and classic desktop controls using a screen reader.
Exercise




                                           bit.ly/z86b0J
Use this simple page to begin to get comfortable using either VoiceOver and Safari on the Mac, or NVDA and Firefox on Windows.

Observable keyboard patterns for existing HTML form controls:
Tab and Shift+Tab navigate between widgets/controls
Arrow keys change selection in a group
Spacebar executes a click action
Enter executes the default action
Esc key closes menus and dialogs


Observable widget information announced by the screen reader:
Widget type
Widget label
Widget properties
Widget state
Exercise




Use the menubar with VoiceOver enabled. (Press Control + F2 to focus the menubar.)

Notice some of the menubar keyboard patterns:
Arrows navigate the menubar and submenus
Esc key closes the menu and blurs the menubar. When the menubar blurs, focus is restored to the control that previously had focus.

Notice how VoiceOver announces things like:
The label of the current menu or menuitem
The size of the menu when you first open it
Submenu items are announced as "submenu"
The state of menuitems—for example "dimmed" to indicate disabled menuitems
When a menu closes
Exercise




Use the tree control in the Finder with VoiceOver enabled.

Notice some of the tree control keyboard patterns:
Up and down arrow keys navigate between items
Left and right arrow key expand or collapse items

Notice how VoiceOver announces when a tree item expands or collapses.
Exercise




Use one of the tab controls on the Mac with VoiceOver enabled.

Notice how VoiceOver announces things like:
The selected state of a tab
The total number of tabs

Notice the tab control keyboard patterns:
Left and right arrows move focus between tabs
Spacebar changes the selected tab
Exercise




Use the menubar in IE on Windows with NVDA enabled. (Press Alt + F to move focus to the menubar.)

Notice some of the menubar keyboard patterns:
Arrows navigate the menubar and submenus
Esc key closes the menu and blurs the menubar. When the menubar blurs, focus is restored to the control that previously had focus.

Notice how NVDA announces things like:
The label of the current menu or menuitem
The size of the menu when you first open it
Submenu items are announced as "submenu"
The state of menuitems—for example "unavailable" to indicate disabled menuitems
Exercise




Tab controls on Windows work similar to tab controls on the Mac.

Move focus to the control by pressing Tab or Shift + Tab.
Change tabs via left/right arrow keys.
Widget Keyboard Patterns

       Task                                                                                                              Key
        Focus Next or Previous Widget                                                                                    Tab / Shift + Tab
        Change selection                                                                                                 →, ←, ↑, ↓
        Expand / Collapse                                                                                                →, ←, ↑, ↓
        Close or Exit                                                                                                    Esc
        Click                                                                                                            Spacebar
        Default Action                                                                                                   Enter

Although there are differences across browsers and platforms, there are many similarities with respect to keyboard patterns for widgets.
Mobile Exercise




                                             bit.ly/z86b0J
Use this simple test page to begin learning how to interact with HTML form controls when VoiceOver is enabled.

Some observable patterns:
Swipe left/right to move between widgets
Once a widget has focus, double tab anywhere on the screen to execute a “click” or interact with the control
For controls that support selection, swiping up or down changes the value
Widget Touch Patterns
Task                                 Gesture
Speak item or navigate to item       Tap
Select the next or previous item     Flick right or left
Activate (click) the selected item   Double-tap
Change selection or value            Flick up or down
Dismiss an alert                     Two-finger “scrub”
Review
Screen Readers
Read the code (HTML)
Read the focused element
What is read:
  Element/Control type
  Label
  Properties
  State changes
Widget Keyboard Patterns

       Task                                                                                                          Key
        Focus Next or Previous Widget                                                                                 Tab / Shift + Tab
        Change selection                                                                                              →, ←, ↑, ↓
        Expand / Collapse                                                                                             →, ←, ↑, ↓
        Close or Exit                                                                                                 Esc
        Click                                                                                                         Spacebar
        Default Action                                                                                                Enter

Although there are differences across browsers and platforms, there are many similarities and common patterns for widgets, and these patterns span the web and the desktop on both
platforms—Mac and Windows.
Widget Touch Patterns
Task                                 Gesture
Speak item or navigate to item       Tap
Select the next or previous item     Flick right or left
Activate (click) the selected item   Double-tap
Change selection or value            Flick up or down
Dismiss an alert                     Two-finger “scrub”

Weitere ähnliche Inhalte

Was ist angesagt?

Creating accessible modals and autocompletes
Creating accessible modals and autocompletesCreating accessible modals and autocompletes
Creating accessible modals and autocompletesRuss Weakley
 
WPF (Windows Presentation Foundation Unit 01)
WPF (Windows Presentation Foundation Unit 01)WPF (Windows Presentation Foundation Unit 01)
WPF (Windows Presentation Foundation Unit 01)Prashanth Shivakumar
 
Presentation wpf
Presentation wpfPresentation wpf
Presentation wpfdanishrafiq
 
Accessibility and universal usability
Accessibility and universal usabilityAccessibility and universal usability
Accessibility and universal usabilitySarah Hudson
 
Accessibility in Design systems - the pain and glory
Accessibility in Design systems - the pain and gloryAccessibility in Design systems - the pain and glory
Accessibility in Design systems - the pain and gloryRuss Weakley
 
Introduction to XAML and WPF
Introduction to XAML and WPFIntroduction to XAML and WPF
Introduction to XAML and WPFDoncho Minkov
 
Better User Experience with .NET
Better User Experience with .NETBetter User Experience with .NET
Better User Experience with .NETPeter Gfader
 
WPF For Beginners - Learn in 3 days
WPF For Beginners  - Learn in 3 daysWPF For Beginners  - Learn in 3 days
WPF For Beginners - Learn in 3 daysUdaya Kumar
 
WPF - Controls & Data
WPF - Controls & DataWPF - Controls & Data
WPF - Controls & DataSharada Gururaj
 
Accessible Inline errors messages
Accessible Inline errors messagesAccessible Inline errors messages
Accessible Inline errors messagesRuss Weakley
 
Accessible Form Hints and Errors
Accessible Form Hints and ErrorsAccessible Form Hints and Errors
Accessible Form Hints and ErrorsRuss Weakley
 
WAI-ARIA An introduction to Accessible Rich Internet Applications / JavaScrip...
WAI-ARIA An introduction to Accessible Rich Internet Applications / JavaScrip...WAI-ARIA An introduction to Accessible Rich Internet Applications / JavaScrip...
WAI-ARIA An introduction to Accessible Rich Internet Applications / JavaScrip...Patrick Lauke
 
WAI-ARIA An introduction to Accessible Rich Internet Applications / CSS Minsk...
WAI-ARIA An introduction to Accessible Rich Internet Applications / CSS Minsk...WAI-ARIA An introduction to Accessible Rich Internet Applications / CSS Minsk...
WAI-ARIA An introduction to Accessible Rich Internet Applications / CSS Minsk...Patrick Lauke
 
Grasping The LightSwitch Paradigm
Grasping The LightSwitch ParadigmGrasping The LightSwitch Paradigm
Grasping The LightSwitch ParadigmAndrew Brust
 
W3c markup validator
  W3c markup validator  W3c markup validator
W3c markup validatorHugo Araújo
 
Windows Presentation Foundation
Windows Presentation Foundation  Windows Presentation Foundation
Windows Presentation Foundation Deepika Chaudhary
 
Cape Town MS Developer User Group: Xamarin Community Toolkit
Cape Town MS Developer User Group: Xamarin Community ToolkitCape Town MS Developer User Group: Xamarin Community Toolkit
Cape Town MS Developer User Group: Xamarin Community ToolkitJavier Suárez Ruiz
 

Was ist angesagt? (20)

Wpf Introduction
Wpf IntroductionWpf Introduction
Wpf Introduction
 
Creating accessible modals and autocompletes
Creating accessible modals and autocompletesCreating accessible modals and autocompletes
Creating accessible modals and autocompletes
 
WPF (Windows Presentation Foundation Unit 01)
WPF (Windows Presentation Foundation Unit 01)WPF (Windows Presentation Foundation Unit 01)
WPF (Windows Presentation Foundation Unit 01)
 
Presentation wpf
Presentation wpfPresentation wpf
Presentation wpf
 
WPF Fundamentals
WPF FundamentalsWPF Fundamentals
WPF Fundamentals
 
Accessibility and universal usability
Accessibility and universal usabilityAccessibility and universal usability
Accessibility and universal usability
 
Accessibility in Design systems - the pain and glory
Accessibility in Design systems - the pain and gloryAccessibility in Design systems - the pain and glory
Accessibility in Design systems - the pain and glory
 
Introduction to XAML and WPF
Introduction to XAML and WPFIntroduction to XAML and WPF
Introduction to XAML and WPF
 
Better User Experience with .NET
Better User Experience with .NETBetter User Experience with .NET
Better User Experience with .NET
 
WPF For Beginners - Learn in 3 days
WPF For Beginners  - Learn in 3 daysWPF For Beginners  - Learn in 3 days
WPF For Beginners - Learn in 3 days
 
WPF - Controls & Data
WPF - Controls & DataWPF - Controls & Data
WPF - Controls & Data
 
01 08 - graphical user interface - layouts
01  08 - graphical user interface - layouts01  08 - graphical user interface - layouts
01 08 - graphical user interface - layouts
 
Accessible Inline errors messages
Accessible Inline errors messagesAccessible Inline errors messages
Accessible Inline errors messages
 
Accessible Form Hints and Errors
Accessible Form Hints and ErrorsAccessible Form Hints and Errors
Accessible Form Hints and Errors
 
WAI-ARIA An introduction to Accessible Rich Internet Applications / JavaScrip...
WAI-ARIA An introduction to Accessible Rich Internet Applications / JavaScrip...WAI-ARIA An introduction to Accessible Rich Internet Applications / JavaScrip...
WAI-ARIA An introduction to Accessible Rich Internet Applications / JavaScrip...
 
WAI-ARIA An introduction to Accessible Rich Internet Applications / CSS Minsk...
WAI-ARIA An introduction to Accessible Rich Internet Applications / CSS Minsk...WAI-ARIA An introduction to Accessible Rich Internet Applications / CSS Minsk...
WAI-ARIA An introduction to Accessible Rich Internet Applications / CSS Minsk...
 
Grasping The LightSwitch Paradigm
Grasping The LightSwitch ParadigmGrasping The LightSwitch Paradigm
Grasping The LightSwitch Paradigm
 
W3c markup validator
  W3c markup validator  W3c markup validator
W3c markup validator
 
Windows Presentation Foundation
Windows Presentation Foundation  Windows Presentation Foundation
Windows Presentation Foundation
 
Cape Town MS Developer User Group: Xamarin Community Toolkit
Cape Town MS Developer User Group: Xamarin Community ToolkitCape Town MS Developer User Group: Xamarin Community Toolkit
Cape Town MS Developer User Group: Xamarin Community Toolkit
 

Andere mochten auch

Andere mochten auch (20)

Las realidades sociales_de_ivan
Las realidades sociales_de_ivanLas realidades sociales_de_ivan
Las realidades sociales_de_ivan
 
Poison Center Services 2008
Poison Center Services 2008Poison Center Services 2008
Poison Center Services 2008
 
China Online Agency Round Up
China Online Agency Round UpChina Online Agency Round Up
China Online Agency Round Up
 
Bos 18112009 1
Bos 18112009 1Bos 18112009 1
Bos 18112009 1
 
The Earth
The EarthThe Earth
The Earth
 
CaracteríStiques Alumnat Nouvingut Revisat
CaracteríStiques Alumnat Nouvingut RevisatCaracteríStiques Alumnat Nouvingut Revisat
CaracteríStiques Alumnat Nouvingut Revisat
 
Ruby and Rails Basics
Ruby and Rails BasicsRuby and Rails Basics
Ruby and Rails Basics
 
Vg2012jl
Vg2012jlVg2012jl
Vg2012jl
 
structural_elements
structural_elementsstructural_elements
structural_elements
 
Property for Sale 46 Meeanee Quay
Property for Sale 46 Meeanee QuayProperty for Sale 46 Meeanee Quay
Property for Sale 46 Meeanee Quay
 
Tto tbc nejm
Tto tbc nejmTto tbc nejm
Tto tbc nejm
 
GIZAKION ETA INGURUNEAREN ARTEKO HARREMANA
GIZAKION ETA INGURUNEAREN ARTEKO HARREMANAGIZAKION ETA INGURUNEAREN ARTEKO HARREMANA
GIZAKION ETA INGURUNEAREN ARTEKO HARREMANA
 
Blockbusters L2 - 1
Blockbusters L2 - 1Blockbusters L2 - 1
Blockbusters L2 - 1
 
Get Seen
Get SeenGet Seen
Get Seen
 
Replay Solutions CFD
Replay Solutions CFDReplay Solutions CFD
Replay Solutions CFD
 
Birthday presantation
Birthday presantationBirthday presantation
Birthday presantation
 
Making feature specs fun again
Making feature specs fun againMaking feature specs fun again
Making feature specs fun again
 
【佐賀大学】平成19年環境報告書
【佐賀大学】平成19年環境報告書【佐賀大学】平成19年環境報告書
【佐賀大学】平成19年環境報告書
 
The Last Problem You Had
The Last Problem You HadThe Last Problem You Had
The Last Problem You Had
 
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - DOCENTES
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - DOCENTESATENDIMENTO EDUCACIONAL ESPECIALIZADO - DOCENTES
ATENDIMENTO EDUCACIONAL ESPECIALIZADO - DOCENTES
 

Ähnlich wie The Audio User Experience for Widgets

Building_The_Next-Generation_UI - Multitouch and Ribbon
Building_The_Next-Generation_UI - Multitouch and RibbonBuilding_The_Next-Generation_UI - Multitouch and Ribbon
Building_The_Next-Generation_UI - Multitouch and RibbonMithun T. Dhar
 
Wcag 2.0 level_a_all_ejames
Wcag 2.0 level_a_all_ejamesWcag 2.0 level_a_all_ejames
Wcag 2.0 level_a_all_ejameselianna james
 
Reform Symposium Elluminate Presenter Training
Reform Symposium Elluminate Presenter TrainingReform Symposium Elluminate Presenter Training
Reform Symposium Elluminate Presenter TrainingJo Hart
 
ACPET online session2
ACPET online session2ACPET online session2
ACPET online session2Yum Studio
 
The Good, The Bad, The Voiceover - ios Accessibility
The Good, The Bad, The Voiceover - ios AccessibilityThe Good, The Bad, The Voiceover - ios Accessibility
The Good, The Bad, The Voiceover - ios AccessibilityAimee Maree Forsstrom
 
5 free tools for web accessibility testing
5 free tools for web accessibility testing5 free tools for web accessibility testing
5 free tools for web accessibility testingJohn McNabb
 
Web demo 3.0 screenshots
Web demo 3.0 screenshotsWeb demo 3.0 screenshots
Web demo 3.0 screenshotstspelde
 
FATES: Screencast-O-Matic Part 1
FATES: Screencast-O-Matic Part 1FATES: Screencast-O-Matic Part 1
FATES: Screencast-O-Matic Part 1Julie Zamostny
 
Creating engagement in online meetings using zoom
Creating engagement in online meetings using zoomCreating engagement in online meetings using zoom
Creating engagement in online meetings using zoomBrian Pichman
 
Windows 11 voice input
Windows 11 voice inputWindows 11 voice input
Windows 11 voice inputssuser1eca7d
 
See Me, Feel Me, Touch Me, Heal Me
See Me, Feel Me, Touch Me, Heal MeSee Me, Feel Me, Touch Me, Heal Me
See Me, Feel Me, Touch Me, Heal MeUXPA Boston
 
Web application(basics) session 1
Web application(basics) session 1Web application(basics) session 1
Web application(basics) session 1DhanushSarode
 
Narrator userguide
Narrator userguideNarrator userguide
Narrator userguideJoh Nny
 
Time to Stop Wasting Time
Time to Stop Wasting TimeTime to Stop Wasting Time
Time to Stop Wasting Timeangiebakke
 
Word 2007 Bootcamp Slides
Word 2007 Bootcamp SlidesWord 2007 Bootcamp Slides
Word 2007 Bootcamp Slidesjennyhowell76
 
Accessible User Experience Handbook
Accessible User Experience HandbookAccessible User Experience Handbook
Accessible User Experience HandbookCollette Costello
 
iOS 7 Accessibility
iOS 7 AccessibilityiOS 7 Accessibility
iOS 7 AccessibilityTed Drake
 
Turbocharge Your Mac Productivity SVMUG
Turbocharge Your Mac Productivity SVMUGTurbocharge Your Mac Productivity SVMUG
Turbocharge Your Mac Productivity SVMUGAllison Sheridan
 

Ähnlich wie The Audio User Experience for Widgets (20)

Building_The_Next-Generation_UI - Multitouch and Ribbon
Building_The_Next-Generation_UI - Multitouch and RibbonBuilding_The_Next-Generation_UI - Multitouch and Ribbon
Building_The_Next-Generation_UI - Multitouch and Ribbon
 
Wcag 2.0 level_a_all_ejames
Wcag 2.0 level_a_all_ejamesWcag 2.0 level_a_all_ejames
Wcag 2.0 level_a_all_ejames
 
Reform Symposium Elluminate Presenter Training
Reform Symposium Elluminate Presenter TrainingReform Symposium Elluminate Presenter Training
Reform Symposium Elluminate Presenter Training
 
MacBook Pro Out of the Box - Secondary Faculty
MacBook Pro Out of the Box - Secondary FacultyMacBook Pro Out of the Box - Secondary Faculty
MacBook Pro Out of the Box - Secondary Faculty
 
ACPET online session2
ACPET online session2ACPET online session2
ACPET online session2
 
The Good, The Bad, The Voiceover - ios Accessibility
The Good, The Bad, The Voiceover - ios AccessibilityThe Good, The Bad, The Voiceover - ios Accessibility
The Good, The Bad, The Voiceover - ios Accessibility
 
5 free tools for web accessibility testing
5 free tools for web accessibility testing5 free tools for web accessibility testing
5 free tools for web accessibility testing
 
Web demo 3.0 screenshots
Web demo 3.0 screenshotsWeb demo 3.0 screenshots
Web demo 3.0 screenshots
 
FATES: Screencast-O-Matic Part 1
FATES: Screencast-O-Matic Part 1FATES: Screencast-O-Matic Part 1
FATES: Screencast-O-Matic Part 1
 
Creating engagement in online meetings using zoom
Creating engagement in online meetings using zoomCreating engagement in online meetings using zoom
Creating engagement in online meetings using zoom
 
Windows 11 voice input
Windows 11 voice inputWindows 11 voice input
Windows 11 voice input
 
See Me, Feel Me, Touch Me, Heal Me
See Me, Feel Me, Touch Me, Heal MeSee Me, Feel Me, Touch Me, Heal Me
See Me, Feel Me, Touch Me, Heal Me
 
Web application(basics) session 1
Web application(basics) session 1Web application(basics) session 1
Web application(basics) session 1
 
Narrator userguide
Narrator userguideNarrator userguide
Narrator userguide
 
Time to Stop Wasting Time
Time to Stop Wasting TimeTime to Stop Wasting Time
Time to Stop Wasting Time
 
Word 2007 Bootcamp Slides
Word 2007 Bootcamp SlidesWord 2007 Bootcamp Slides
Word 2007 Bootcamp Slides
 
Audacity 101 Slides
Audacity 101 SlidesAudacity 101 Slides
Audacity 101 Slides
 
Accessible User Experience Handbook
Accessible User Experience HandbookAccessible User Experience Handbook
Accessible User Experience Handbook
 
iOS 7 Accessibility
iOS 7 AccessibilityiOS 7 Accessibility
iOS 7 Accessibility
 
Turbocharge Your Mac Productivity SVMUG
Turbocharge Your Mac Productivity SVMUGTurbocharge Your Mac Productivity SVMUG
Turbocharge Your Mac Productivity SVMUG
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 

Kürzlich hochgeladen (20)

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

The Audio User Experience for Widgets

  • 1. The Audio User Experience for Widgets Todd Kloots @todd
  • 2. Goals 1. Understand what users of screen readers expect or need to hear when interacting with widgets 2. Understand the common keyboard and touch interaction patterns for widgets
  • 3. Screen Readers Read the code (HTML) Read the focused element What is read: Element/Control type Label Properties State changes For web-based interfaces most of the information that screen readers announce originates from the code—the HTML.
  • 4. Navigation Some fundamentals. First, how do users of screen readers navigate through a page or application?
  • 5. Navigating web pages or applications using a screen reader is very much the opposite of the experience for sighted users. As a sighted person, when you first see a web page or application you see the gestalt.
  • 6. Then you can focus your eyes on the task you want to accomplish, often ignoring the other parts of the page or application. For example, if you want to search, you focus your eyes on the search box and ignore the rest of the page.
  • 7. Or if you want to read a section of a page, you move your focus to that section.
  • 8. On the other hand, users of screen readers begin with a blank canvas and discover the page or application one element or section at a time. It is not until they traverse through a section that they can begin to get a sense of the whole.
  • 9. Imagine navigating through yahoo.com using a screen reader. You’d first encounter the Yahoo! logo.
  • 10. Then the first of the search tabs at the top of the page: “Web”
  • 16. And finally the “Search” button.
  • 17. And after navigating through those elements you might begin to perceive them as belonging to a section.
  • 18. Widgets That's navigation. Now, how do users of screen readers interact with wigets?
  • 19. Demo http://youtu.be/ZnlvBIfTQfI Demo of interacting with a checkbox using VoiceOver—the screen reader for the Mac. Notice how VoiceOver announces the control type (“checkbox”), the label “Send me offers”, and the current state (“checked” and “not checked”). All this text is announced to ensure that users of screen readers can perceive and operate the widget.
  • 20. See Hear That's the experience for existing widgets. For custom controls, most often problems are caused when there is a gap between the visual and audio user experience such that users of screen readers do not have access to the same information as sighted users.
  • 21. http://youtu.be/lpU8IHiU8rw This short video illustrates the screen reader user experience of a custom toolbar that doesn't use ARIA and whose buttons aren't properly labeled. Notice how the user is unaware of the fact that they are interacting with a toolbar, and how each button is indistinguishable for one another. This demonstrates a common problem accessibility problem for custom controls built using JavaScript: a perception gap between the visual and audio user experience.
  • 22. Visual rendering of the screen reader user experience when contextual information and labels are not available.
  • 23. http://youtu.be/3AdvVg2Cs9Q This short video illustrates the user experience of a custom toolbar that uses ARIA to improve the user experience for users of screen readers. Notice how there is no gap in what sighted users perceive and what the screen reader announces; the screen reader announces to the user they are in a toolbar and the label of each button. This is made possible by ARIA—it provides developers with the necessary tools to close gaps between the visual and audio user experience.
  • 24. http://youtu.be/WK6qN4OCwVU This short video illustrates the screen reader user experience of a custom modal dialog that doesn't use ARIA. Notice how when the dialog is made visible the only information that is announced is the label of the "OK" button. Other contextual information such as the dialog's title, and message are not announced. This demonstrates a common accessibility problem for custom controls built using JavaScript: a perception gap between the visual and audio user experience.
  • 25. http://youtu.be/XqEwuV2HySs This short video illustrates the user experience of a custom modal dialog that uses ARIA to improve the user experience for users of screen readers. Notice how when the dialog is made visible the same information visible to sighted users is also announced by the screen reader. This is made possible by ARIA—it provides developers with the necessary tools to close gaps between the visual and audio user experience.
  • 26. Screen readers are available on a variety of devices including: desktop, phones and tablets.
  • 27. As for mobile: Screen readers are available for both iOS and Android.
  • 28. Configuring the Mac Every Mac has a built-in screen reader called VoiceOver.
  • 29. Start/Stop VoiceOver Cmd + F5 (or Fn + Cmd + F5)
  • 30. Speech Rate Press Ctrl + Option + Command + → until you see/hear "Rate" Press Ctrl + Option + Command + ↓ to To change the speech rate (how fast VoiceOver speaks) • Press Ctrl + Option + Command + → until you see/hear "Rate" make VoiceOver speak slower • Press Ctrl + Option + Command + ↓ to make VoiceOver speak slower • Press Ctrl + Option + Command + ↑ to make VoiceOver speak faster Press Ctrl + Option + Command + ↑ to make VoiceOver speak faster If you find VoiceOver is speaking too fast, you can adjust the rate.
  • 31. VoiceOver Shortcuts Task Shortcut Toggle VoiceOver on/off Command + F5 (or Fn + Command + F5) Stop speaking Ctrl Read the focused item Ctrl + Option + A Move to next/previous control Tab / Shift + Tab Activate the focused item Spacebar OR Ctrl + Opt + Spacebar Toggle keyboard help Ctrl + Option + K Toggle the display off/on Ctrl + Option + Shift + F11 Some of the very basic shortcuts you’ll need to know to begin using VoiceOver and to test custom widgets.
  • 32. nvda-project.org The NVDA screen reader is a free screen readers for Windows.
  • 33. Install NVDA 1. Download and install NVDA 2. Press Ctrl + Alt + N to start NVDA 3. After NVDA starts uncheck the checkbox labeled "Show this dialog when NVDA starts"
  • 34. Disable Mouse Tracking 1. Right click on the NVDA icon in the system tray 2. Go to Preferences > Mouse Settings 3. Uncheck the checkbox labeled "Mouse Tracking" Sighted users might want to disable mouse tracking in the interest of reducing "noise"
  • 35. Save Preferences 1. Right click on the NVDA icon in the system tray 2. Choose the "Save Configuration" menu item
  • 36. Configuring Speech Rate Ctrl + Insert + ↓ Speak slower Ctrl + Insert + ↑ Speak faster If you find the screen reader is speaking too fast, you can adjust the rate.
  • 37. NVDA Speech Viewer Click on the NVDA icon in the system try Go to Tools > Speech Viewer If you don't want to listen to the screen reader, the spoken text is available via NVDA's speech viewer.
  • 38. NVDA Keyboard Shortcuts Task Shortcut Stop NVDA from speaking Ctrl Toggle Browse Mode on/off Insert + Spacebar Read the focused item Insert + Tab Activate the focused item Enter or Spacebar Move between objects in the tab order Tab or Shift + Tab Toggle NVDA on Ctrl + Alt + N Toggle NVDA off Insert + Q Some of the very basic shortcuts you’ll need to know to begin using NVDA and to test custom widgets.
  • 40. Enable VoiceOver on iOS Settings > General > Accessibility > Triple- click Home Choose VoiceOver As a developer, I recommend setting up VoiceOver on iOS such that triple-clicking the Home button toggles VoiceOver on and off.
  • 41. Widget Touch Patterns Task Gesture Speak item or navigate to item Tap Select the next or previous item Flick right or left Activate (click) the selected item Double-tap Change selection or value Flick up or down Dismiss an alert Two-finger “scrub” Some of the very basic shortcuts you’ll need to know to begin using VoiceOver and to test custom widgets for mobile.
  • 42. Exercises Some exercises to get you familiar with using existing web form controls and classic desktop controls using a screen reader.
  • 43. Exercise bit.ly/z86b0J Use this simple page to begin to get comfortable using either VoiceOver and Safari on the Mac, or NVDA and Firefox on Windows. Observable keyboard patterns for existing HTML form controls: Tab and Shift+Tab navigate between widgets/controls Arrow keys change selection in a group Spacebar executes a click action Enter executes the default action Esc key closes menus and dialogs Observable widget information announced by the screen reader: Widget type Widget label Widget properties Widget state
  • 44. Exercise Use the menubar with VoiceOver enabled. (Press Control + F2 to focus the menubar.) Notice some of the menubar keyboard patterns: Arrows navigate the menubar and submenus Esc key closes the menu and blurs the menubar. When the menubar blurs, focus is restored to the control that previously had focus. Notice how VoiceOver announces things like: The label of the current menu or menuitem The size of the menu when you first open it Submenu items are announced as "submenu" The state of menuitems—for example "dimmed" to indicate disabled menuitems When a menu closes
  • 45. Exercise Use the tree control in the Finder with VoiceOver enabled. Notice some of the tree control keyboard patterns: Up and down arrow keys navigate between items Left and right arrow key expand or collapse items Notice how VoiceOver announces when a tree item expands or collapses.
  • 46. Exercise Use one of the tab controls on the Mac with VoiceOver enabled. Notice how VoiceOver announces things like: The selected state of a tab The total number of tabs Notice the tab control keyboard patterns: Left and right arrows move focus between tabs Spacebar changes the selected tab
  • 47. Exercise Use the menubar in IE on Windows with NVDA enabled. (Press Alt + F to move focus to the menubar.) Notice some of the menubar keyboard patterns: Arrows navigate the menubar and submenus Esc key closes the menu and blurs the menubar. When the menubar blurs, focus is restored to the control that previously had focus. Notice how NVDA announces things like: The label of the current menu or menuitem The size of the menu when you first open it Submenu items are announced as "submenu" The state of menuitems—for example "unavailable" to indicate disabled menuitems
  • 48. Exercise Tab controls on Windows work similar to tab controls on the Mac. Move focus to the control by pressing Tab or Shift + Tab. Change tabs via left/right arrow keys.
  • 49. Widget Keyboard Patterns Task Key Focus Next or Previous Widget Tab / Shift + Tab Change selection →, ←, ↑, ↓ Expand / Collapse →, ←, ↑, ↓ Close or Exit Esc Click Spacebar Default Action Enter Although there are differences across browsers and platforms, there are many similarities with respect to keyboard patterns for widgets.
  • 50. Mobile Exercise bit.ly/z86b0J Use this simple test page to begin learning how to interact with HTML form controls when VoiceOver is enabled. Some observable patterns: Swipe left/right to move between widgets Once a widget has focus, double tab anywhere on the screen to execute a “click” or interact with the control For controls that support selection, swiping up or down changes the value
  • 51. Widget Touch Patterns Task Gesture Speak item or navigate to item Tap Select the next or previous item Flick right or left Activate (click) the selected item Double-tap Change selection or value Flick up or down Dismiss an alert Two-finger “scrub”
  • 53. Screen Readers Read the code (HTML) Read the focused element What is read: Element/Control type Label Properties State changes
  • 54. Widget Keyboard Patterns Task Key Focus Next or Previous Widget Tab / Shift + Tab Change selection →, ←, ↑, ↓ Expand / Collapse →, ←, ↑, ↓ Close or Exit Esc Click Spacebar Default Action Enter Although there are differences across browsers and platforms, there are many similarities and common patterns for widgets, and these patterns span the web and the desktop on both platforms—Mac and Windows.
  • 55. Widget Touch Patterns Task Gesture Speak item or navigate to item Tap Select the next or previous item Flick right or left Activate (click) the selected item Double-tap Change selection or value Flick up or down Dismiss an alert Two-finger “scrub”

Hinweis der Redaktion

  1. \n
  2. \n
  3. For web-based interfaces most of the information that screen readers announce originates from the code—the HTML.\n
  4. Some fundamentals. First, how do users of screen readers navigate through a page or application?\n
  5. Navigating web pages or applications using a screen reader is very much the opposite of the experience for sighted users.\n\nAs a sighted person, when you first see a web page or application you see the gestalt.\n
  6. Then you can focus your eyes on the task you want to accomplish, often ignoring the other parts of the page or application.\n\nFor example, if you want to search, you focus your eyes on the search box and ignore the rest of the page.\n
  7. Or if you want to read a section of a page, you move your focus to that section.\n
  8. On the other hand, users of screen readers begin with a blank canvas and discover the page or application one element or section at a time. It is not until they traverse through a section that they can begin to get a sense of the whole.\n
  9. Imagine navigating through yahoo.com using a screen reader. You’d first encounter the Yahoo! logo.\n
  10. Then the first of the search tabs at the top of the page: “Web”\n
  11. Then “Images”\n
  12. Then “Video”\n
  13. Then “Travel”\n
  14. Then “News”\n
  15. Then the search box.\n
  16. And finally the “Search” button.\n
  17. And after navigating through those elements you might begin to perceive them as belonging to a section.\n
  18. That's navigation. Now, how do users of screen readers interact with wigets?\n
  19. Demo of interacting with a checkbox using VoiceOver—the screen reader for the Mac. Notice how VoiceOver announces the control type (“checkbox”), the label “Send me offers”, and the current state (“checked” and “not checked”).\n\nAll this text is announced to ensure that users of screen readers can perceive and operate the widget.\n
  20. That's the experience for existing widgets. For custom controls, most often problems are caused when there is a gap between the visual and audio user experience such that users of screen readers do not have access to the same information as sighted users.\n
  21. This short video illustrates the screen reader user experience of a custom toolbar that doesn't use ARIA and whose buttons aren't properly labeled. Notice how the user is unaware of the fact that they are interacting with a toolbar, and how each button is indistinguishable for one another. \n\nThis demonstrates a common problem accessibility problem for custom controls built using JavaScript: a perception gap between the visual and audio user experience.\n
  22. Visual rendering of the screen reader user experience when contextual information and labels are not available.\n
  23. This short video illustrates the user experience of a custom toolbar that uses ARIA to improve the user experience for users of screen readers. Notice how there is no gap in what sighted users perceive and what the screen reader announces; the screen reader announces to the user they are in a toolbar and the label of each button.\n\nThis is made possible by ARIA—it provides developers with the necessary tools to close gaps between the visual and audio user experience.\n
  24. This short video illustrates the screen reader user experience of a custom modal dialog that doesn't use ARIA. Notice how when the dialog is made visible the only information that is announced is the label of the "OK" button. Other contextual information such as the dialog's title, and message are not announced.\n\nThis demonstrates a common accessibility problem for custom controls built using JavaScript: a perception gap between the visual and audio user experience.\n
  25. This short video illustrates the user experience of a custom modal dialog that uses ARIA to improve the user experience for users of screen readers. Notice how when the dialog is made visible the same information visible to sighted users is also announced by the screen reader. This is made possible by ARIA—it provides developers with the necessary tools to close gaps between the visual and audio user experience.\n
  26. Screen readers are available on a variety of devices including: desktop, phones and tablets.\n
  27. As for mobile: Screen readers are available for both iOS and Android.\n
  28. Every Mac has a built-in screen reader called VoiceOver.\n
  29. \n
  30. If you find VoiceOver is speaking too fast, you can adjust the rate.\n
  31. Some of the very basic shortcuts you’ll need to know to begin using VoiceOver and to test custom widgets.\n
  32. The NVDA screen reader is a free screen readers for Windows.\n
  33. \n
  34. Sighted users might want to disable mouse tracking in the interest of reducing "noise"\n
  35. \n
  36. If you find the screen reader is speaking too fast, you can adjust the rate. \n
  37. If you don't want to listen to the screen reader, the spoken text is available via NVDA's speech viewer.\n
  38. Some of the very basic shortcuts you’ll need to know to begin using NVDA and to test custom widgets.\n
  39. \n
  40. As a developer, I recommend setting up VoiceOver on iOS such that triple-clicking the Home button toggles VoiceOver on and off.\n
  41. Some of the very basic shortcuts you’ll need to know to begin using VoiceOver and to test custom widgets for mobile.\n
  42. Some exercises to get you familiar with using existing web form controls and classic desktop controls using a screen reader.\n
  43. Use this simple page to begin to get comfortable using either VoiceOver and Safari on the Mac, or NVDA and Firefox on Windows.\n\nObservable keyboard patterns for existing HTML form controls:\n Tab and Shift+Tab navigate between widgets/controls\n Arrow keys change selection in a group\n Spacebar executes a click action\n Enter executes the default action\n Esc key closes menus and dialogs\n\n\nObservable widget information announced by the screen reader:\n Widget type\n Widget label\n Widget properties\n Widget state\n
  44. Use the menubar with VoiceOver enabled. (Press Control + F2 to focus the menubar.)\n\nNotice some of the menubar keyboard patterns:\n Arrows navigate the menubar and submenus\n Esc key closes the menu and blurs the menubar. When the menubar blurs, focus is restored to the control that previously had focus.\n\nNotice how VoiceOver announces things like:\n The label of the current menu or menuitem\n The size of the menu when you first open it\n Submenu items are announced as "submenu"\n The state of menuitems—for example "dimmed" to indicate disabled menuitems\n When a menu closes\n\n
  45. Use the tree control in the Finder with VoiceOver enabled.\n\nNotice some of the tree control keyboard patterns:\n Up and down arrow keys navigate between items\n Left and right arrow key expand or collapse items\n\nNotice how VoiceOver announces when a tree item expands or collapses.\n\n\n
  46. Use one of the tab controls on the Mac with VoiceOver enabled.\n\nNotice how VoiceOver announces things like:\n The selected state of a tab\n The total number of tabs\n\nNotice the tab control keyboard patterns:\n Left and right arrows move focus between tabs\n Spacebar changes the selected tab\n\n\n\n
  47. Use the menubar in IE on Windows with NVDA enabled. (Press Alt + F to move focus to the menubar.) \n\nNotice some of the menubar keyboard patterns:\n Arrows navigate the menubar and submenus\n Esc key closes the menu and blurs the menubar. When the menubar blurs, focus is restored to the control that previously had focus.\n\nNotice how NVDA announces things like:\n The label of the current menu or menuitem\n The size of the menu when you first open it\n Submenu items are announced as "submenu"\n The state of menuitems—for example "unavailable" to indicate disabled menuitems\n\n
  48. Tab controls on Windows work similar to tab controls on the Mac.\n\n Move focus to the control by pressing Tab or Shift + Tab.\n Change tabs via left/right arrow keys.\n
  49. Although there are differences across browsers and platforms, there are many similarities with respect to keyboard patterns for widgets.\n
  50. Use this simple test page to begin learning how to interact with HTML form controls when VoiceOver is enabled.\n\nSome observable patterns:\n Swipe left/right to move between widgets\n Once a widget has focus, double tab anywhere on the screen to execute a “click” or interact with the control\n For controls that support selection, swiping up or down changes the value\n\n
  51. \n
  52. \n
  53. \n
  54. Although there are differences across browsers and platforms, there are many similarities and common patterns for widgets, and these patterns span the web and the desktop on both platforms—Mac and Windows.\n
  55. \n