W3C home > Mailing lists > Public > w3c-wai-ig@w3.org > April to June 2013

RE: Virtual Buffer Refresh

From: Léonie Watson <tink@tink.co.uk>
Date: Thu, 25 Apr 2013 17:14:48 +0100
To: "'Greg Davies'" <GDavies@jackhenry.com>, "'Jonathan Avila'" <jon.avila@ssbbartgroup.com>, "'Bryan Garaventa'" <bryan.garaventa@whatsock.com>, <w3c-wai-ig@w3.org>
Message-ID: <006a01ce41d0$0242d360$06c87a20$@tink.co.uk>
Greg Davies wrote:
"Focus is set with the Tab key.  The screen reader reads the contents of the
control correctly, it just announces the control incorrectly.  It announces
every control as a combobox regardless if it is actually an inputbox or
anything else."

Is this happening in all screen readers that utilise a virtual buffer and/or
all versions of that screen reader? Do other screen readers behave as
expected when the DOM updates?

Sorry for all the questions, but one last one - can you share the code
and/or make an example page available to test?

Léonie.

	

-----Original Message-----
From: Greg Davies [mailto:GDavies@jackhenry.com] 
Sent: 25 April 2013 17:00
To: Jonathan Avila; Bryan Garaventa; w3c-wai-ig@w3.org
Subject: RE: Virtual Buffer Refresh

Focus is set with the Tab key.  The screen reader reads the contents of the
control correctly, it just announces the control incorrectly.  It announces
every control as a combobox regardless if it is actually an inputbox or
anything else.

Greg Davies

-----Original Message-----
From: Jonathan Avila [mailto:jon.avila@ssbbartgroup.com]
Sent: Thursday, April 25, 2013 9:47 AM
To: Greg Davies; Bryan Garaventa; w3c-wai-ig@w3.org
Subject: RE: Virtual Buffer Refresh

> The problem is the screen reader "thinks" the control the content is 
> in
is something other than what it actually is.

It sounds like a focus issue.  I assume you are setting focus using the
JavaScript focus() method.  What can happen though is a timing issue.  I
have found that creative use of setTimeout with JavaScript a focus() method
call can "wake up" assistive technology in situations where it
thinks the focus is in the wrong place.    Sometimes waiting a few
milliseconds before shifting focus may be need in cases where the screen
reader is refreshing it's view of the DOM.

Jonathan

-----Original Message-----
From: Greg Davies [mailto:GDavies@jackhenry.com]
Sent: Thursday, April 25, 2013 9:50 AM
To: Bryan Garaventa; Jonathan Avila; w3c-wai-ig@w3.org
Subject: RE: Virtual Buffer Refresh

The original content is changed, no problem there and the screen reader can
see the content and announces it.  The problem is the screen reader "thinks"
the control the content is in is something other than what it actually is.
More specifically, an asp:dropdownlist is the control that initially is
changed by the user.  This change triggers a postback to get additional
content, but that content is not displayed on the screen only held in the
background for a popup window.  The next control on the screen is an
asp:textbox.  Its contents has not changed.  When the user tabs to that
textbox control, the screen reader announces the control as a combobox, the
same control name as the dropdownlist, and does the same for every control
on the page regardless of the actual control type.
Executing an ins+esc key combo from the keyboard causes the screen reader to
reread the page and everything is fine with the world.  I want to be able to
initiate that page reread from the program either using aria commands or
javascript.  I have tried various hacks but they do not seem to work
reliably.  Aria-live has gotten us to this point.  Without Aria-live, the
screen reader announces the control labels just as it does the control, with
the same name regardless of the actual label on the control.

Greg Davies

-----Original Message-----
From: Bryan Garaventa [mailto:bryan.garaventa@whatsock.com]
Sent: Wednesday, April 24, 2013 6:46 PM
To: Greg Davies; Jonathan Avila; w3c-wai-ig@w3.org
Subject: Re: Virtual Buffer Refresh

I'm not sure I understand the problem, is it that the right content isn't
being announced, or that the new content isn't appearing in the Virtual
Buffer after it's added to the DOM? Both have different fixes. ARIA works on
the first, but not the second.

----- Original Message -----
From: "Greg Davies" <GDavies@jackhenry.com>
To: "Jonathan Avila" <jon.avila@ssbbartgroup.com>; <w3c-wai-ig@w3.org>
Sent: Wednesday, April 24, 2013 3:41 PM
Subject: RE: Virtual Buffer Refresh


Unfortunately I have already tried using the role="region"
aria-live="polite" and even added aria-atomic="true" with only limited
success.  The issue I am having is once the postback is complete, the screen
reader announces every subsequent input type as the same type as the control
that changed originally to effect the postback.  If I do a "hard" refresh of
the buffer from the keyboard (ins+esc) everything is fine.  I was hoping
there was some way I could do a hard refresh using javascript or some
combination of aria tags.

Greg Davies

-----Original Message-----
From: Jonathan Avila [mailto:jon.avila@ssbbartgroup.com]
Sent: Wednesday, April 24, 2013 2:14 PM
To: Greg Davies; w3c-wai-ig@w3.org
Subject: RE: Virtual Buffer Refresh

> Does anyone have a way of refreshing the virtual buffer through either
ARIA tags, or javascript.  I can force a refresh

Use of aria-live regions or certain roles that are implicit live regions
should work with ARIA supported assistive technologies and browsers.
Freedom Scientific also produced a tech support notice many years ago that
listed many possible techniques.

Some of the techniques are listed on webAccessibility.com and include
changing values in hidden input fields, removing and adding nodes in the
DOM, and changing attributes on elements.

https://www.webaccessibility.com/best_practices.php?best_practice_id=968

Adding and removing nodes in the DOM is likely the best method.

Jonathan

-----Original Message-----
From: Greg Davies [mailto:GDavies@jackhenry.com]
Sent: Wednesday, April 24, 2013 2:56 PM
To: w3c-wai-ig@w3.org
Subject: Virtual Buffer Refresh

Everyone,

Does anyone have a way of refreshing the virtual buffer through either ARIA
tags, or javascript.  I can force a refresh from the keyboard and that
clears up the problem  but I have not been able to force a refresh through
code.  I have tried aria-live but that solution is only partially
successful.  Thank you in advance.

Greg Davies
NOTICE: This electronic mail message and any files transmitted with it are
intended exclusively for the individual or entity to which it is addressed.
The message, together with any attachment, may contain confidential and/or
privileged information.
Any unauthorized review, use, printing, saving, copying, disclosure or
distribution is strictly prohibited. If you have received this message in
error, please immediately advise the sender by reply email and delete all
copies.
NOTICE: This electronic mail message and any files transmitted with it are
intended exclusively for the individual or entity to which it is addressed.
The message, together with any attachment, may contain confidential and/or
privileged information.
Any unauthorized review, use, printing, saving, copying, disclosure or
distribution is strictly prohibited. If you have received this message in
error, please immediately advise the sender by reply email and delete all
copies.


NOTICE: This electronic mail message and any files transmitted with it are
intended exclusively for the individual or entity to which it is addressed.
The message, together with any attachment, may contain confidential and/or
privileged information.
Any unauthorized review, use, printing, saving, copying, disclosure or
distribution is strictly prohibited. If you have received this message in
error, please immediately advise the sender by reply email and delete all
copies.
NOTICE: This electronic mail message and any files transmitted with it are
intended exclusively for the individual or entity to which it is addressed.
The message, together with any attachment, may contain confidential and/or
privileged information.
Any unauthorized review, use, printing, saving, copying, disclosure or
distribution is strictly prohibited. If you have received this message in
error, please immediately advise the sender by reply email and delete all
copies.
Received on Thursday, 25 April 2013 16:15:17 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 13 October 2015 16:21:48 UTC