[Nfb-web] Making Flash Accessible?

Todd.Liebsch Todd.Liebsch at target.com
Thu Feb 24 19:45:55 UTC 2011


Hello!

This is an extremely difficult question to answer and the most simple answer to a very basic question, "Can one make Flash Accessible?" - The answer is, "It depends!"

Below is a snip-it of information that I and a team of very, very talented Flash developers pulled together for a corporate position statement on when and why to use flash.  I hope it helps.
NOTE: Keep in mind this is only a snip-it and has been taken out of context of the larger research article.

The summary of the below is:  Making all of the content within a Flash experience accessible is feasible/possible, but Flash's plugin related problems in browswers are by far the biggest hurdle!
Practical Hurdles

Here we'll discuss the practical hurdles of Flash accessibility.



Window Mode & Screen Reader Access

The embedded Flash object has three window modes. They are controlled with the wmode parameter. The available choices are:

Window

Use the Window value to play a Flash Player movie in its own rectangular window on a web page. This is the default value for wmode and it works the way the classic Flash Player works. This normally provides the fastest animation performance.

Opaque

By using the Opaque value you can use JavaScript to move or resize movies that don't need a transparent background. Opaque mode makes the movie hide everything behind it on the page. Additionally, opaque mode moves elements behind Flash movies (for example, with dynamic HTML) to prevent them from showing through.

Transparent

Transparent mode allows the background of the HTML page, or the DHTML layer underneath the Flash movie or layer, to show through all the transparent portions of the movie. This allows you to overlap the movie with other elements of the HTML page. Animation performance might be slower when you use this value.



The use of wmode="transparent" and wmode="opaque" prevents some assistive technology from receiving information from a swf. This will essentially hide the swf from a screen reader. This is a limitation of the windowless mode and MSAA. There is currently no work around.



Due to the nearly ubiquitous DHTML modal window, this severely limits the practicality of embedding a swf in the default "window" mode.



It is possible to change wmode on the fly by removing it and re-embedding the Flash object with Javascript, but this will create a host of other issues. Re-embedding the swf will cause it to "restart." With going to heroic measures to store all progress information through some tracking method, you will get effects like losing any user interaction progress, causing intro animations to replay, etc...



You an also use JavaScript to remove a default wmode experience temporarily but this would cause a loss in the visual continuity of the site.



Tab Order and Trap Prevention

In browsers other than Internet Explorer, even though the Flash content and the HTML content around it may be accessible, it is not possible to move keyboard focus between the Flash elements and HTML elements without using a mouse. Once focus is placed inside Flash, a keyboard user will be trapped there. Similarly, when focus is placed somewhere outside Flash, it will be impossible to move focus back. This issue is related to Flash's nature as a plugin.



There is a workaround for Firefox called SWFFocus that uses External Interface to inject JavaScript into the page.  This method does not work reliably in Firefox on Mac OSX or in any other Mac OSX browser.



Loss of Graceful Degradation

Creating an accessible experience that is delivered in Flash alone will remove the ability for that experience to gracefully degrade. Users without Flash installed or who routinely avoid it are unlikely to participate.



Reading Order Complexity

We're going to quickly cover some of the complexities of reading order. For a more detailed account, read Adobe's information on reading order.



1.       The default tab order in Flash is unpredictable

2.       There is no distinction between reading order and tab order and are both set by setting the tabIndex property of an object

3.       Once you begin manipulating reading order, all instances within the experience including all text fields and decorative elements must be included in the tabIndex

4.       It is important to include an instance name with every instance in the experience when controlling the reading order. This includes all text, movieclips, buttons and components through the life of the experience

5.       It is not possible to provide an instance name to static text

6.       A single instance of static text will revert the entire reading order to default

7.       Controlling the reading order requires the use of dynamic text fields

8.       The use of dynamic text fields will potentially require the embedding of all fonts



Browser and OS Support

Although Adobe continues to improve accessibility support in Flash Player. Keyboard access and screen reader support varies dramatically between operating systems and browsers. Currently there is no way to access Flash content with a screen reader in Mac OSX.



While this is likely not representative of typical screen reader users, here is a link to some current browser statistics. They only browser that Flash can attain completely accessible in is Internet Explorer.



Resource - Browser usage statistics<http://www.w3schools.com/browsers/browsers_stats.asp>



When it Works

You could use a Flash only, accessible experience if:



*         You are using Internet Explorer

*         You are using wmode = "window"

*         The screen reader being used is MSAA compliant

*         Within the swf, all the content itself has been correctly developed for accessibility



Making all of the content within a Flash experience accessible is feasible, but Flash's plugin related problems are by far the biggest hurdles.



I hope that this helps!



Good Luck,

Todd Liebsch



-----Original Message-----
From: nfb-web-bounces at nfbnet.org<mailto:nfb-web-bounces at nfbnet.org> [mailto:nfb-web-bounces at nfbnet.org]<mailto:[mailto:nfb-web-bounces at nfbnet.org]> On Behalf Of Everett Gavel
Sent: Thursday, February 24, 2011 12:59 PM
To: blindwebbers at yahoogroups.com<mailto:blindwebbers at yahoogroups.com>
Cc: nfb-web at nfbnet.org<mailto:nfb-web at nfbnet.org>; nfbcs at nfbnet.org<mailto:nfbcs at nfbnet.org>
Subject: [Nfb-web] Making Flash Accessible?



Hello,



Does anyone know if there's yet ways to make Flash accessible? I'm unclear

on the latest with this particular point of access.  So I'm asking for help,

thoughts, suggestions, etc.  The version I'm trying to access says it's,

"Adobe Flash Player 10.2.152.26."  It's not at all audible that I've found.

Says it's a slideshow.  What does one have to do to get the text shown on

such a visual platform, in readable text or HTML or something?  Is it

possible to transfer such a slideshow to a PDF or something, and then save

that as a text version?  It'd be nice, wouldn't it?  ;-)



I paid over $300 for this training, and they said a year-and-a-half ago that

it was supposedly accessible.  Still, to this point, it's not.  I've been

letting it slide due to other concerns, but can and want to work on this

point of access and accessible training now.  It's an organization, a

training facility, that offers tons of potential to those who are blind - if

we could access their various training programs better!  I don't want to go

public with naming them, yet.  If anyone is interested in helping, feel free

to contact me offlist and let me know, and we can talk.



Thanks in advance for your thoughts and help with this.





Strive On-Towards Greater Accessibility & Opportunity!

Everett





Everett Gavel

Successful Adaptations, llc

"Making the World (Wide Web) A More Accessible Place!"

everett at everettgavel.com<mailto:everett at everettgavel.com>

(330) 604-5750





_______________________________________________

Nfb-web mailing list

Nfb-web at nfbnet.org<mailto:Nfb-web at nfbnet.org>

http://www.nfbnet.org/mailman/listinfo/nfb-web_nfbnet.org

To unsubscribe, change your list options or get your account info for Nfb-web:

http://www.nfbnet.org/mailman/options/nfb-web_nfbnet.org/todd.liebsch%40target.com



More information about the NFB-Web mailing list