Re: [Accessibility-ia2] IAccessible2

2014-07-08 Thread Pete Brunet
Hi Rich, I'll be in contact with Alex for the handoff.  -Pete

On 7/8/14, 11:36 AM, Richard Schwerdtfeger wrote:

 Hi Pete, Janina,

 As you may know ARIA 1.1 will require some modifications to platform
 accessibility APIs. Alex Surkov, from Mozilla, has agreed to take over
 Pete's position in the Linux Foundation to make the necessary changes,
 as well as other enhancements, required for IA2 implementers. He also
 needs to coordinate with the ATK/ATSPI effort to ensure consistency
 across platforms.

 Alex would like some assistance on process for producing documentation
 and updated IDL documents and any other processes and coordination
 efforts in the Linux Foundation.

 Please lend him any assistance you can to help get him started.

 Best,

 Rich


 Rich Schwerdtfeger


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IAccessibleTable2::caption/summary deprecation notes need correcting

2013-10-15 Thread Pete Brunet
Hi Rich, During another activity I was looking at caption and summary
last night and happened to end up on a W3C site that documents how
tables should be described:
www.w3.org/html/wg/drafts/html/master/tabular-data.html#table-descriptions-techniques

This shows various techniques:

1) Precede the table with a paragraph and use aria-describedby
referencing that paragraph
2) Use the caption tag
3) Use the details tag in a caption tag (and the example shows a summary
tag under the details tag)
4/5) Embed the table in a figure tag which has a figcaption tag

The third case is the only one showing a summary tag, but it's a child
of the caption tag.  I found an example here:
http://archive.msdn.microsoft.com/mag201212HTML5/Release/ProjectReleases.aspx?ReleaseId=5925

Looking at the UIA properties of a page with that markup, i.e. a
hierarchy of caption, details, summary, using Inspect with both IE and
FF I saw the full caption text including the summary in the accName /
UIA Name.  From the perspective of caption that makes sense but having
summary as a substring of caption doesn't.

Is this a proper use of the summary tag?  Or is
aria-describedby/labeledby the proper technique?  Is there a better
document that I should be looking at?

Pete

On 10/12/13 5:00 AM, Richard Schwerdtfeger wrote:
 Thanks Pete.

 Sent from my iPad

 On Oct 12, 2013, at 12:43 AM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:

 The IAccessibleTable2 spec has an error.  The deprecation note on the
 caption method indicates that a describedBy relation should be used
 and the deprecation note on the summary method indicates that a
 labeledBy relation should be used instead.  This is backwards and I
 will submit a replacement soon.

 Pete
 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org 
 mailto:Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IAccessibleTable2::caption/summary deprecation notes need correcting

2013-10-15 Thread Pete Brunet
Thank you Janina, That was very helpful. 

On 10/15/13 1:05 PM, Janina Sajka wrote:
 Hi Pete, All:

 Janina chiming in here to try and provide overall strategic history.
 I'll leave the technical details to Rich, Steve, and others.

 The initial problem is that HTML 5 has obsoleted (deprecated) table
 summary as we knew it in HTML 4.

 We tried to get that overturned -- to rinstate summary. Eventually,
 however, we backed off that effort in the expectation that we could
 accomplish the same purpose more strategically.

 The goal is that HTML 4's table summary functionality will be taken up
 by ARIA-1.1's ARIA-DescribedAt attribute. We have published our FPWD of
 ARIA-1.1 specifically to put this attribute out for discussion:

 http://lists.w3.org/Archives/Public/wai-xtech/2013Sep/0011.html

 As always with ARIA, our intent is that this attribute will be usable
 across markup environments, e.g. SVG as well as HTML.

 Also, we intend it to be usable on virtually any element. Thus,
 ARIA-DescribedAt could be understood to subsume HTML 4's Table Summary
 as well as HTML 4's (and soon HTML 5's) longdesc, among others.

 Meanwhile, we have determined to leave sleeping dogs lie re summary
 encapsulated in caption.

 Janina

 Pete Brunet writes:
 Hi Rich, During another activity I was looking at caption and summary
 last night and happened to end up on a W3C site that documents how
 tables should be described:
 www.w3.org/html/wg/drafts/html/master/tabular-data.html#table-descriptions-techniques

 This shows various techniques:

 1) Precede the table with a paragraph and use aria-describedby
 referencing that paragraph
 2) Use the caption tag
 3) Use the details tag in a caption tag (and the example shows a summary
 tag under the details tag)
 4/5) Embed the table in a figure tag which has a figcaption tag

 The third case is the only one showing a summary tag, but it's a child
 of the caption tag.  I found an example here:
 http://archive.msdn.microsoft.com/mag201212HTML5/Release/ProjectReleases.aspx?ReleaseId=5925

 Looking at the UIA properties of a page with that markup, i.e. a
 hierarchy of caption, details, summary, using Inspect with both IE and
 FF I saw the full caption text including the summary in the accName /
 UIA Name.  From the perspective of caption that makes sense but having
 summary as a substring of caption doesn't.

 Is this a proper use of the summary tag?  Or is
 aria-describedby/labeledby the proper technique?  Is there a better
 document that I should be looking at?

 Pete

 On 10/12/13 5:00 AM, Richard Schwerdtfeger wrote:
 Thanks Pete.

 Sent from my iPad

 On Oct 12, 2013, at 12:43 AM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:

 The IAccessibleTable2 spec has an error.  The deprecation note on the
 caption method indicates that a describedBy relation should be used
 and the deprecation note on the summary method indicates that a
 labeledBy relation should be used instead.  This is backwards and I
 will submit a replacement soon.

 Pete
 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org 
 mailto:Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2
 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] IAccessibleTable2::caption/summary deprecation notes need correcting

2013-10-11 Thread Pete Brunet
The IAccessibleTable2 spec has an error.  The deprecation note on the
caption method indicates that a describedBy relation should be used and
the deprecation note on the summary method indicates that a labeledBy
relation should be used instead.  This is backwards and I will submit a
replacement soon.

Pete
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-07-20 Thread Pete Brunet
Thanks for checking Jamie.

The other thing I don't have any feedback on is the proxy dll:
http://accessibility.linuxfoundation.org/a11yspecs/ia2/proxy-dll/

Hopefully someone could verify that at some point.

Pete

On 7/19/13 1:41 AM, James Teh wrote:
 On 16/07/2013 11:09 PM, Pete Brunet wrote:
 The site is now updated:
 http://accessibility.linuxfoundation.org/a11yspecs/ia2/
 Hopefully buildapi.sh and ia2_api_all.idl are OK now.
 The idl is now correct. Thanks!

 Jamie


___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-07-16 Thread Pete Brunet
The site is now updated:
http://accessibility.linuxfoundation.org/a11yspecs/ia2/

Hopefully buildapi.sh and ia2_api_all.idl are OK now.

Pete

On 7/9/13 7:52 AM, Alexander Surkov wrote:
 We don't use merged IDL. I believe we build header files from IDLs.
 Alex.

 On Tue, Jul 9, 2013 at 3:23 AM, James Teh ja...@nvaccess.org wrote:
 On 9/07/2013 5:13 PM, James Teh wrote:
 Now, the
 IDL includes Accessible2.idl before AccessibleRelation.idl, which breaks
 because IAccessible2 depends on IAccessibleRelation.
 Alex: I'm curious as to why you didn't hit this issue at Mozilla. Does
 Mozilla use the official merged IDL or do you generate your own?


 Jamie

 --
 James Teh
 Director, NV Access Limited
 Ph + 61 7 5667 8372
 www.nvaccess.org
 Facebook: http://www.facebook.com/NVAccess
 Twitter: @nvaccess
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-07-09 Thread Pete Brunet
Thanks for finding this Jamie, I will submit to the LF help desk for
replacement.  -Pete

On 7/9/13 2:13 AM, James Teh wrote:
 On 22/04/2013 4:28 PM, James Teh wrote:
 There is a major problem with the merged IDL. It does not include the
 IAccessibleTable.idl file.

 This is now fixed, but unfortunately, there's more bad news. Now, the
 IDL includes Accessible2.idl before AccessibleRelation.idl, which
 breaks because IAccessible2 depends on IAccessibleRelation. It looks
 like buildapi.sh was changed to list all of the .idl files in
 alphabetical order. I suspect there will be other similar problems
 once AccessibleRelation is moved. I think it's best to return to the
 old order and just add the missing AccessibleTable.idl.

 I'm attaching a modified version of buildapi.sh which does just this.

 Jamie



 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Please review the v1.3 update on the IA2 site

2013-05-17 Thread Pete Brunet

On 5/17/13 6:04 AM, Alexander Surkov wrote:
 Hi, Pete. It seems linux line endings were changed to windows line
 ending. Was it intentional change?
Hi Alex, It was not intentional.  It's often a problem in my
multi-platform environment.  What needs to be changed?

Pete
 Thank you.
 Alex.


 On Thu, May 16, 2013 at 10:39 PM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:

 Hi Alex, That's right.  I found a couple of very small problems in
 my review yesterday but when I rebuild the zip it not have an
 effect on the code.  I'm going to wait a while to see if anyone
 else finds any issues before I resubmit to the web site.  -Pete


 On 5/16/13 12:32 AM, Alexander Surkov wrote:
 Hi, Pete. Thanks for finishing it! Do I understand right that
 link for downloading IDLs is
 
 http://accessibility.linuxfoundation.org/a11yspecs/ia2/ia2-api-20130501.zip.
 Thank you.
 Alex.


 On Thu, May 16, 2013 at 2:10 PM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:

 The IA2 site has been updated to fix a few things people
 noticed were wrong.  Please take a look and let me know if
 you find anything that needs fixing.

 The top level is here:
 http://accessibility.linuxfoundation.org/a11yspecs/ia2/

 Please ignore the prior zip, ia2-api-20130314.zip.  It will
 eventually disappear.

 The spec is here:
 http://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/

 Pete
 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com
 mailto:ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 mailto:Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2



 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com
 mailto:ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G



-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Object attribute format

2013-05-17 Thread Pete Brunet
Alex, Can you give us an example of the multi-value case?  As to the
choice we need more input so far we have that you suggested a space and
I suggested a comma.  -Pete

On 5/16/13 11:03 PM, Alexander Surkov wrote:
 So it'd be good to put the format into the spec. Do I understand
 correct that the choice falls at comma separated list?
 Thank you.
 Alex.


 On Fri, May 17, 2013 at 11:44 AM, James Teh ja...@nvaccess.org
 mailto:ja...@nvaccess.org wrote:

 On 17/05/2013 11:54 AM, Pete Brunet wrote:

 attribute:value1,value2 seems acceptable.

 Agreed.


 Does it implicitly mean that in case of several values the
 following
 format is expected (as no subattributes were used):
 attribute:value1,value2?

 While the format makes sense, I don't think it's implicit. It
 isn't something I considered while writing NVDA's IA2 attributes
 parser, so it won't handle this without changes. It's probably
 reasonable that others may not have considered it either.

 Jamie

 -- 
 James Teh
 Director, NV Access Limited
 Email: ja...@nvaccess.org mailto:ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 Phone: +61 7 5667 8372

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 mailto:Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2




 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Please review the v1.3 update on the IA2 site

2013-05-17 Thread Pete Brunet
Hi Alex, I used grep under Cygwin to look at the 1.2.1 files and they
also had CRLF line endings.  Here is the grep command I used:
cd .../api
grep -IUrl ^M .
where ^M was entered using Ctrl+V Ctrl+M.
This technique is from:
http://stackoverflow.com/questions/73833/how-do-you-search-for-files-containing-dos-line-endings-crlf-with-grep-under-l

BTW, CR is Ctrl M and LF is Ctrl J

Are you seeing differences from the prior version?  If so, what
differences?  If not, is this a change request?

I'm assuming since we are working in a Win environment that CRLF endings
would be expected.

Pete

On 5/17/13 9:35 AM, Alexander Surkov wrote:
 It'd be good to convert line endings in all files into unix format.



 On Fri, May 17, 2013 at 11:02 PM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:


 On 5/17/13 6:04 AM, Alexander Surkov wrote:
 Hi, Pete. It seems linux line endings were changed to windows
 line ending. Was it intentional change?
 Hi Alex, It was not intentional.  It's often a problem in my
 multi-platform environment.  What needs to be changed?

 Pete

 Thank you.
 Alex.


 On Thu, May 16, 2013 at 10:39 PM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:

 Hi Alex, That's right.  I found a couple of very small
 problems in my review yesterday but when I rebuild the zip it
 not have an effect on the code.  I'm going to wait a while to
 see if anyone else finds any issues before I resubmit to the
 web site.  -Pete


 On 5/16/13 12:32 AM, Alexander Surkov wrote:
 Hi, Pete. Thanks for finishing it! Do I understand right
 that link for downloading IDLs is
 
 http://accessibility.linuxfoundation.org/a11yspecs/ia2/ia2-api-20130501.zip.
 Thank you.
 Alex.


 On Thu, May 16, 2013 at 2:10 PM, Pete Brunet
 p...@a11ysoft.com mailto:p...@a11ysoft.com wrote:

 The IA2 site has been updated to fix a few things people
 noticed were wrong.  Please take a look and let me know
 if you find anything that needs fixing.

 The top level is here:
 http://accessibility.linuxfoundation.org/a11yspecs/ia2/

 Please ignore the prior zip, ia2-api-20130314.zip.  It
 will eventually disappear.

 The spec is here:
 
 http://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/

 Pete
 -- 
 *Pete Brunet*
 

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com
 mailto:ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 mailto:Accessibility-ia2@lists.linuxfoundation.org
 
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2



 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com
 mailto:ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G



 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com
 mailto:ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G



-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Object attribute format

2013-05-16 Thread Pete Brunet
I suppose it could be but the current spec doesn't provide for spaces as
token separators so using comma would be more consistent and perhaps
more in line with the capability of current parsers.  -Pete

On 5/16/13 9:00 PM, Alexander Surkov wrote:
 In Firefox we are going to have multiple value attributes but we are
 at implementation stage yet. I'm not aware about other implementations.

 Is attribute: value1 value2 format (space delimited string) acceptable?

 ALex.


 On Fri, May 17, 2013 at 10:54 AM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:

 Are any IA2 COM servers implementing this yet?  If so how was it
 done?  attribute:value1,value2 seems acceptable.  -Pete


 On 5/16/13 7:57 PM, Alexander Surkov wrote:
 (resending to IA2 list)

 Hi.

 What is object attribute format is excepted when the server needs
 to provide more than one value for the single object attribute.

 The IA2 doc says [1] that format is:
 attribute:value;attribute:subattribute=subvalue,subattribute=subvalue;

 Does it implicitly mean that in case of several values the
 following format is expected (as no subattributes were used):
 attribute:value1,value2?

 [1]
 
 http://www.linuxfoundation.org/collaborate/workgroups/accessibility/iaccessible2/objectattributes

 Thank you.
 Alexander.



 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org 
 mailto:Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2

 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com
 mailto:ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G



-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IAccessibleText::getTextAtOffset for word boundary clarification needed

2013-04-29 Thread Pete Brunet

On 4/28/13 9:41 PM, Alexander Surkov wrote:
 Hi, Pete.

 If the string consists of spaces then ATK get word at offset will
 contain the word after to the offset if the offset is not inside a
 word. In this case there are no words so I think (0, 0, ) triple is
 returned. However ATK is not really clear (see for example
 http://asurkov.blogspot.ru/2013/04/atx-text-pitfalls.html) to state it
 certainly.

  Returns the substring of the specified text type at the specified
  offset.  Refer to IA2TextBoundaryType for more details.

 I'd changed that to Returns the substring defined by specified text
 type at the specified offset. Refer ..., otherwise it makes me think
 that word should be returned in case of word type when offset is
 outside the word.

  For the word boundary type if the offset is not at the beginning or
  inside a word the returned string will contain the word before the
  offset.

 Offset at the beginning a word is also an offset inside a word. But
 actually I like ATK wording:
 The returned string will contain the word at the offset if the offset
 is inside a word and will contain the word before the offset if the
 offset is not inside a word.
Thanks Alex,

I need input from everyone on how to handle the case of text completely
full of whitespace when the text boundary is anything but character.

Options:
1) S_FALSE plus 0, 0, NULL pointer
2) S_OK plus 0, 0, 

Although today's text is not clear enough the first one is how I expect
people currently interpret the spec.

Here another draft, assuming #1 above.  I don't want to change the
behavior of the empty text scenario if AT are already relying on that
behavior.

Returns the substring defined by the specified boundary type at the
specified offset.  Refer to IA2TextBoundaryType for more details.

For the word boundary type the returned string will contain the word at
the offset if the offset is inside a word and will contain the word
before the offset if the offset is not inside a word.  In the preceding
sentence the offset at the start of a word is considered to be inside
the word.  Boundary types of sentence and paragraph should exhibit
similar behavior.

If the index is valid, but no text is found, S_FALSE is returned along
with out values of 0, 0, and a NULL pointer.  This would happen for
boundary types other than character when the text consists entirely of
whitespace.

Do you have any comments regarding the before/after methods?

Pete

   2) If the given offset is a word start then Ctrl+left arrow and Ctrl +
   right arrow return a previous word. Should an order be opposite
   instead since it contradicts to getTextAtOffset semantic?
 
  I didn't follow that, e.g. why should ctrl+rightArrow move to the
  previous word, but hopefully the above rewording will address your
 issue.

 Yes, it address.

 Say the caret is right before 'w' in Hello world. If you press
 ctrlLeft+sfhitCtrlRight then you select Hello . If you do an
 opposite thing ctrlRight + shiftCtrlLeft then you select world. So
 the order makes a difference. Getting back to the spec the world is
 wanted however the spec says to return Hello .

 Thank you.
 Alex.


 On Sat, Apr 27, 2013 at 2:12 AM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:


 On 4/16/13 1:29 AM, Alexander Surkov wrote:
  Hi. There are couple issues with IAccessibleText spec.
 
  1) IAccessibleText::getTextAtOffset interface wording is a bit
  confusing [1], it says:
 
  If the index is valid, but no suitable word (or other text type) is
  found, a NULL pointer is returned.
 
  This makes me think (presumably makes me think wrong) that if the
  offset is outside the word then there's no suitable world.
 However the
  boundary types part says [2]:
 
  The range provided matches the range observed when the application
  processes the Ctrl + left arrow and Ctrl + right arrow key
 sequences.
  Typically this is from the start of one word to the start of the
 next.
 
  It means the previous word should be returned.
 
  Notes:
 
  a) A word start boundary from ATK (an analogy to IA2 word boundary)
  says to return previous word as well [3]:
 
   will contain the word before the offset if the offset is not
 inside
  a word.
 
  b) Firefox returns previous word in this case too.
 
 Hi Alex, What does ATK do when the text area is full of spaces and no
 other text?  That seems like the case where S_FALSE and NULL would be
 returned (except in the case of IA2_TEXT_BOUNDARY_CHAR/ALL).

 How about this rewording?

 Returns the substring of the specified text type at the specified
 offset.  Refer to IA2TextBoundaryType for more details.

 For the word boundary type if the offset is not at the beginning or
 inside a word the returned string will contain the word before the
 offset.  Boundary types of sentence and paragraph should exhibit

Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-04-26 Thread Pete Brunet
Thank you for catching that Jamie.

On 4/21/13 6:18 PM, James Teh wrote:
 On 16/04/2013 7:15 AM, Pete Brunet wrote:
 The new version is now on the LF site at
 http://accessibility.linuxfoundation.org/a11yspecs/ia2/.
 This page:
 http://www.linuxfoundation.org/collaborate/workgroups/accessibility/iaccessible2

 still says 1.2.1, even though the links point to 1.3.

 Jamie


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-04-26 Thread Pete Brunet

On 4/26/13 12:43 PM, Pete Brunet wrote:
 Thanks Jamie, I've updated buildapi.sh.
but I haven't pushed it yet.  I'll wait until my conversation with Alex
is done.

 On 4/22/13 1:28 AM, James Teh wrote:
 Hi Pete,

 On 16/04/2013 7:15 AM, Pete Brunet wrote:
 The new version is now on the LF site at
 http://accessibility.linuxfoundation.org/a11yspecs/ia2/.
 There is a major problem with the merged IDL. It does not include the
 IAccessibleTable.idl file. It seems this was removed from buildapi.sh
 in or before September last year when you released the initial
 version of 1.3 for review.

 Thanks,
 Jamie


 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G


 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-04-15 Thread Pete Brunet
The new version is now on the LF site at
http://accessibility.linuxfoundation.org/a11yspecs/ia2/.  I found a
couple of minor errors which I will fix soon.  The proxy DLL hasn't been
verified yet.

Pete

On 4/9/13 10:32 AM, Pete Brunet wrote:
 I opened a ticket with the LF admins to archive the 1.2.1 files and add
 the 1.3 files.  I hope someone can verify the new IA2 proxy.  For now
 it's at:
 http://a11ysoft.com/ia2/proxy-dll/

 Pete

 On 3/15/13 10:58 AM, Alexander Surkov wrote:
 Hopefully Jamie could help with that. I'd be great to have it early Q2.
 Alex.

 On Sat, Mar 16, 2013 at 12:43 AM, Pete Brunet p...@a11ysoft.com wrote:
 On 3/14/13 11:03 PM, Alexander Surkov wrote:

 I'm fine with that. I would say As a performant alternative or
 something similar.

 Btw, Pete, what is a plan about releasing?

 I can have these files moved onto the Linux Foundation site at any point now
 (after I make the fix we are talking about).  I would like at least one
 person to try the proxy dll before I do.  Is there a date you are looking at
 for getting this done?


 Alex.


 On Fri, Mar 15, 2013 at 12:40 PM, Pete Brunet p...@a11ysoft.com wrote:

 On 3/14/13 9:30 PM, Alexander Surkov wrote:

 Hi, Pete.

 1) It makes sense to not deprecate IAccessible2::relations since it
 can be useful for AT tools. In this case maxRelations argument is not
 really needed and it can be marked as ignored but it's not big deal.

 Is there a reason to not deprecate it, i.e. do we need implementers to spend
 the time on it?  What can be done with it that can't be done with
 IA2_2:relationTargetsOfType?

 I bet this method is in use in accProbe and aViewer already and it
 must be pretty handy for them. If next IAccessible2 introduces more
 relation types then tools developers don't need to change their code,
 release new version, etc. On the another hand relation type is a
 string so technically the server can implement non standard relations.
 The method to get all of them is quite useful in this case.

 Are there any objections to removing the deprecate tag on IA2::nRelations,
 relation, relations and adding a note to the relations method saying: As an
 alternative, client code should consider using IA2_2::relationTargetsOfType?


 Thank you.
 Alex.


 On Fri, Mar 15, 2013 at 9:57 AM, Pete Brunet p...@a11ysoft.com wrote:

 Hi Alex,

 On 3/4/13 10:29 PM, Alexander Surkov wrote:

 Hi, Pete. More feedback.

 1) It makes sense to not deprecate IAccessible2::relations since it
 can be useful for AT tools. In this case maxRelations argument is not
 really needed and it can be marked as ignored but it's not big deal.

 Is there a reason to not deprecate it, i.e. do we need implementers to spend
 the time on it?  What can be done with it that can't be done with
 IA2_2:relationTargetsOfType?

 2) IAccessible2_2::accessibleWithCaret: Returns the hypertext
 accessible in the subtree of this object, and the caret offset within
 it. It doesn't say which object is returned. In my understanding it
 should be the deepest one.

 I changed that to: Returns the deepest hypertext accessible...  Hopefully
 Arnstein will comment if this is not correct.

 3) Honestly I failed to understand IA2Actions
 (http://a11ysoft.com/ia2/docs/html/_accessible_action_8idl.html), it
 seems referred methods like textAtOffset
 (http://a11ysoft.com/ia2/docs/html/interface_i_accessible_text.html#a9bd84b099ac7ce2435280549e90c8827)
 say nothing about IA2Action support. I'd be great to provide an
 example how it works. Otherwise it sounds too generic.

 I'm glad you noticed this.  The preamble text is wrong.  I copied it from
 IA2TextBoundaryType as a prototype and didn't finish the work.  These are
 the actions we defined for adding support for HTML5 media.  I changed the
 preamble text to:

 /** This enum defines values which are predefined actions for use when
 implementing
  support for media.

  This enum is used when specifying an action for
 IAccessibleAction::doAction.
 */

 4) changelog (http://a11ysoft.com/ia2/changelog.txt) lists
 IA2_RELATION_GROUPING_OBJECT_FOR, IA2_RELATION_POPUP_INITIATOR_FOR
 relations, however they aren't listed in interface
 http://a11ysoft.com/ia2/docs/html/_accessible_relation_8idl.html

 Fixed.

 5) IA2_RELATION_CONTAINING_DOCUMENT: makes sense to mention that
 returned object implements IAccessibleDocument interface.

 I added: The target object implements the IAccessibleDocument interface.

 Otherwise it looks good.

 Thanks Alex, I refreshed the IA2 files

 - The change log: http://a11ysoft.com/ia2/changelog.txt
 - IA2 spec: http://a11ysoft.com/ia2/docs/html/
 - The individual IDL files: http://a11ysoft.com/ia2/api/
   or the full IDL file: http://a11ysoft.com/ia2/ia2_api_all.idl

 Did anyone try the new proxy?
   http://a11ysoft.com/ia2/proxy-dll/


 Thank you.
 Alex.


 On Tue, Mar 5, 2013 at 6:34 AM, Pete Brunet p...@a11ysoft.com wrote:

 Please review the following.  This should be the final unless updates are
 needed.

 - The change

Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-04-09 Thread Pete Brunet
I opened a ticket with the LF admins to archive the 1.2.1 files and add
the 1.3 files.  I hope someone can verify the new IA2 proxy.  For now
it's at:
http://a11ysoft.com/ia2/proxy-dll/

Pete

On 3/15/13 10:58 AM, Alexander Surkov wrote:
 Hopefully Jamie could help with that. I'd be great to have it early Q2.
 Alex.

 On Sat, Mar 16, 2013 at 12:43 AM, Pete Brunet p...@a11ysoft.com wrote:
 On 3/14/13 11:03 PM, Alexander Surkov wrote:

 I'm fine with that. I would say As a performant alternative or
 something similar.

 Btw, Pete, what is a plan about releasing?

 I can have these files moved onto the Linux Foundation site at any point now
 (after I make the fix we are talking about).  I would like at least one
 person to try the proxy dll before I do.  Is there a date you are looking at
 for getting this done?


 Alex.


 On Fri, Mar 15, 2013 at 12:40 PM, Pete Brunet p...@a11ysoft.com wrote:

 On 3/14/13 9:30 PM, Alexander Surkov wrote:

 Hi, Pete.

 1) It makes sense to not deprecate IAccessible2::relations since it
 can be useful for AT tools. In this case maxRelations argument is not
 really needed and it can be marked as ignored but it's not big deal.

 Is there a reason to not deprecate it, i.e. do we need implementers to spend
 the time on it?  What can be done with it that can't be done with
 IA2_2:relationTargetsOfType?

 I bet this method is in use in accProbe and aViewer already and it
 must be pretty handy for them. If next IAccessible2 introduces more
 relation types then tools developers don't need to change their code,
 release new version, etc. On the another hand relation type is a
 string so technically the server can implement non standard relations.
 The method to get all of them is quite useful in this case.

 Are there any objections to removing the deprecate tag on IA2::nRelations,
 relation, relations and adding a note to the relations method saying: As an
 alternative, client code should consider using IA2_2::relationTargetsOfType?


 Thank you.
 Alex.


 On Fri, Mar 15, 2013 at 9:57 AM, Pete Brunet p...@a11ysoft.com wrote:

 Hi Alex,

 On 3/4/13 10:29 PM, Alexander Surkov wrote:

 Hi, Pete. More feedback.

 1) It makes sense to not deprecate IAccessible2::relations since it
 can be useful for AT tools. In this case maxRelations argument is not
 really needed and it can be marked as ignored but it's not big deal.

 Is there a reason to not deprecate it, i.e. do we need implementers to spend
 the time on it?  What can be done with it that can't be done with
 IA2_2:relationTargetsOfType?

 2) IAccessible2_2::accessibleWithCaret: Returns the hypertext
 accessible in the subtree of this object, and the caret offset within
 it. It doesn't say which object is returned. In my understanding it
 should be the deepest one.

 I changed that to: Returns the deepest hypertext accessible...  Hopefully
 Arnstein will comment if this is not correct.

 3) Honestly I failed to understand IA2Actions
 (http://a11ysoft.com/ia2/docs/html/_accessible_action_8idl.html), it
 seems referred methods like textAtOffset
 (http://a11ysoft.com/ia2/docs/html/interface_i_accessible_text.html#a9bd84b099ac7ce2435280549e90c8827)
 say nothing about IA2Action support. I'd be great to provide an
 example how it works. Otherwise it sounds too generic.

 I'm glad you noticed this.  The preamble text is wrong.  I copied it from
 IA2TextBoundaryType as a prototype and didn't finish the work.  These are
 the actions we defined for adding support for HTML5 media.  I changed the
 preamble text to:

 /** This enum defines values which are predefined actions for use when
 implementing
  support for media.

  This enum is used when specifying an action for
 IAccessibleAction::doAction.
 */

 4) changelog (http://a11ysoft.com/ia2/changelog.txt) lists
 IA2_RELATION_GROUPING_OBJECT_FOR, IA2_RELATION_POPUP_INITIATOR_FOR
 relations, however they aren't listed in interface
 http://a11ysoft.com/ia2/docs/html/_accessible_relation_8idl.html

 Fixed.

 5) IA2_RELATION_CONTAINING_DOCUMENT: makes sense to mention that
 returned object implements IAccessibleDocument interface.

 I added: The target object implements the IAccessibleDocument interface.

 Otherwise it looks good.

 Thanks Alex, I refreshed the IA2 files

 - The change log: http://a11ysoft.com/ia2/changelog.txt
 - IA2 spec: http://a11ysoft.com/ia2/docs/html/
 - The individual IDL files: http://a11ysoft.com/ia2/api/
   or the full IDL file: http://a11ysoft.com/ia2/ia2_api_all.idl

 Did anyone try the new proxy?
   http://a11ysoft.com/ia2/proxy-dll/


 Thank you.
 Alex.


 On Tue, Mar 5, 2013 at 6:34 AM, Pete Brunet p...@a11ysoft.com wrote:

 Please review the following.  This should be the final unless updates are
 needed.

 - The change log: http://a11ysoft.com/ia2/changelog.txt
 - IA2 spec: http://a11ysoft.com/ia2/docs/html/
 - The individual IDL files: http://a11ysoft.com/ia2/api/
   or the full IDL file: http://a11ysoft.com/ia2/ia2_api_all.idl
 - The proxy: http://a11ysoft.com

Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-03-15 Thread Pete Brunet

On 3/14/13 11:03 PM, Alexander Surkov wrote:
 I'm fine with that. I would say As a performant alternative or
 something similar.

 Btw, Pete, what is a plan about releasing?
I can have these files moved onto the Linux Foundation site at any point
now (after I make the fix we are talking about).  I would like at least
one person to try the proxy dll before I do.  Is there a date you are
looking at for getting this done?

 Alex.


 On Fri, Mar 15, 2013 at 12:40 PM, Pete Brunet p...@a11ysoft.com wrote:
 On 3/14/13 9:30 PM, Alexander Surkov wrote:

 Hi, Pete.

 1) It makes sense to not deprecate IAccessible2::relations since it
 can be useful for AT tools. In this case maxRelations argument is not
 really needed and it can be marked as ignored but it's not big deal.

 Is there a reason to not deprecate it, i.e. do we need implementers to spend
 the time on it?  What can be done with it that can't be done with
 IA2_2:relationTargetsOfType?

 I bet this method is in use in accProbe and aViewer already and it
 must be pretty handy for them. If next IAccessible2 introduces more
 relation types then tools developers don't need to change their code,
 release new version, etc. On the another hand relation type is a
 string so technically the server can implement non standard relations.
 The method to get all of them is quite useful in this case.

 Are there any objections to removing the deprecate tag on IA2::nRelations,
 relation, relations and adding a note to the relations method saying: As an
 alternative, client code should consider using IA2_2::relationTargetsOfType?


 Thank you.
 Alex.


 On Fri, Mar 15, 2013 at 9:57 AM, Pete Brunet p...@a11ysoft.com wrote:

 Hi Alex,

 On 3/4/13 10:29 PM, Alexander Surkov wrote:

 Hi, Pete. More feedback.

 1) It makes sense to not deprecate IAccessible2::relations since it
 can be useful for AT tools. In this case maxRelations argument is not
 really needed and it can be marked as ignored but it's not big deal.

 Is there a reason to not deprecate it, i.e. do we need implementers to spend
 the time on it?  What can be done with it that can't be done with
 IA2_2:relationTargetsOfType?

 2) IAccessible2_2::accessibleWithCaret: Returns the hypertext
 accessible in the subtree of this object, and the caret offset within
 it. It doesn't say which object is returned. In my understanding it
 should be the deepest one.

 I changed that to: Returns the deepest hypertext accessible...  Hopefully
 Arnstein will comment if this is not correct.

 3) Honestly I failed to understand IA2Actions
 (http://a11ysoft.com/ia2/docs/html/_accessible_action_8idl.html), it
 seems referred methods like textAtOffset
 (http://a11ysoft.com/ia2/docs/html/interface_i_accessible_text.html#a9bd84b099ac7ce2435280549e90c8827)
 say nothing about IA2Action support. I'd be great to provide an
 example how it works. Otherwise it sounds too generic.

 I'm glad you noticed this.  The preamble text is wrong.  I copied it from
 IA2TextBoundaryType as a prototype and didn't finish the work.  These are
 the actions we defined for adding support for HTML5 media.  I changed the
 preamble text to:

 /** This enum defines values which are predefined actions for use when
 implementing
  support for media.

  This enum is used when specifying an action for
 IAccessibleAction::doAction.
 */

 4) changelog (http://a11ysoft.com/ia2/changelog.txt) lists
 IA2_RELATION_GROUPING_OBJECT_FOR, IA2_RELATION_POPUP_INITIATOR_FOR
 relations, however they aren't listed in interface
 http://a11ysoft.com/ia2/docs/html/_accessible_relation_8idl.html

 Fixed.

 5) IA2_RELATION_CONTAINING_DOCUMENT: makes sense to mention that
 returned object implements IAccessibleDocument interface.

 I added: The target object implements the IAccessibleDocument interface.

 Otherwise it looks good.

 Thanks Alex, I refreshed the IA2 files

 - The change log: http://a11ysoft.com/ia2/changelog.txt
 - IA2 spec: http://a11ysoft.com/ia2/docs/html/
 - The individual IDL files: http://a11ysoft.com/ia2/api/
   or the full IDL file: http://a11ysoft.com/ia2/ia2_api_all.idl

 Did anyone try the new proxy?
   http://a11ysoft.com/ia2/proxy-dll/


 Thank you.
 Alex.


 On Tue, Mar 5, 2013 at 6:34 AM, Pete Brunet p...@a11ysoft.com wrote:

 Please review the following.  This should be the final unless updates are
 needed.

 - The change log: http://a11ysoft.com/ia2/changelog.txt
 - IA2 spec: http://a11ysoft.com/ia2/docs/html/
 - The individual IDL files: http://a11ysoft.com/ia2/api/
   or the full IDL file: http://a11ysoft.com/ia2/ia2_api_all.idl
 - The proxy: http://a11ysoft.com/ia2/proxy-dll/

 Pete

 On 2/26/13 12:30 AM, Pete Brunet wrote:

 If don't hear anything over the next couple of days, I'll assume this won't
 be in 1.3 and I'll finish up the work I need to do to republish the spec on
 a11ysoft.com for one more look at it before I get in touch with the Linux
 Foundation IT guys to get it published there.

 On 2/25/13 11:58 PM, Alexander Surkov wrote:

 Probably

Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-03-14 Thread Pete Brunet

On 3/14/13 9:30 PM, Alexander Surkov wrote:
 Hi, Pete.

 1) It makes sense to not deprecate IAccessible2::relations since it
 can be useful for AT tools. In this case maxRelations argument is not
 really needed and it can be marked as ignored but it's not big deal.

 Is there a reason to not deprecate it, i.e. do we need implementers to spend
 the time on it?  What can be done with it that can't be done with
 IA2_2:relationTargetsOfType?
 I bet this method is in use in accProbe and aViewer already and it
 must be pretty handy for them. If next IAccessible2 introduces more
 relation types then tools developers don't need to change their code,
 release new version, etc. On the another hand relation type is a
 string so technically the server can implement non standard relations.
 The method to get all of them is quite useful in this case.
Are there any objections to removing the deprecate tag on
IA2::nRelations, relation, relations and adding a note to the relations
method saying: As an alternative, client code should consider using
IA2_2::relationTargetsOfType?

 Thank you.
 Alex.


 On Fri, Mar 15, 2013 at 9:57 AM, Pete Brunet p...@a11ysoft.com wrote:
 Hi Alex,

 On 3/4/13 10:29 PM, Alexander Surkov wrote:

 Hi, Pete. More feedback.

 1) It makes sense to not deprecate IAccessible2::relations since it
 can be useful for AT tools. In this case maxRelations argument is not
 really needed and it can be marked as ignored but it's not big deal.

 Is there a reason to not deprecate it, i.e. do we need implementers to spend
 the time on it?  What can be done with it that can't be done with
 IA2_2:relationTargetsOfType?

 2) IAccessible2_2::accessibleWithCaret: Returns the hypertext
 accessible in the subtree of this object, and the caret offset within
 it. It doesn't say which object is returned. In my understanding it
 should be the deepest one.

 I changed that to: Returns the deepest hypertext accessible...  Hopefully
 Arnstein will comment if this is not correct.

 3) Honestly I failed to understand IA2Actions
 (http://a11ysoft.com/ia2/docs/html/_accessible_action_8idl.html), it
 seems referred methods like textAtOffset
 (http://a11ysoft.com/ia2/docs/html/interface_i_accessible_text.html#a9bd84b099ac7ce2435280549e90c8827)
 say nothing about IA2Action support. I'd be great to provide an
 example how it works. Otherwise it sounds too generic.

 I'm glad you noticed this.  The preamble text is wrong.  I copied it from
 IA2TextBoundaryType as a prototype and didn't finish the work.  These are
 the actions we defined for adding support for HTML5 media.  I changed the
 preamble text to:

 /** This enum defines values which are predefined actions for use when
 implementing
  support for media.

  This enum is used when specifying an action for
 IAccessibleAction::doAction.
 */

 4) changelog (http://a11ysoft.com/ia2/changelog.txt) lists
 IA2_RELATION_GROUPING_OBJECT_FOR, IA2_RELATION_POPUP_INITIATOR_FOR
 relations, however they aren't listed in interface
 http://a11ysoft.com/ia2/docs/html/_accessible_relation_8idl.html

 Fixed.

 5) IA2_RELATION_CONTAINING_DOCUMENT: makes sense to mention that
 returned object implements IAccessibleDocument interface.

 I added: The target object implements the IAccessibleDocument interface.

 Otherwise it looks good.

 Thanks Alex, I refreshed the IA2 files

 - The change log: http://a11ysoft.com/ia2/changelog.txt
 - IA2 spec: http://a11ysoft.com/ia2/docs/html/
 - The individual IDL files: http://a11ysoft.com/ia2/api/
   or the full IDL file: http://a11ysoft.com/ia2/ia2_api_all.idl

 Did anyone try the new proxy?
   http://a11ysoft.com/ia2/proxy-dll/


 Thank you.
 Alex.


 On Tue, Mar 5, 2013 at 6:34 AM, Pete Brunet p...@a11ysoft.com wrote:

 Please review the following.  This should be the final unless updates are
 needed.

 - The change log: http://a11ysoft.com/ia2/changelog.txt
 - IA2 spec: http://a11ysoft.com/ia2/docs/html/
 - The individual IDL files: http://a11ysoft.com/ia2/api/
   or the full IDL file: http://a11ysoft.com/ia2/ia2_api_all.idl
 - The proxy: http://a11ysoft.com/ia2/proxy-dll/

 Pete

 On 2/26/13 12:30 AM, Pete Brunet wrote:

 If don't hear anything over the next couple of days, I'll assume this won't
 be in 1.3 and I'll finish up the work I need to do to republish the spec on
 a11ysoft.com for one more look at it before I get in touch with the Linux
 Foundation IT guys to get it published there.

 On 2/25/13 11:58 PM, Alexander Surkov wrote:

 Probably we should let IA2 1.3 go without addressing this issue. In
 Firefox we still can use IA2 to expose it in non-standard way (like
 new object attribute).
 Alex.


 On Tue, Feb 26, 2013 at 2:49 PM, James Teh ja...@nvaccess.org wrote:

 On 26/02/2013 4:12 PM, Pete Brunet wrote:

 So Is the following what you want?  It moves the method from
 IA2_2 to IAText2 thus resolving an issue for Jamie.
 HRESULT IAccessibleText2::offsetOfChildText (
[in] IUnknown* child,
[out] long* offset

[Accessibility-ia2] IA2 1.3 ready for review

2013-03-04 Thread Pete Brunet
Please review the following.  This should be the final unless updates
are needed.

- The change log: http://a11ysoft.com/ia2/changelog.txt
- IA2 spec: http://a11ysoft.com/ia2/docs/html/
- The individual IDL files: http://a11ysoft.com/ia2/api/
  or the full IDL file: http://a11ysoft.com/ia2/ia2_api_all.idl
- The proxy: http://a11ysoft.com/ia2/proxy-dll/

Pete

On 2/26/13 12:30 AM, Pete Brunet wrote:
 If don't hear anything over the next couple of days, I'll assume this
 won't be in 1.3 and I'll finish up the work I need to do to republish
 the spec on a11ysoft.com for one more look at it before I get in touch
 with the Linux Foundation IT guys to get it published there.

 On 2/25/13 11:58 PM, Alexander Surkov wrote:
 Probably we should let IA2 1.3 go without addressing this issue. In
 Firefox we still can use IA2 to expose it in non-standard way (like
 new object attribute).
 Alex.


 On Tue, Feb 26, 2013 at 2:49 PM, James Teh ja...@nvaccess.org wrote:
 On 26/02/2013 4:12 PM, Pete Brunet wrote:
 So Is the following what you want?  It moves the method from
 IA2_2 to IAText2 thus resolving an issue for Jamie.
 HRESULT IAccessibleText2::offsetOfChildText (
[in] IUnknown* child,
[out] long* offset
 );
 ...

S_OK is returned if the parent accessible implements IAccessibleText.
S_FALSE is returned if the parent accessible does not implement
 IAccessibleText; [out] value is -1.
 This text needs to be changed for the new method.

 That said, this certainly does look nicer to me. I still think it's a bit of
 a hack, especially given that IAccessibleHyper* should really cover this,
 but at least it's an isolated hack.


 Jamie

 --
 James Teh
 Director, NV Access Limited
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 Phone: +61 7 5667 8372
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Plea for a new function

2013-02-25 Thread Pete Brunet
Alex, Brett, Jamie, What do you recommend?

1) HRESULT IAccessible2_2::offsetInParentText (
[out] long* offset
  );

Return the text offset in the immediate parent node.

2) Do not add this method.

3) Something else.

Pete

On 2/10/13 8:15 PM, Alexander Surkov wrote:
 It's a total hack. However, imo, this whole idea is a hack. :)
 It could be. IAccessibleHyperlink or IAccessibleText on text leafs are
 hacks and actually it is a thin ice for Firefox. This easily could
 face us to lot of work. Also these approaches aren't really subject of
 the spec and it should introduce even bigger difference in
 implementations between servers.

 On the another hand we have the method on internal layer in Firefox
 that Brett needs. The method is used to build
 IAccessibleText/Hypertext implementation from accessible tree. So if
 AT works both with accessible tree and IAccesisbleText/HyperText for
 text stuff then this method can be useful.

 Thank you.
 Alex.


 On Mon, Feb 11, 2013 at 11:00 AM, James Teh ja...@nvaccess.org wrote:
 On 11/02/2013 11:22 AM, Alexander Surkov wrote:
 Hi, Jamie. If text leafs implement IAccessibleHyperlink but previously
 IAccessibleHyperlink was implemented by embedded objects only then
 this might be something that AT relies on.
 I guess this is a possibility, though I'd assume that ATs that don't need
 text leaf nodes wouldn't traverse them. We'd certainly need ot check,
 though.


 On the another hand parent
 IAccessibleHyperText would return a collection of children instead the
 collection of embedded objects and AT could have dependencies on it as
 well.
 Ah. I was imagining that the parent IAccessibleHypertext wouldn't return the
 text leaf nodes. See notes on hack below.


 pure IAccessibleHyperlink on text leafs
 is rather a hack than it suites them well.
 It's a total hack. However, imo, this whole idea is a hack. :)


 Jamie

 --
 James Teh
 Director, NV Access Limited
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 Phone: +61 7 5667 8372
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Plea for a new function

2013-02-25 Thread Pete Brunet

On 2/25/13 11:00 PM, Alexander Surkov wrote:
 Hi, Pete.

 It shouldn't be static. The object is method called on is a parent.

 HRESULT IAccessibleText2::childOffset (
[in] IUnknown* childAccessible,
[out] long* offset
 );
Thanks for pointing that out Alex.  I had it backward from what you are
thinking.  So Is the following what you want?  It moves the method from
IA2_2 to IAText2 thus resolving an issue for Jamie.

HRESULT IAccessibleText2::offsetOfChildText (
  [in] IUnknown* child,
  [out] long* offset
   );

Return the offset in this accessible's text which corresponds to the
text of the specified child.

Returns:
  S_OK is returned if the parent accessible implements IAccessibleText.
  S_FALSE is returned if the parent accessible does not implement
IAccessibleText; [out] value is -1.

 Also, what interfaces are implemented on the child nodes?
 depending on the object. These are IAccessible/IAccessible2,
 IAccessibleImage in case of image.

 BTW, not being in the situation of needing this for my own implementation
 I'm trusting our implementers to convey whether or not this is generally
 useful to the IA2 community.  If not then we shouldn't add the method
 especially since there is the solution of the private interface.
 Yes, I think we can always invent on own. For example, VARIANT object
 attributes from 1.3 should work here. Probably that's the way to go
 since we can't reach an agreement on this item.
I don't sense disagreement yet.  It's just taking a while.  Maybe the
above rework will help resolve one of Jamie's concerns.

 Thank you.
 Alex.


 On Tue, Feb 26, 2013 at 1:32 PM, Pete Brunet p...@a11ysoft.com wrote:
 On 2/25/13 9:40 PM, Alexander Surkov wrote:

 I don't mind adding the method to the spec but I don't have strong
 opinion either. I agree with Jamie that keeping the text method on
 IAccessible2 looks unusual. In Gecko we keep an analogue method in
 text interface:
 int32_t GetChildOffset(Accessible* aChild);

 That's a static method.  Is it OK to have static methods in IDL?  If so
 would it make sense to add the following to IAText2?

 =
 HRESULT IAccessibleText2::offsetInParent (
   [in] IUnknown* accessible,
   [out] long* offset
);

 Return the text offset in the parent of the specified accessible.

 Return the text offset in the parent of the specified accessible
 corresponding to the beginning of the text associated with the specified
 accessible.

 Returns:
   S_OK is returned if the parent accessible implements IAccessibleText.
   S_FALSE is returned if the parent accessible does not implement
 IAccessibleText; [out] value is -1.

 Note: This is a static method.
 =

 Also, what interfaces are implemented on the child nodes?

 BTW, not being in the situation of needing this for my own implementation
 I'm trusting our implementers to convey whether or not this is generally
 useful to the IA2 community.  If not then we shouldn't add the method
 especially since there is the solution of the private interface.



 Alex.


 On Tue, Feb 26, 2013 at 12:29 PM, James Teh ja...@nvaccess.org wrote:

 Unusually :), I find it difficult to give an opinion on this. Clearly,
 multiple people think it should be introduced. However, I find it very hard
 to justify introducing what is essentially a hack into the main IAccessible2
 interface. Furthermore, this method is related to IAccessibleText, yet it's
 not in a text specific interface. Once it's in the main interface, it can't
 be removed and server implementers have to implement it, even if they just
 throw not implemented. If it must be introduced, I'd prefer to see a
 separate interface for it, but that seems rather silly.

 We do have a precedent in IADocument::anchorText.  That's the only method in
 that interface.

 In short, I'm not
 going to fight inclusion of this, since I don't have strong enough arguments
 against, but I'm not entirely comfortable with it either.

 Jamie


 On 26/02/2013 7:50 AM, Pete Brunet wrote:

 Alex, Brett, Jamie, What do you recommend?

 1) HRESULT IAccessible2_2::offsetInParentText (
  [out] long* offset
);

 Return the text offset in the immediate parent node.

 2) Do not add this method.

 3) Something else.

 Pete

 On 2/10/13 8:15 PM, Alexander Surkov wrote:

 It's a total hack. However, imo, this whole idea is a hack. :)

 It could be. IAccessibleHyperlink or IAccessibleText on text leafs are
 hacks and actually it is a thin ice for Firefox. This easily could
 face us to lot of work. Also these approaches aren't really subject of
 the spec and it should introduce even bigger difference in
 implementations between servers.

 On the another hand we have the method on internal layer in Firefox
 that Brett needs. The method is used to build
 IAccessibleText/Hypertext implementation from accessible tree. So if
 AT works both with accessible tree and IAccesisbleText/HyperText for
 text stuff then this method can be useful.

 Thank you.
 Alex

Re: [Accessibility-ia2] Plea for a new function

2013-02-06 Thread Pete Brunet
Since there is a need for this and the solution is easy to implement it
seems worth adding.  Here is a draft for review.

HRESULT IAccessible2_2::offsetInParentText (
[out] long* offset
  );

Return text offset in parent.

Determine the parent accessible which implements IAccessibleText and
return the offset in that object which corresponds to the beginning of
the text associated with this accessible.  If this accessible implements
IAccessibleText, 0 will be returned.

Returns:
  S_OK is returned if this accessible or a parent accessible implements
IAccessibleText.
  S_FALSE is returned if no nodes implementing IAccessibleText are
found; [out] value is 0.

On 2/5/13 10:58 PM, Alexander Surkov wrote:
 Hi, Pete.

 Options were discussed:
 1) make text leaf accessible implement IAccessibleText (I didn't like
 it, see 
 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-November/001731.html)
 2) make text leaf accessible implement IAccessibleHyperLink (I didn't
 like it, see 
 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-November/001731.html)
 3) add a new method DescendantOffset(IAccessible* acc, long* offset)
 like Brett suggested (see
 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-November/001729.html).
 I don't mind. It's easy to implement.
 4) do nothing (Jamie mentioned that pure
 IAccessibleText/HyperLink/HyperText should work also as alternative
 approach to the approach described by Brett, but here we probably run
 into restrictions of proprietary softwares).

 Thank you.
 Alex.


 On Wed, Feb 6, 2013 at 2:31 AM, Pete Brunet p...@a11ysoft.com wrote:
 To all,

 Please review the thread Brett started at:
 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-November/001729.html

 to see if any further progress can be made on this issue.


 On 2/5/13 8:46 AM, Brett Lewis wrote:

 Hi,
 I wish we could get it in but it definitely sounded like there was no
 consensus on the issue, so let's let it go.
 Thanks,
 Brett


 
 From: Pete Brunet [mailto:p...@a11ysoft.com]
 Sent: Monday, February 04, 2013 7:02 PM
 To: Brett Lewis
 Cc: IAccessible2 mailing list
 Subject: Re: [Accessibility-ia2] Plea for a new function

 Hi Brett, Is this still an issue for you?  We're very near the end of
 discussions for IA2 1.3 and wanted to see if more discussion is needed on
 this issue.  -Pete

 On 11/26/12 7:03 PM, James Teh wrote:

 On 27/11/2012 8:02 AM, Brett Lewis wrote:

 I am getting the Iaccessible tree.  I then find that I want the text
 attributes for one of my leaf nodes and find that I have to go back up the
 Iaccessible tree to find the nearest Iaccessible node that allow QI to
 IAccessibleText and then trying to figure out how to map the result back
 down to my Iaccessible leaf node.

 If you can, for Mozilla, it's best to ignore leaf nodes altogether; i.e.
 pretend they don't exist. That way, you're only dealing with nodes that
 support IAccessibleText. However, there may well be a good reason you can't
 do this.

 Jamie


 --
 Pete Brunet

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G


 --
 Pete Brunet

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Plea for a new function

2013-02-06 Thread Pete Brunet
Thanks Alex, How is this?

HRESULT IAccessible2_2::offsetInParentText (
[out] long* offset
  );

Return text offset in parent.

Determine the parent accessible which implements IAccessibleText and
return the offset in that object which corresponds to the beginning of
the text associated with this accessible.

Returns:
  S_OK is returned if a parent accessible implements
IAccessibleText.
  S_FALSEis returned if no parent nodes implementing IAccessibleText
are found; [out] value is -1.

On 2/6/13 8:02 PM, Alexander Surkov wrote:
 Hi, Pete. The method looks ok. Few notes.

 If this accessible implements IAccessibleText then it can be a child
 of another IAccessibleText, in this case it also has associated text
 (embedded character) and thus it has valid offset. Btw, I would use -1
 in case when there's no parent IAccessibleText instead of 0 since 0 is
 valid offset and it may be confusing (I saw S_FALSE which is
 reasonable but anyway).

 Thank you.
 Alex.


 On Thu, Feb 7, 2013 at 2:43 AM, Pete Brunet p...@a11ysoft.com wrote:
 Since there is a need for this and the solution is easy to implement it
 seems worth adding.  Here is a draft for review.

 HRESULT IAccessible2_2::offsetInParentText (
 [out] long* offset
   );

 Return text offset in parent.

 Determine the parent accessible which implements IAccessibleText and return
 the offset in that object which corresponds to the beginning of the text
 associated with this accessible.  If this accessible implements
 IAccessibleText, 0 will be returned.

 Returns:
   S_OK is returned if this accessible or a parent accessible implements
 IAccessibleText.
   S_FALSE is returned if no nodes implementing IAccessibleText are found;
 [out] value is 0.


 On 2/5/13 10:58 PM, Alexander Surkov wrote:

 Hi, Pete.

 Options were discussed:
 1) make text leaf accessible implement IAccessibleText (I didn't like
 it, see
 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-November/001731.html)
 2) make text leaf accessible implement IAccessibleHyperLink (I didn't
 like it, see
 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-November/001731.html)
 3) add a new method DescendantOffset(IAccessible* acc, long* offset)
 like Brett suggested (see
 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-November/001729.html).
 I don't mind. It's easy to implement.
 4) do nothing (Jamie mentioned that pure
 IAccessibleText/HyperLink/HyperText should work also as alternative
 approach to the approach described by Brett, but here we probably run
 into restrictions of proprietary softwares).

 Thank you.
 Alex.


 On Wed, Feb 6, 2013 at 2:31 AM, Pete Brunet p...@a11ysoft.com wrote:

 To all,

 Please review the thread Brett started at:
 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-November/001729.html

 to see if any further progress can be made on this issue.


 On 2/5/13 8:46 AM, Brett Lewis wrote:

 Hi,
 I wish we could get it in but it definitely sounded like there was no
 consensus on the issue, so let's let it go.
 Thanks,
 Brett


 
 From: Pete Brunet [mailto:p...@a11ysoft.com]
 Sent: Monday, February 04, 2013 7:02 PM
 To: Brett Lewis
 Cc: IAccessible2 mailing list
 Subject: Re: [Accessibility-ia2] Plea for a new function

 Hi Brett, Is this still an issue for you?  We're very near the end of
 discussions for IA2 1.3 and wanted to see if more discussion is needed on
 this issue.  -Pete

 On 11/26/12 7:03 PM, James Teh wrote:

 On 27/11/2012 8:02 AM, Brett Lewis wrote:

 I am getting the Iaccessible tree.  I then find that I want the text
 attributes for one of my leaf nodes and find that I have to go back up the
 Iaccessible tree to find the nearest Iaccessible node that allow QI to
 IAccessibleText and then trying to figure out how to map the result back
 down to my Iaccessible leaf node.

 If you can, for Mozilla, it's best to ignore leaf nodes altogether; i.e.
 pretend they don't exist. That way, you're only dealing with nodes that
 support IAccessibleText. However, there may well be a good reason you can't
 do this.

 Jamie

___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Plea for a new function

2013-02-06 Thread Pete Brunet
Alex, Do you see any need to restrict this to the immediate parent?  I'm
going to assume not in the following:

HRESULT IAccessible2_2::offsetInAncestorText (
[out] long* offset
  );

Return the text offset in an ancestor node.

Determine the closest ancestor in the tree of accessibles which
implements IAccessibleText and return the offset in that accessible
which corresponds to the beginning of the text associated with this
accessible.

Returns:
  S_OK is returned if an ancestor accessible implements IAccessibleText.
  S_FALSE is returned if no ancestor node implementing IAccessibleText
are found; [out] value is -1.

On 2/6/13 8:55 PM, Alexander Surkov wrote:
 Hi, Pete. if a parent accessible implements and if no parent nodes
 implementing IAccessibleText are found sounds ambiguously. 1st
 assumes an immediate parent, 2nd assumes an accessible from the parent
 chain. I'm not sure about other IA2 implementation but in Firefox if
 the parent accessible doesn't implement IAccessibleText then this
 accessible can't be a text of some other accessible from the parent
 chain. In other words only 1st scenario is possible in Firefox.

 Thank you.
 Alex.


 On Thu, Feb 7, 2013 at 11:42 AM, Pete Brunet p...@a11ysoft.com wrote:
 Thanks Alex, How is this?

 HRESULT IAccessible2_2::offsetInParentText (
 [out] long* offset
   );

 Return text offset in parent.

 Determine the parent accessible which implements IAccessibleText and
 return the offset in that object which corresponds to the beginning of
 the text associated with this accessible.

 Returns:
   S_OK is returned if a parent accessible implements
 IAccessibleText.
   S_FALSEis returned if no parent nodes implementing IAccessibleText
 are found; [out] value is -1.

 On 2/6/13 8:02 PM, Alexander Surkov wrote:
 Hi, Pete. The method looks ok. Few notes.

 If this accessible implements IAccessibleText then it can be a child
 of another IAccessibleText, in this case it also has associated text
 (embedded character) and thus it has valid offset. Btw, I would use -1
 in case when there's no parent IAccessibleText instead of 0 since 0 is
 valid offset and it may be confusing (I saw S_FALSE which is
 reasonable but anyway).

 Thank you.
 Alex.


 On Thu, Feb 7, 2013 at 2:43 AM, Pete Brunet p...@a11ysoft.com wrote:
 Since there is a need for this and the solution is easy to implement it
 seems worth adding.  Here is a draft for review.

 HRESULT IAccessible2_2::offsetInParentText (
 [out] long* offset
   );

 Return text offset in parent.

 Determine the parent accessible which implements IAccessibleText and return
 the offset in that object which corresponds to the beginning of the text
 associated with this accessible.  If this accessible implements
 IAccessibleText, 0 will be returned.

 Returns:
   S_OK is returned if this accessible or a parent accessible implements
 IAccessibleText.
   S_FALSE is returned if no nodes implementing IAccessibleText are found;
 [out] value is 0.


 On 2/5/13 10:58 PM, Alexander Surkov wrote:

 Hi, Pete.

 Options were discussed:
 1) make text leaf accessible implement IAccessibleText (I didn't like
 it, see
 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-November/001731.html)
 2) make text leaf accessible implement IAccessibleHyperLink (I didn't
 like it, see
 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-November/001731.html)
 3) add a new method DescendantOffset(IAccessible* acc, long* offset)
 like Brett suggested (see
 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-November/001729.html).
 I don't mind. It's easy to implement.
 4) do nothing (Jamie mentioned that pure
 IAccessibleText/HyperLink/HyperText should work also as alternative
 approach to the approach described by Brett, but here we probably run
 into restrictions of proprietary softwares).

 Thank you.
 Alex.


 On Wed, Feb 6, 2013 at 2:31 AM, Pete Brunet p...@a11ysoft.com wrote:

 To all,

 Please review the thread Brett started at:
 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-November/001729.html

 to see if any further progress can be made on this issue.


 On 2/5/13 8:46 AM, Brett Lewis wrote:

 Hi,
 I wish we could get it in but it definitely sounded like there was no
 consensus on the issue, so let's let it go.
 Thanks,
 Brett


 
 From: Pete Brunet [mailto:p...@a11ysoft.com]
 Sent: Monday, February 04, 2013 7:02 PM
 To: Brett Lewis
 Cc: IAccessible2 mailing list
 Subject: Re: [Accessibility-ia2] Plea for a new function

 Hi Brett, Is this still an issue for you?  We're very near the end of
 discussions for IA2 1.3 and wanted to see if more discussion is needed on
 this issue.  -Pete

 On 11/26/12 7:03 PM, James Teh wrote:

 On 27/11/2012 8:02 AM, Brett Lewis wrote:

 I am getting the Iaccessible tree.  I then find that I want the text
 attributes for one of my leaf nodes and find that I have to go back up the
 Iaccessible tree

Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-02-05 Thread Pete Brunet

On 2/4/13 11:13 PM, Pete Brunet wrote:

 On 2/4/13 5:20 PM, Richard Schwerdtfeger wrote:
 Partially.

 So, cut, copy copy selected text to the clipboard. The details are
 handled by the rouser. Paste pasts to selected text or the insertion
 point (collapsed selection). What is the concern about clipboard
 functionality?
 I'll have to dig through a month's worth of discussion on the list
 back in June 2011.  I'll try to get to that at some point during the
 week.  If you have time to look at it sooner look through the thread
 with subject, next changes to IAccessible2 here:
 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2011-June/thread.html
There are a lot of topics in that thread and I'll try to separate out
and summarize the clipboard discussion later, but there is also a
following discussion which starts here:
http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2011-July/001495.html
and one more post here:
http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-February/001561.html

 Rich

 Sent from my iPad

 On Feb 4, 2013, at 10:18 PM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:


 On 2/4/13 4:56 PM, Richard Schwerdtfeger wrote:
 Did you check with Nuance? What appends if replacetext is removed?
 If you have a contact at Nuance please ask them to join the list.

 Only the clipboard methods are deprecated, which bascially means
 don't use the cut/copy/paste methods until the IA2 spec can be
 changed to support the varying implementations and ambiguities of
 clipboard functionality.  The rest of the methods are not
 deprecated, i.e. deleteText, insertText, replaceText, and
 setAttributes.  Does that clarification help at all?

 Even if Nuance has not implemented it for say FF has someone
 approached them? We can' t just  be supporting vision impairments.

 Sent from my iPad

 On Feb 4, 2013, at 9:35 PM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:

 Hi Rich, At this point, since we couldn't find consensus and since
 this release was supposed to done last Fall and since I was
 informed that noone has implemented or shown a need for the three
 clipboard operations, I'm inclined to not hold up the release any
 further and handle this in a follow-on release if a project comes
 along that needs clipboard functionality and provides resource to
 drive the spec toward a well thought out definition of the
 clipboard methods.

 Pete

 On 2/4/13 8:51 PM, Richard Schwerdtfeger wrote:
 Hi Pete,

 The reason for the editing functions was to allow a voice reco
 solution to select text, edit it, and perform clipboard
 operations for the mobility impaired. It is additional work to
 have a voice reco solution have to go through the additional work
 of doing the additional keyboard simulations for doing that
 function.

 So, these are single actions. AccessibleEditableText also allows
 you to replace text, and set attributes, which takes offsets and
 replacement text/attributes. Accessible actions are single action
 functions that don't take parameters. ReplaceText is not the same
 as pasting from the clipboard. It is really nice to have all the
 features in the same interface. Note: One could bind the single
 command functions (cut, copy, paste) to the same actions in
 accessible actions.

 The other problem you have with actions is where do you apply it.
 Do you know to apply it only to the document. If Editable text is
 applied to text content within the document then you should now
 where to find the interface.

 Rich


 Rich Schwerdtfeger


 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G


 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-02-05 Thread Pete Brunet

On 2/5/13 8:31 AM, Brian Cragun wrote:
 In those threads, I had asked for a way for IA2 Paste Text to provide
 both a Start and an
 End Offset parameter. Also to provide an Attributes parameter.
 Copy-with-parameters should be implemented as an additional method in
 IAccessibleText.

 http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2011-June/001336.html


 This was from Carolyn McLeod who needed it in Eclipse for cut and paste.
Hi Brian, On 27 June 2011 in this post
http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2011-June/001408.html
Carolyn said, What I am getting at by all of this is that maybe
pasteText should not have any offset parameters at all, because
startOffset and endOffset are inadequate to define multiple selections).
Perhaps pasteText should simply be specified to always operate on the
selection, whatever that may be. 

 Brian Cragun
 IBM Master Inventor
 IBM AbilityLab Consultant
 Human Ability  Accessibility Center_
 __www.ibm.com/able_ http://www.ibm.com/able _w3.ibm.com/able_
 http://w3.ibm.com/able
 W:(720)-663-2801 H:(507)288-2437

 */Subscribe to RSS feed and contribute to/**/Accessibility News
 community/*
 http://w3.ibm.com/connections/communities/service/html/communityview?communityUuid=136047f0-6cda-4a2a-9a90-2188047a542a*/on
 Connections/*
 _IBM Accessibility_ http://www.facebook.com/IBMAccessibilityon
 Facebook ▼_IBMAccess_ http://twitter.com/IBMAccesson Twitter ▼_IBM
 Accessibility_ http://www.linkedin.com/e/vgh/2419815/on LinkedIn




 From: Pete Brunet p...@a11ysoft.com
 To: Richard Schwerdtfeger/Austin/IBM@IBMUS,
 Cc: IAccessible2 mailing list
 accessibility-ia2@lists.linuxfoundation.org
 Date: 02/04/2013 11:14 PM
 Subject: Re: [Accessibility-ia2] IA2 1.3 ready for review
 Sent by: accessibility-ia2-boun...@lists.linuxfoundation.org
 




 On 2/4/13 5:20 PM, Richard Schwerdtfeger wrote:
 Partially.

 So, cut, copy copy selected text to the clipboard. The details are
 handled by the rouser. Paste pasts to selected text or the insertion
 point (collapsed selection). What is the concern about clipboard
 functionality?
 I'll have to dig through a month's worth of discussion on the list
 back in June 2011. I'll try to get to that at some point during the
 week. If you have time to look at it sooner look through the thread
 with subject, next changes to IAccessible2 here:_
 __http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2011-June/thread.html_


 Rich

 Sent from my iPad

 On Feb 4, 2013, at 10:18 PM, Pete Brunet _pete@a11ysoft.com_
 mailto:p...@a11ysoft.com wrote:


 On 2/4/13 4:56 PM, Richard Schwerdtfeger wrote:
 Did you check with Nuance? What appends if replacetext is removed?
 If you have a contact at Nuance please ask them to join the list.

 Only the clipboard methods are deprecated, which bascially means don't
 use the cut/copy/paste methods until the IA2 spec can be changed to
 support the varying implementations and ambiguities of clipboard
 functionality. The rest of the methods are not deprecated, i.e.
 deleteText, insertText, replaceText, and setAttributes. Does that
 clarification help at all?

 Even if Nuance has not implemented it for say FF has someone
 approached them? We can' t just be supporting vision impairments.

 Sent from my iPad

 On Feb 4, 2013, at 9:35 PM, Pete Brunet _pete@a11ysoft.com_
 mailto:p...@a11ysoft.com wrote:

 Hi Rich, At this point, since we couldn't find consensus and since
 this release was supposed to done last Fall and since I was informed
 that noone has implemented or shown a need for the three clipboard
 operations, I'm inclined to not hold up the release any further and
 handle this in a follow-on release if a project comes along that needs
 clipboard functionality and provides resource to drive the spec toward
 a well thought out definition of the clipboard methods.

 Pete

 On 2/4/13 8:51 PM, Richard Schwerdtfeger wrote:
 Hi Pete,

 The reason for the editing functions was to allow a voice reco
 solution to select text, edit it, and perform clipboard operations for
 the mobility impaired. It is additional work to have a voice reco
 solution have to go through the additional work of doing the
 additional keyboard simulations for doing that function.

 So, these are single actions. AccessibleEditableText also allows you
 to replace text, and set attributes, which takes offsets and
 replacement text/attributes. Accessible actions are single action
 functions that don't take parameters. ReplaceText is not the same as
 pasting from the clipboard. It is really nice to have all the features
 in the same interface. Note: One could bind the single command
 functions (cut, copy, paste) to the same actions in accessible actions.

 The other problem you have with actions is where do you apply it. Do
 you know to apply it only to the document. If Editable text is applied
 to text content within the document then you should now

Re: [Accessibility-ia2] Plea for a new function

2013-02-05 Thread Pete Brunet
To all,

Please review the thread Brett started at:
http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2012-November/001729.html

to see if any further progress can be made on this issue.

On 2/5/13 8:46 AM, Brett Lewis wrote:
 Hi,
 I wish we could get it in but it definitely sounded like there was no
 consensus on the issue, so let's let it go.
 Thanks,
 Brett
  

 
 *From:* Pete Brunet [mailto:p...@a11ysoft.com]
 *Sent:* Monday, February 04, 2013 7:02 PM
 *To:* Brett Lewis
 *Cc:* IAccessible2 mailing list
 *Subject:* Re: [Accessibility-ia2] Plea for a new function

 Hi Brett, Is this still an issue for you?  We're very near the end of
 discussions for IA2 1.3 and wanted to see if more discussion is needed
 on this issue.  -Pete

 On 11/26/12 7:03 PM, James Teh wrote:
 On 27/11/2012 8:02 AM, Brett Lewis wrote:
 I am getting the Iaccessible tree.  I then find that I want the text
 attributes for one of my leaf nodes and find that I have to go back
 up the Iaccessible tree to find the nearest Iaccessible node that
 allow QI to IAccessibleText and then trying to figure out how to map
 the result back down to my Iaccessible leaf node.
 If you can, for Mozilla, it's best to ignore leaf nodes altogether;
 i.e. pretend they don't exist. That way, you're only dealing with
 nodes that support IAccessibleText. However, there may well be a good
 reason you can't do this.

 Jamie


 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-02-04 Thread Pete Brunet

On 10/10/12 2:07 AM, Alexander Surkov wrote:
 Hi, Jamie. Answering inline.

 5) Document that copyText, cutText, and pasteText are deprecated.
 Can you please refresh me on it? The reason specified is This
 function is available via the application's GUI. but it seems it can
 be applied to the whole IAccessibleEditableText interface.
 I believe there was some talk a while ago about making these all actions
 which can be triggered using the standard action mechanism. This would
 require a way to perform an action given a constant. It is why the idea of
 using negative action indices came up.
 It seems it doesn't answer why we can't turn out the whole
 IAccessibleEditableText interface into actions.
 Btw, I would prefer doAction taking a BSTR rather than negative
 constant. Otherwise we should standardize all possible actions and we
 don't leave a room for the server to introduce non-standard actions.

 6) IAccessibleHypertext2::hyperlinks. Just to make sure: we decided to
 go with array instead EnumVariant? Do AT want to get all items at once
 even if the document is big and has many links?
 It seems we didn't go with EnumVariant at all but we added maxCount
 'in' argument. Should we have it here as well?
Hi Alex, I assume you are referring to
IAccessible2_2::relationTargetsOfType which along with
IAccessible2::relations and IAccessibleRelation::targerts are the only
methods with a valid max count [in] parameter.  (There are several
others but those methods were coded in error and their max count [in]
parameters are to be ignored.)  IAccessibleHypertext2::hyperlinks
doesn't have a max [in] parameter and Jamie said in a followup note that
he's unaware of any need for one.

 7) IA2_RELATION_GROUPING_OBJECT_FOR: This object is a grouping object
 for the target object. - it'd be nice to give a hint for
 implementers. After a time I don't really remember what is it about :)
 I guess a grouping object/container would expose this relation referring to
 all objects it contains. Is this really useful?
 It'd be nice to have examples. Does it applicable to HTML fieldset and
 HTML form? Should it include the element connected by node_child_of
 relation if the element is not a descendant?

 Thank you.
 Alex.


 On Wed, Oct 10, 2012 at 3:39 PM, James Teh ja...@nvaccess.org wrote:
 On 24/09/2012 2:52 PM, Alexander Surkov wrote:
 5) Document that copyText, cutText, and pasteText are deprecated.
 Can you please refresh me on it? The reason specified is This
 function is available via the application's GUI. but it seems it can
 be applied to the whole IAccessibleEditableText interface.
 I believe there was some talk a while ago about making these all actions
 which can be triggered using the standard action mechanism. This would
 require a way to perform an action given a constant. It is why the idea of
 using negative action indices came up.


 6) IAccessibleHypertext2::hyperlinks. Just to make sure: we decided to
 go with array instead EnumVariant? Do AT want to get all items at once
 even if the document is big and has many links?
 Isn't that the whole point of this method? Otherwise, wouldn't
 IAccessibleHypertext::hyperlink be enough? Maybe I'm missing something...


 7) IA2_RELATION_GROUPING_OBJECT_FOR: This object is a grouping object
 for the target object. - it'd be nice to give a hint for
 implementers. After a time I don't really remember what is it about :)
 I guess a grouping object/container would expose this relation referring to
 all objects it contains. Is this really useful?


 9)  Description for IA2_RELATION_POPUP_INITIATOR_FOR doesn't make
 things really clear for implementers too.
 Yeah; I have no idea what this is for. :)

 Btw, the used string is
 popInitiatorFor,
 Looks like a typo to me.

 Thanks,
 Jamie


 --
 James Teh
 Director, NV Access Limited
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 Phone: +61 7 5667 8372
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-02-04 Thread Pete Brunet

On 2/4/13 5:13 PM, Pete Brunet wrote:
 Hi Alex, I am going to try to get some momentum going on this again...

 On 9/23/12 11:52 PM, Alexander Surkov wrote:
 Hi, Pete. Here's my two cents.

 1) It makes sense to allow IAccessible2_2::attribute to take sequence
 of attribute names like margin-left;margin-right; to get these
 attribute values for a single call.
 Is this important enough to add additional development effort for
 server side implementers?
 2) It'd be nice to add a reference to relation constants for
 relationTargetsOfType method description, see [in] type The requested
 relation type.
 Done.
 3) Any specific reason to use long for nTargets in
 relationTargetsOfType since it seems it never takes negative values?
 It's a good point, but since an unsigned long wasn't used anywhere
 else it seems like at least for the sake of consistency to leave it as is.
 4) Should we keep IAccessibleDocument restricted to HTML documents?
 After all HTML sounds like an implementation detail. The idea it
 serves to is when the loaded document shouldn't be read from the
 beginning.
 I changed it to:
   /** @brief Returns the most recently used anchor target within a
 document.
  
A document's most recently targeted in-page anchor is returned.  A
 typical use
 of this method is to fetch the anchor target within an HTML
 document.  In this
 case anchor targets are those which has been defined with the a
 tag.
 5) Document that copyText, cutText, and pasteText are deprecated.
 Can you please refresh me on it? The reason specified is This
 function is available via the application's GUI. but it seems it can
 be applied to the whole IAccessibleEditableText interface.
 This was a long discussion involving several people back in June 2011
 from the 7th to the 29th and this is what we ended up with.  It was
 determined that the three deprecated methods are clipboard operations
 and there are too many differences and ambiguities in how applications
 implement their clipboard functionality.  Also copy/cut/paste methods
 are not in use while the other ones are so we can't deprecate the
 entire interface.  We also talked about adding, if needed at some
 later date, five new actions for cut, copy, pasteDefault,
 pasteFormatted, pasteUnformatted.
 6) IAccessibleHypertext2::hyperlinks. Just to make sure: we decided to
 go with array instead EnumVariant? Do AT want to get all items at once
 even if the document is big and has many links?
 Back on 14 Aug 2012 you agreed that the array would be preferred in
 order to keep it consistent with the array returned by
 IAccessible2_2::relationTargetsOfType.
 7) IA2_RELATION_GROUPING_OBJECT_FOR: This object is a grouping object
 for the target object. - it'd be nice to give a hint for
 implementers. After a time I don't really remember what is it about :)
 Actually this got into this draft of the spec by mistake.  We agreed
 it was not needed back on 1 March 12.  Ditto with 
 IA2_RELATION_POPUP_INITIATOR_FOR.  I removed them both.
 8) IA2_RELATION_NODE_PARENT_OF This object is a parent of a target
 object. It's not clear as well since it doesn't answer why
 get_accParent doesn't work. Maybe you should say it's a logical parent
 and the relation is reverse to RELATION_NODE_CHILD_OF. It is used, for
 example, for flat structured trees.
 I could remove it.  Noone else showed interest in it other than for
 symmetry with IA2_RELATION_NODE_CHILD_OF.  The comment about
 get_accParent is a good one.  You asked for this new relation back on
 9 Nov 09 because you added it for ATK and wanted to enhance the
 symmetry between the ATK and IA2 interfaces.  Or I could just add
 another sentence, This relation is the reciprocal of
 IA2_RELATION_NODE_CHILD_OF.  I didn't understand the comment about
 flat structured trees but if you want to keep this relation please
 provide an additional sentence.
 9)  Description for IA2_RELATION_POPUP_INITIATOR_FOR doesn't make
 things really clear for implementers too. Btw, the used string is
 popInitiatorFor, I'm not sure if this is on demand, should it be
 popupInitiatorFor instead?
 Removed.  See #7.
 10) Both IAccessibleHypertext and IAccessibleText are marked as
 deprecated (see http://a11ysoft.com/ia2/docs/html/), however
 IAccessibleHypertext2 and IAccessibleText2 are inherited from them.
 What does deprecation mean here?
 Thanks for noticing that Alex.  Does anyone see any issues if I remove
 the inheritance? 
Actually I should not remove the inheritance.  I'll remove the text
indicating deprecation.
 Thank you.
 Alex.


 On Fri, Sep 21, 2012 at 11:22 AM, Pete Brunet p...@a11ysoft.com wrote:
 I finished up the IA2 1.3 work over the weekend but due to some changes on
 the LF web site am unable to post it there.  I've provided it at
 a11ysoft.com.  Please review it.  I won't get to the object attributes until
 later (to add explicit-name).

 documentation:  http://a11ysoft.com/ia2/docs/html
 zip file: http://a11ysoft.com/ia2.zip

 The one bug I see

Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-02-04 Thread Pete Brunet

On 10/10/12 1:29 AM, James Teh wrote:
 Hi all,

 Sorry for taking so long. Here is my feedback:

 Accessible2.idl:
 IAccessible2 has been removed from the Interfaces section. It should
 still be included. (I see Pete has already acknowledged this.)
 I'm not sure it makes sense to say the older interfaces (except
 IAccessibleTable, which has essentially been completely replaced) are
 deprecated, as the newer ones subclass them.
I've removed the deprecated text from IAHypertext and IAText.  I think
it still make sense to indicate IARelation is deprecated.
 The IAccessible2 interface still contains the modifications relevant
 to IAccessible2_2. Specifically, the max parameters for extendedStates
 and localizedExtendedStates have been removed and the new methods
 attribute, accessibleWithCaret and relationTargetsOfType have been
 added. I assume this was unintentional in this latest version. This
 critical, as it will breka binary compatibility.
Yes, That was unintentional.  I diffed the old and new IAccessible2 and
fixed the problems.


 AccessibleDocument.idl:
 Regarding IAccessibleDocument::anchorTarget, I wonder whether a
 relation fits here, which would eliminate the need for this interface.
 I think this was discussed before, but I can't remember why this idea
 was dropped. After all, it just returns an accessible.
Back on 12 Feb 12 you said:
I feel a relation fits well enough here, but I don't feel strongly
enough about it to fight for it if others disagree. I'd pose the
question: what makes this so special as to justify a new method? Why is
it more special than, say, flowsTo or labelledBy? I guess it doesn't fit
relations entirely, as it isn't strictly related so much as state
information. If that argument is consensus, fair enough.
And I responded:
Thanks Jamie, It appears there is no strong preference by anyone for any
of the various options.  Your observation about state vs relationship is
interesting and is enough to motivate me to choose a method over a relation.

 AccessibleHypertext2.idl:
 The comments for the IAccessibleHypertext2 interface say:
  The %IAccessibleHypertext interface is the main interface to expose
   hyperlinks in a document, typically a text document...
 This is a bit confusing, as this documentation is for
 IAccessibleHypertext2, not IAccessibleHypertext. It should probably
 just mention that this extends IAccessibleHypertext.
 The same goes for IAccessibleText2.
Thanks Jamie, I fixed that.

 I'll reply to Alex's feedback separately.

 Thanks,
 Jamie

 On 21/09/2012 12:22 PM, Pete Brunet wrote:
 I finished up the IA2 1.3 work over the weekend but due to some changes
 on the LF web site am unable to post it there.  I've provided it at
 a11ysoft.com.  Please review it.  I won't get to the object attributes
 until later (to add explicit-name).

 documentation: http://a11ysoft.com/ia2/docs/html
 zip file: http://a11ysoft.com/ia2.zip

 The one bug I see so far is that I don't have a link for the
 IAccessible2 interface on the main page.  That is at:
 http://www.a11ysoft.com/ia2/docs/html/interface_i_accessible2.html

 The zip file contains everything I'll eventually post on the LF site,
 among other things, changelog.txt and the merged IDL file,
 ia2_api_all.idl.

 Pete
 -- 
 *Pete Brunet*

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G


 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2



-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Plea for a new function

2013-02-04 Thread Pete Brunet
Hi Brett, Is this still an issue for you?  We're very near the end of
discussions for IA2 1.3 and wanted to see if more discussion is needed
on this issue.  -Pete

On 11/26/12 7:03 PM, James Teh wrote:
 On 27/11/2012 8:02 AM, Brett Lewis wrote:
 I am getting the Iaccessible tree.  I then find that I want the text
 attributes for one of my leaf nodes and find that I have to go back
 up the Iaccessible tree to find the nearest Iaccessible node that
 allow QI to IAccessibleText and then trying to figure out how to map
 the result back down to my Iaccessible leaf node.
 If you can, for Mozilla, it's best to ignore leaf nodes altogether;
 i.e. pretend they don't exist. That way, you're only dealing with
 nodes that support IAccessibleText. However, there may well be a good
 reason you can't do this.

 Jamie


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-02-04 Thread Pete Brunet

On 2/4/13 8:52 PM, Alexander Surkov wrote:
 Hi, Pete. It looks good. Perhaps I'd change In some cases an
 application's accessible tree is such that an object can have a
 logical parent which is not its parent in the tree of accessibles. to
 ... such that objects can be in a logical parent-child relationship
 which is different from hierarchy in the accessible tree.
Thanks Alex, I changed the text.

 Thank you.
 Alex.


 On Tue, Feb 5, 2013 at 11:46 AM, Pete Brunet p...@a11ysoft.com wrote:
 On 2/4/13 8:16 PM, Alexander Surkov wrote:

 Hi, Pete. Thank you for getting back on this. Answering inline.

 1) It makes sense to allow IAccessible2_2::attribute to take sequence
 of attribute names like margin-left;margin-right; to get these
 attribute values for a single call.

 Is this important enough to add additional development effort for server
 side implementers?

 Let's leave it out of IA2 1.3. Otherwise I afraid we never get it
 done. If the feature is needed by AT then it can be prototyped in the
 browser before we put it into spec since it doesn't require the
 interface changes.

 3) Any specific reason to use long for nTargets in
 relationTargetsOfType since it seems it never takes negative values?

 It's a good point, but since an unsigned long wasn't used anywhere else it
 seems like at least for the sake of consistency to leave it as is.

 I don't mind.

 6) IAccessibleHypertext2::hyperlinks. Just to make sure: we decided to
 go with array instead EnumVariant? Do AT want to get all items at once
 even if the document is big and has many links?

 Back on 14 Aug 2012 you agreed that the array would be preferred in order to
 keep it consistent with the array returned by
 IAccessible2_2::relationTargetsOfType.

 If I agreed then ok :) It seems our discussion is many years long. I
 can hardly remember where we started from. I think my point was that
 obtaining all hyperlinks can be slow. If it is an issue then we can
 address it the next round if necessary.

 8) IA2_RELATION_NODE_PARENT_OF This object is a parent of a target
 object. It's not clear as well since it doesn't answer why
 get_accParent doesn't work. Maybe you should say it's a logical parent
 and the relation is reverse to RELATION_NODE_CHILD_OF. It is used, for
 example, for flat structured trees.

 I could remove it.  Noone else showed interest in it other than for symmetry
 with IA2_RELATION_NODE_CHILD_OF.  The comment about get_accParent is a good
 one.  You asked for this new relation back on 9 Nov 09 because you added it
 for ATK and wanted to enhance the symmetry between the ATK and IA2
 interfaces.  Or I could just add another sentence, This relation is the
 reciprocal of IA2_RELATION_NODE_CHILD_OF.  I didn't understand the comment
 about flat structured trees but if you want to keep this relation please
 provide an additional sentence.

 We shouldn't remove it. It's needed for sync with ATK. Also this
 constant was settled down in ARIA spec implementation guide already :)

 If you use logical parent instead parent (i.e. not a parent in the
 accessible tree) then it should be fine. It can sound This object is
 a logical parent of a target object. This relation is the reciprocal
 of IA2_RELATION_NODE_CHILD_OF.

 About flat trees. The accessible tree may look like:

 div role=tree
   div role=treeitem level=1item/div
   div role=treeitem level=2sub item/div
 /div

 in this case parent for 'item' and 'subitem' is 'tree' but logical
 parent of 'subitem' is 'item'.

 I updated the comments as follows.  Please review.

 /** This object is a logical child of a target object.  This relation is the
 reciprocal
  of the IA2_RELATION_NODE_PARENT_OF relation. In some cases an application's
 accessible
  tree is such that an object can have a logical parent which is not its
 parent in the
  tree of accessibles. */
 const WCHAR *const IA2_RELATION_NODE_CHILD_OF = LnodeChildOf;

 /** This object is a logical parent of a target object. This relation is the
 reciprocal
  of the IA2_RELATION_NODE_CHILD_OF relation. In some cases an application's
 accessible
  tree is such that an object can have a logical parent which is not its
 parent in the
  tree of accessibles. */
 const WCHAR *const IA2_RELATION_NODE_PARENT_OF = LnodeParentOf;


 Thank you.
 Alex.


 On Tue, Feb 5, 2013 at 8:13 AM, Pete Brunet p...@a11ysoft.com wrote:

 Hi Alex, I am going to try to get some momentum going on this again...


 On 9/23/12 11:52 PM, Alexander Surkov wrote:

 Hi, Pete. Here's my two cents.

 1) It makes sense to allow IAccessible2_2::attribute to take sequence
 of attribute names like margin-left;margin-right; to get these
 attribute values for a single call.

 Is this important enough to add additional development effort for server
 side implementers?

 2) It'd be nice to add a reference to relation constants for
 relationTargetsOfType method description, see [in] type The requested
 relation type.

 Done.

 3) Any specific reason to use long for nTargets

Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-02-04 Thread Pete Brunet
Hi Rich, At this point, since we couldn't find consensus and since this
release was supposed to done last Fall and since I was informed that
noone has implemented or shown a need for the three clipboard
operations, I'm inclined to not hold up the release any further and
handle this in a follow-on release if a project comes along that needs
clipboard functionality and provides resource to drive the spec toward a
well thought out definition of the clipboard methods.

Pete

On 2/4/13 8:51 PM, Richard Schwerdtfeger wrote:
 Hi Pete,

 The reason for the editing functions was to allow a voice reco
 solution to select text, edit it, and perform clipboard operations for
 the mobility impaired. It is additional work to have a voice reco
 solution have to go through the additional work of doing the
 additional keyboard simulations for doing that function.

 So, these are single actions. AccessibleEditableText also allows you
 to replace text, and set attributes, which takes offsets and
 replacement text/attributes. Accessible actions are single action
 functions that don't take parameters. ReplaceText is not the same as
 pasting from the clipboard. It is really nice to have all the features
 in the same interface. Note: One could bind the single command
 functions (cut, copy, paste) to the same actions in accessible actions.

 The other problem you have with actions is where do you apply it. Do
 you know to apply it only to the document. If Editable text is applied
 to text content within the document then you should now where to find
 the interface.

 Rich


 Rich Schwerdtfeger

___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-02-04 Thread Pete Brunet

On 2/4/13 4:56 PM, Richard Schwerdtfeger wrote:
 Did you check with Nuance? What appends if replacetext is removed?
If you have a contact at Nuance please ask them to join the list.

Only the clipboard methods are deprecated, which bascially means don't
use the cut/copy/paste methods until the IA2 spec can be changed to
support the varying implementations and ambiguities of clipboard
functionality.  The rest of the methods are not deprecated, i.e.
deleteText, insertText, replaceText, and setAttributes.  Does that
clarification help at all?

 Even if Nuance has not implemented it for say FF has someone
 approached them? We can' t just  be supporting vision impairments.

 Sent from my iPad

 On Feb 4, 2013, at 9:35 PM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:

 Hi Rich, At this point, since we couldn't find consensus and since
 this release was supposed to done last Fall and since I was informed
 that noone has implemented or shown a need for the three clipboard
 operations, I'm inclined to not hold up the release any further and
 handle this in a follow-on release if a project comes along that
 needs clipboard functionality and provides resource to drive the spec
 toward a well thought out definition of the clipboard methods.

 Pete

 On 2/4/13 8:51 PM, Richard Schwerdtfeger wrote:
 Hi Pete,

 The reason for the editing functions was to allow a voice reco
 solution to select text, edit it, and perform clipboard operations
 for the mobility impaired. It is additional work to have a voice
 reco solution have to go through the additional work of doing the
 additional keyboard simulations for doing that function.

 So, these are single actions. AccessibleEditableText also allows you
 to replace text, and set attributes, which takes offsets and
 replacement text/attributes. Accessible actions are single action
 functions that don't take parameters. ReplaceText is not the same as
 pasting from the clipboard. It is really nice to have all the
 features in the same interface. Note: One could bind the single
 command functions (cut, copy, paste) to the same actions in
 accessible actions.

 The other problem you have with actions is where do you apply it. Do
 you know to apply it only to the document. If Editable text is
 applied to text content within the document then you should now
 where to find the interface.

 Rich


 Rich Schwerdtfeger


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-02-04 Thread Pete Brunet
The methods are replaced with IAccessible2_2::relationTargetsOfType.

One of today's edits was to add text to the doxygen commentary pointing
this out.

Pete

On 2/4/13 5:14 PM, Richard Schwerdtfeger wrote:
 It appears the relations were moved to the new ia22 interface. Is that
 why you are deprecating the relations interface?

 Sent from my iPad

 On Feb 4, 2013, at 10:15 PM, Richard Schwerdtfeger
 sch...@us.ibm.com mailto:sch...@us.ibm.com wrote:

 Whe are relations deprecated? They are used extensively in both FF,
 Chrome, and Symphony.

 Rich

 Sent from my iPad

 On Feb 4, 2013, at 8:32 PM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:


 On 10/10/12 1:29 AM, James Teh wrote:
 Hi all,

 Sorry for taking so long. Here is my feedback:

 Accessible2.idl:
 IAccessible2 has been removed from the Interfaces section. It
 should still be included. (I see Pete has already acknowledged this.)
 I'm not sure it makes sense to say the older interfaces (except
 IAccessibleTable, which has essentially been completely replaced)
 are deprecated, as the newer ones subclass them.
 I've removed the deprecated text from IAHypertext and IAText.  I
 think it still make sense to indicate IARelation is deprecated.
 The IAccessible2 interface still contains the modifications
 relevant to IAccessible2_2. Specifically, the max parameters for
 extendedStates and localizedExtendedStates have been removed and
 the new methods attribute, accessibleWithCaret and
 relationTargetsOfType have been added. I assume this was
 unintentional in this latest version. This critical, as it will
 breka binary compatibility.
 Yes, That was unintentional.  I diffed the old and new IAccessible2
 and fixed the problems.


 AccessibleDocument.idl:
 Regarding IAccessibleDocument::anchorTarget, I wonder whether a
 relation fits here, which would eliminate the need for this
 interface. I think this was discussed before, but I can't remember
 why this idea was dropped. After all, it just returns an accessible.
 Back on 12 Feb 12 you said:
 I feel a relation fits well enough here, but I don't feel strongly
 enough about it to fight for it if others disagree. I'd pose the
 question: what makes this so special as to justify a new method? Why
 is it more special than, say, flowsTo or labelledBy? I guess it
 doesn't fit relations entirely, as it isn't strictly related so
 much as state information. If that argument is consensus, fair enough.
 And I responded:
 Thanks Jamie, It appears there is no strong preference by anyone for
 any of the various options.  Your observation about state vs
 relationship is interesting and is enough to motivate me to choose a
 method over a relation.

 AccessibleHypertext2.idl:
 The comments for the IAccessibleHypertext2 interface say:
  The %IAccessibleHypertext interface is the main interface to expose
   hyperlinks in a document, typically a text document...
 This is a bit confusing, as this documentation is for
 IAccessibleHypertext2, not IAccessibleHypertext. It should probably
 just mention that this extends IAccessibleHypertext.
 The same goes for IAccessibleText2.
 Thanks Jamie, I fixed that.

 I'll reply to Alex's feedback separately.

 Thanks,
 Jamie

 On 21/09/2012 12:22 PM, Pete Brunet wrote:
 I finished up the IA2 1.3 work over the weekend but due to some
 changes
 on the LF web site am unable to post it there.  I've provided it at
 a11ysoft.com http://a11ysoft.com.  Please review it.  I won't
 get to the object attributes
 until later (to add explicit-name).

 documentation: http://a11ysoft.com/ia2/docs/html
 zip file: http://a11ysoft.com/ia2.zip

 The one bug I see so far is that I don't have a link for the
 IAccessible2 interface on the main page.  That is at:
 http://www.a11ysoft.com/ia2/docs/html/interface_i_accessible2.html

 The zip file contains everything I'll eventually post on the LF site,
 among other things, changelog.txt and the merged IDL file,
 ia2_api_all.idl.

 Pete
 -- 
 *Pete Brunet*

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G


 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2



 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org 
 mailto:Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2

Re: [Accessibility-ia2] IA2 1.3 ready for review

2013-02-04 Thread Pete Brunet

On 2/4/13 5:20 PM, Richard Schwerdtfeger wrote:
 Partially.

 So, cut, copy copy selected text to the clipboard. The details are
 handled by the rouser. Paste pasts to selected text or the insertion
 point (collapsed selection). What is the concern about clipboard
 functionality?
I'll have to dig through a month's worth of discussion on the list back
in June 2011.  I'll try to get to that at some point during the week. 
If you have time to look at it sooner look through the thread with
subject, next changes to IAccessible2 here:
http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2011-June/thread.html

 Rich

 Sent from my iPad

 On Feb 4, 2013, at 10:18 PM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:


 On 2/4/13 4:56 PM, Richard Schwerdtfeger wrote:
 Did you check with Nuance? What appends if replacetext is removed?
 If you have a contact at Nuance please ask them to join the list.

 Only the clipboard methods are deprecated, which bascially means
 don't use the cut/copy/paste methods until the IA2 spec can be
 changed to support the varying implementations and ambiguities of
 clipboard functionality.  The rest of the methods are not deprecated,
 i.e. deleteText, insertText, replaceText, and setAttributes.  Does
 that clarification help at all?

 Even if Nuance has not implemented it for say FF has someone
 approached them? We can' t just  be supporting vision impairments.

 Sent from my iPad

 On Feb 4, 2013, at 9:35 PM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:

 Hi Rich, At this point, since we couldn't find consensus and since
 this release was supposed to done last Fall and since I was
 informed that noone has implemented or shown a need for the three
 clipboard operations, I'm inclined to not hold up the release any
 further and handle this in a follow-on release if a project comes
 along that needs clipboard functionality and provides resource to
 drive the spec toward a well thought out definition of the
 clipboard methods.

 Pete

 On 2/4/13 8:51 PM, Richard Schwerdtfeger wrote:
 Hi Pete,

 The reason for the editing functions was to allow a voice reco
 solution to select text, edit it, and perform clipboard operations
 for the mobility impaired. It is additional work to have a voice
 reco solution have to go through the additional work of doing the
 additional keyboard simulations for doing that function.

 So, these are single actions. AccessibleEditableText also allows
 you to replace text, and set attributes, which takes offsets and
 replacement text/attributes. Accessible actions are single action
 functions that don't take parameters. ReplaceText is not the same
 as pasting from the clipboard. It is really nice to have all the
 features in the same interface. Note: One could bind the single
 command functions (cut, copy, paste) to the same actions in
 accessible actions.

 The other problem you have with actions is where do you apply it.
 Do you know to apply it only to the document. If Editable text is
 applied to text content within the document then you should now
 where to find the interface.

 Rich


 Rich Schwerdtfeger


 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Proposal for html5 media

2012-10-09 Thread Pete Brunet
Sylvia, After all our discussion we came to the consensus that no
changes are needed to IA2 with the exception of adding three action
constants.  See
http://lists.linuxfoundation.org/pipermail/accessibility-ia2/2011-July/001482.html

I'm glad you posted because I had forgotten to add those constants.

Pete

On 10/8/12 9:14 PM, Silvia Pfeiffer wrote:
 Hi all,

 just getting back to this thread - did we manage to add this
 functionality to iAccessible2 1.3?

 Also, I wonder if we just re-use the play() and pause() functionality
 of the browser, whether we're going to cause triggering events for
 these that we would rather not. E.g. let's say a developer attaches
 the display of a custom message overlay to video.pause() which the
 user has to acknowledge. We wouldn't want a blind person to have to
 act on every single one of these just because they are using a
 screenreader that supports live regions for audio descriptions.

 Cheers,
 Silvia.


 On Fri, Jul 22, 2011 at 12:01 PM, James Teh ja...@nvaccess.org wrote:
 On 22/07/2011 11:32 AM, Silvia Pfeiffer wrote:
 Do we need a state to indicate if this is actually the requested way
 of dealing with over-long description cues? I mean: some users may
 want the interface to wait until presentationDone, but others may
 want the video to interrupt the aria-live reading and keep the video
 at real-time speed.
 If we did have such a state, what would set it? This would require the
 app (the browser) to know what the user preferred. There are two ways of
 doing this without the need for a new state:
 1. The browser knows the user doesn't want the video to pause and resume
 due to descriptions, so it doesn't bother to set live:interactive or
 whatever we use; or
 2. The AT knows the user doesn't want to pause/resume, so it just
 doesn't bother to open, signal completion or close the live region object.

 It's interesting for me to see that we want to do text descriptions
 actually with the aria-live feature rather than introduce another
 feature that just behaves almost the same as aria-live. I'm happy if
 that works out!
 I think it's important to separate aria-live from live regions as a
 general concept. Personally, I see them as separate (but related).
 aria-live is just one particular implementation or producer of live
 regions. Live regions could just as well be used by desktop applications
 that have nothing at all to do with the web (and thus ARIA).

 I think it makes sense to generalise concepts and extend existing
 features, rather than introducing entirely new ones that do very similar
 things. It makes the feature more flexible in the longrun, as well as
 making implementation simpler for everyone.

 Jamie

 --
 James Teh
 Vice President, Developer
 NV Access Inc, ABN 61773362390
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] IA2 1.3 ready for review

2012-09-20 Thread Pete Brunet
I finished up the IA2 1.3 work over the weekend but due to some changes
on the LF web site am unable to post it there.  I've provided it at
a11ysoft.com.  Please review it.  I won't get to the object attributes
until later (to add explicit-name).

documentation:  http://a11ysoft.com/ia2/docs/html
zip file: http://a11ysoft.com/ia2.zip

The one bug I see so far is that I don't have a link for the
IAccessible2 interface on the main page.  That is at:
http://www.a11ysoft.com/ia2/docs/html/interface_i_accessible2.html

The zip file contains everything I'll eventually post on the LF site,
among other things, changelog.txt and the merged IDL file, ia2_api_all.idl.

Pete 
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IAccessible2_2 inherits from IAccessible

2012-09-12 Thread Pete Brunet
Thanks.  I'll change it so IA2_2, IAHypertext2, and IAText2 inherit from
their predecessors.  -Pete

On 9/12/12 1:44 AM, Alexander Surkov wrote:
 Inheritance seems to more comfortable for consumers since they can
 save QI thing. On the another hand each IA2 object acquires 4 more
 bytes. It seems each approach has benefits but it's reasonable to
 follow Jamie's suggestion.
 Thank you.
 Alex.


 On Wed, Sep 12, 2012 at 8:04 AM, Pete Brunet p...@a11ysoft.com wrote:
 On 9/11/12 5:36 PM, James Teh wrote:

 On 12/09/2012 12:45 AM, Pete Brunet wrote:

 In the prior release I didn't do
 that for IATable2, but your request makes sense and I can make that
 change for IAccessible2_2.

 I think it's okay for IATable2 because the interface had a very specific
 purpose and was a fairly radical change from the older interface; i.e. it
 wasn't mostly duplicate methods. In contrast, IA2 is a rather broad
 interface and IA2_2 duplicates most of IA2.

 What is your opinion for IAText2 and IAHypertext2?

 Iirc, they only introduce new methods (rather than radically changing the
 fundamentals of the interface), so they should just contain new methods.
 Again, the question of inheritance is open. Personally, I have a slight
 preference for inheritance, but it's worth noting that with MSHTML,
 Microsoft doesn't inherit from the older interface; e.g. IHTMLElement2
 doesn't inherit from IHTMLElement.

 Thanks for that input Jamie.  I need some input from others on whether
 IAText2 and IAHypertext2 should inherit from their prior versions.
 IAHypertext adds the hyperlinks (plural) method.  IAText2 adds the
 attributeRange method.

 Same question re IA2_2 and whether it should inherit from IA2.  There are 3
 new methods: attribute (by type), accessibleWithCaret, and
 relationTargetsOfType.

 Pete


 Jamie


 --
 Pete Brunet

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] object attributes as VARAINT

2012-09-12 Thread Pete Brunet

On 9/9/12 3:11 AM, James Teh wrote:
 Hi.
 This does make sense, though there are a few issues:
 1. This creates inconsistency between fetching all attributes at once
 and fetching a single attribute. Maybe this isn't important; I'm not
 sure.
 2. Most of the integer attributes aren't strictly integers across the
 spec and various implementations. For example, Firefox seems to
 provide units in px, but I'm pretty sure the spec says mm.

 As for creating extra work for implementers, even in C++, working with
 basic VARIANTs isn't too difficult. In some ways, parsing strings is
 probably harder.
I was thinking of the extra work related to the fact that there would be
one set of code to build up the full attribute string and another to
create the VARIANT, but maybe the hard part was to create the full
attribute string and the trivial part is to create the VARIANT.

I don't mind using a VARIANT, but based on my work situation it would be
best if someone took on the job of updating the wiki document to include
what is returned by IA2_2::attribute for each object attribute.

 Jamie

 On 8/09/2012 10:38 AM, Pete Brunet wrote:
 Hi Alex, At least from the perspective of the spec I don't have time to
 make this change, i.e. I think it would take quite a bit of time for me
 to specify which VARIANT type is returned for each of the attributes in
 the spec.  Some else could pick up that work though. Updating the method
 from BSTR to VARIANT would be easy enough though.  Is this also extra
 work for the implementers?  -Pete

 On 9/7/12 7:20 PM, Alexander Surkov wrote:
 Hi. Since we are going to introduce a method that allows to fetch
 object attribute by name then it should be nice if we are able to
 return typed value. For example, if the AT wants a margin-top object
 attribute then the server could return an integer.

 Thank you.
 Alex.


 -- 
 *Pete Brunet*

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G


 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2



-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] object attributes as VARAINT

2012-09-12 Thread Pete Brunet
Hi Alex, I looked through all the object attributes (existing as
documented in the wiki plus the new ones we've recently documented as
additions) and the only non-string type I found was the list level which
is an integer, but it's a sub-attribute which would not be returned by
itself.  Since there are no non-string attributes it makes sense that
the IA2_2::attribute (by type) method should return a BSTR.  -Pete

On 9/12/12 8:15 PM, Alexander Surkov wrote:
 I was thinking of the extra work related to the fact that there would be one
 set of code to build up the full attribute string and another to create the
 VARIANT, but maybe the hard part was to create the full attribute string and
 the trivial part is to create the VARIANT.
 Indeed it adds complexity for implementers. The point of VARIANT is to
 avoid int to string (browser) and string to int (AT) conversions.
 After all this method is just an extension of API which allows to keep
 the conversations between the server and AT faster, thus if the server
 decides to implement only canonical version then it keeps working.

 I don't mind using a VARIANT, but based on my work situation it would be
 best if someone took on the job of updating the wiki document to include
 what is returned by IA2_2::attribute for each object attribute.
 I'd suggest to do that after prototyping so we don't do mistakes in
 hurry. Let's say the string is expected for now and VARIANT is
 reserved for the future.

 Alex.


 On Thu, Sep 13, 2012 at 1:56 AM, Pete Brunet p...@a11ysoft.com wrote:
 On 9/9/12 3:11 AM, James Teh wrote:

 Hi.
 This does make sense, though there are a few issues:
 1. This creates inconsistency between fetching all attributes at once and
 fetching a single attribute. Maybe this isn't important; I'm not sure.
 2. Most of the integer attributes aren't strictly integers across the spec
 and various implementations. For example, Firefox seems to provide units in
 px, but I'm pretty sure the spec says mm.

 As for creating extra work for implementers, even in C++, working with basic
 VARIANTs isn't too difficult. In some ways, parsing strings is probably
 harder.

 I was thinking of the extra work related to the fact that there would be one
 set of code to build up the full attribute string and another to create the
 VARIANT, but maybe the hard part was to create the full attribute string and
 the trivial part is to create the VARIANT.

 I don't mind using a VARIANT, but based on my work situation it would be
 best if someone took on the job of updating the wiki document to include
 what is returned by IA2_2::attribute for each object attribute.


 Jamie

 On 8/09/2012 10:38 AM, Pete Brunet wrote:

 Hi Alex, At least from the perspective of the spec I don't have time to
 make this change, i.e. I think it would take quite a bit of time for me
 to specify which VARIANT type is returned for each of the attributes in
 the spec.  Some else could pick up that work though. Updating the method
 from BSTR to VARIANT would be easy enough though.  Is this also extra
 work for the implementers?  -Pete

 On 9/7/12 7:20 PM, Alexander Surkov wrote:

 Hi. Since we are going to introduce a method that allows to fetch
 object attribute by name then it should be nice if we are able to
 return typed value. For example, if the AT wants a margin-top object
 attribute then the server could return an integer.

 Thank you.
 Alex.


 --
 *Pete Brunet*

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G


 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2



 --
 Pete Brunet


 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IAccessible2_2 inherits from IAccessible

2012-09-11 Thread Pete Brunet
Thanks Jamie, I can make that change.  In the prior release I didn't do
that for IATable2, but your request makes sense and I can make that
change for IAccessible2_2.

What is your opinion for IAText2 and IAHypertext2?

I'll work on this over the weekend and hopefully have something ready
for next week.

Pete
 
On 9/10/12 9:02 PM, James Teh wrote:
 Hi Pete and all,

 I can't remember whether this has been covered before, but I think
 completely replacing IAccessible2 with IAccessible2_2 rather than just
 extending will make life very difficult for both AT and app developers
 alike. I understand that it'd be nice to clean up IAccessible2 by
 removing deprecated methods and parameters. However, the reality is
 that IAccessible2_2 isn't going to be implemented by every vendor
 overnight and we will still need to deal with IAccessible2 in older
 versions of apps even if/once it is. With the current IAccessible2_2
 approach, every vendor will have to implement all of the duplicated
 methods twice, once for IAccessible2 and once for IAccessible2_2. It
 essentially has to be treated as a new API even though most of the
 methods are the same.

 The deprecated methods in IAccessible2 obviously still need to be
 marked as deprecated. I think IAccessible2_2 should just contain the
 new methods. Whether it inherits from IAccessible2 is an open question
 and doesn't matter as much. I think this would make sense, but I'm
 happy either way.

 Thoughts?

 Jamie

 On 8/09/2012 10:43 AM, Pete Brunet wrote:
 I am creating IAccessible2_2 to make some changes:
 - add accessibleWithCaret
 - add relationTargetsOfType
 - remove nRelations/relation/relations
 - add attribute // return object attribute by name
 - remove unused [in] parameter on extendedStates and
 localizedExtendedStates

 I could also change this to remove the unneeded inheritance from
 IAccessible, but that might cause too much work for those reworking code
 from IAccessible2.  Is that true?

 Pete
 -- 
 *Pete Brunet*

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G


 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2



-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IAccessible2_2 inherits from IAccessible

2012-09-11 Thread Pete Brunet

On 9/11/12 5:36 PM, James Teh wrote:
 On 12/09/2012 12:45 AM, Pete Brunet wrote:
 In the prior release I didn't do
 that for IATable2, but your request makes sense and I can make that
 change for IAccessible2_2.
 I think it's okay for IATable2 because the interface had a very
 specific purpose and was a fairly radical change from the older
 interface; i.e. it wasn't mostly duplicate methods. In contrast, IA2
 is a rather broad interface and IA2_2 duplicates most of IA2.

 What is your opinion for IAText2 and IAHypertext2?
 Iirc, they only introduce new methods (rather than radically changing
 the fundamentals of the interface), so they should just contain new
 methods. Again, the question of inheritance is open. Personally, I
 have a slight preference for inheritance, but it's worth noting that
 with MSHTML, Microsoft doesn't inherit from the older interface; e.g.
 IHTMLElement2 doesn't inherit from IHTMLElement.
Thanks for that input Jamie.  I need some input from others on whether
IAText2 and IAHypertext2 should inherit from their prior versions. 
IAHypertext adds the hyperlinks (plural) method.  IAText2 adds the
attributeRange method.

Same question re IA2_2 and whether it should inherit from IA2.  There
are 3 new methods: attribute (by type), accessibleWithCaret, and
relationTargetsOfType.

Pete

 Jamie


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Getting the document accessible

2012-09-10 Thread Pete Brunet
The new IDL for version 1.3 is pretty much ready to go.  The only thing
I haven't done is to add the 4 relations:

IA2_RELATION_CONTAINING_DOCUMENT
IA2_RELATION_CONTAINING_TAB
IA2_RELATION_CONTAINING_WINDOW
IA2_RELATION_CONTAINING_APPLICATION

Is there an issue with plugin container or can that be handled via
getting the parent?

Pete

On 9/9/12 3:13 AM, James Teh wrote:
 On 8/09/2012 10:14 AM, Alexander Surkov wrote:
 We had an issue with plugins (find a plugin container from plugin) but
 new relation might not be a fix here. Jamie?
 I don't believe a new relation is the correct solution. The plugin
 container really should be the parent of the plugin.

 Jamie
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] ia2_api_all.idl

2012-09-10 Thread Pete Brunet
I was getting some errors when using ia2_api_all.idl (the merged API
file) and to fix it I removed all the IDL files that have been
deprecated, i.e. IA2, IATable, IAText, and IAHypertext which have been
replaced with IA2_2, IATable2, IAText2, and IAHypertext2.  Is that OK? 
With some more work I'm sure I could fix this if it's a problem but I
don't want to spend the time if those old IDL files aren't needed in the
merged IDL file.

Pete
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Getting the document accessible

2012-09-07 Thread Pete Brunet

On 8/15/12 7:44 PM, James Teh wrote:
 As much as I'd love a way to search descendants quickly (in theory),
 one major problem with searching by attributes is that there are a lot
 of properties which aren't attributes; e.g. role and states. I don't
 really have a good alternative, but even if we make fake attributes
 for the purposes of searching (i.e. they aren't actually exposed as
 object attributes), this seems a bit contrary to the rest of the API.

 Also, is there a reason a relation doesn't fit for getting the
 document accessible?
I missed responding to this.  Using relations is OK with me and seems to
be preferred.  I assume this would be implemented on a particular object
and then point to a particular kind of containing object and that there
would need to be several kinds of relations, e.g. ones for document,
tab, window, and application have been mentioned, e.g.

IA2_RELATION_CONTAINING_DOCUMENT
IA2_RELATION_CONTAINING_TAB
IA2_RELATION_CONTAINING_WINDOW
IA2_RELATION_CONTAINING_APPLICATION

Are there others?  Are these the right names, e.g. should it be TAB or
TAB_PANE?

Pete

 Jamie

 On 15/08/2012 4:02 PM, Alexander Surkov wrote:
 Hi, Pete.

 containerByAttrbute is OK with me, taking a BSTR like
 document:anchored;
 someOtherAttribute:someOtherValue;

 Do all of the attribute/value pairs have to be true?

 I missed the question.

 Regarding childrenByAttribute, although there hasn't been a request for
 this, should we add it?

 It should be good for reserve even if nobody raised a hand for it yet.
 AT should have a fast way to find children complying the certain
 criteria.

 Alex, Please explain the second, third, and fourth parameters:

 - [in] nsIAccessible* anchor
 Is this where to start the search?  Why not just start the search
 from the
 current accessible?

 say if you look for children in the document from certain point, for
 example, you fetch all headings starting from heading #5 (because your
 virtual cursor is on it). If NULL then accessible itself.

 - [in] bool lookIntoSubtree
 Is this is false does that mean to only look into one level below the
 starting point?

 I think yes but I started to think it would be more flexible to keep
 it as integer so that we can introduce more constant when we need. Of
 course any criteria can be specified in the list attribute:value
 like lookIntoSubtree;. Jamie, ideas?

 - [in] long desiredChildrenAmount,
 What is the purpose of limiting the array?  (There was a miscoding
 in the
 original IDL for IAccessible2::extendedStates,
 IAccessible2::localizedExtendedStates, IAccessibleAction::keyBinding
 that
 included a maxMembers parameter, but this has been fixed for
 IAccessibleTable2::selectedCells,
 IAccessibleTable2::selectedColumns, and
 IAccessibleTable2::selectedRows.)

 Idea of max count argument is performance win when AT doesn't need all
 items, it's similar to relations and hyperlinks we discussed recently.
 Indeed if you need next item then you shouldn't calculate all items.

 Thank you.
 Alex.


 On Tue, Aug 14, 2012 at 5:45 AM, Pete Brunet p...@a11ysoft.com wrote:
 I see we have a few things to finalize yet, one of which is this
 thread.

 containerByAttrbute is OK with me, taking a BSTR like
 document:anchored;
 someOtherAttribute:someOtherValue;

 Do all of the attribute/value pairs have to be true?

 Regarding childrenByAttribute, although there hasn't been a request for
 this, should we add it?

 Alex, Please explain the second, third, and fourth parameters:

 - [in] nsIAccessible* anchor
 Is this where to start the search?  Why not just start the search
 from the
 current accessible?

 - [in] bool lookIntoSubtree
 Is this is false does that mean to only look into one level below the
 starting point?

 - [in] long desiredChildrenAmount,
 What is the purpose of limiting the array?  (There was a miscoding
 in the
 original IDL for IAccessible2::extendedStates,
 IAccessible2::localizedExtendedStates, IAccessibleAction::keyBinding
 that
 included a maxMembers parameter, but this has been fixed for
 IAccessibleTable2::selectedCells,
 IAccessibleTable2::selectedColumns, and
 IAccessibleTable2::selectedRows.)

 I'd like to finalize all these discussions ASAP so we can finish off
 the 1.3
 update so please comment.

 Pete


 On 3/4/12 9:44 PM, Alexander Surkov wrote:

 I find interesting the 5th option: containerOfAttributeValuePairs. It
 looks flexible. Its syntax covers 2-4 options. Not sure I like the
 name since it's pretty long (maybe containerByAttribute or selector?
 similar to DOM API).

 If we discuss the traversal API then we should consider an opposite
 method to get a children like childrenOfAttributeValuePairs
 (childrenByAttribute) that takes a point in accessible tree where we
 should start a search and returns an array of children like

 HRESULT childrenByAttribute(
[in] BSTR attributes,
[in] nsIAccessible* anchor,
[in] bool lookIntoSubtree,
[in] long desiredChildrenAmount,
[out, array] nsIAccessible

Re: [Accessibility-ia2] Please review object attribute additions

2012-08-21 Thread Pete Brunet

On 8/21/12 4:51 AM, Alexander Surkov wrote:
 Hi, Pete. Few notes.

 1) explicit-name description looks a little bit complicated. The
 following short sentence explains well the idea of the attribute:
 A true value indicates that the accessible name is different from,
 and more meaningful than, the text that is returned from
 IAccessibleText::text.
How about if I put that single sentence in the comments field and then
refer the reader to a note at the bottom of the list of attributes with
the full text (minus that sentence) that we had previously agreed on?

 2) sort.

   Comments: If the value is ascending or descending this indicates that an
 object's items are sorted and the sorting algorithm used.
 why is items are sorted not enough and it makes sense to mention the
 sorting algorithm?
I changed it to the text from Jamie's following post:
The value can be either ascending or descending and indicates the order
in which an object's items are sorted.

 3) atomic

 True when all the objects in the accessibility tree below this object should 
 be presented as a whole
 maybe from subtree instead in the accessibility tree below this object?

 4) event-from-input. It's worth to notice that it works in-process
 only since it doesn't make much sense for out-of-process client (two
 different events may be targeted to the same object).

 Thank you.
 Alex.


 On Thu, Aug 16, 2012 at 2:04 PM, Pete Brunet p...@a11ysoft.com wrote:
 Here is a list of some new IA2 object attributes.  Thanks for a pre-review
 by Alex and Jamie.

 Please review these additions.  The current set is listed at:
 https://www.linuxfoundation.org/collaborate/workgroups/Accessibility/IAccessible2/ObjectAttributes

 In new section, Common Attributes

 Name: explicit-name
 Values: true, false
 Default: false
 Reference:
 Comments: (see the following)

 Indicates that a content author has provided ancillary text in addition
 to the primary text of an object and that the server has chosen to use
 that ancillary text for this object's accessible name in preference to
 the object's primary text.

 A true value indicates that the accessible name is different from, and
 more meaningful than, the text that is returned from
 IAccessibleText::text.  Typically an object's accessible name is taken
 directly from the object's textual content and is equivalent to the text
 from IAccessibleText::text, but a true value is returned when the server
 has chosen to use ancillary text rather than the accessible's primary
 textual content when generating the accessible name.

 Some examples that could be seen in an IAccessible2 implementation of a
 web browser are:

 1) a href=http://www.adomain.com;content/a  In this case the
 accessible name will be content and explicit-name will be false.

 2) a href=http://www.adomain.com; title=a titlecontent/a  If the
 title text is used for the accessible name, explicit-name will be true.

 3) a href=http://www.adomain.com; aria-label=a labelcontent/a  If
 the aria-label text is used for accessible name, explicit-name will be true.

 4) div id=labela label/divdiv role=radio
 aria-labelledby=labelcontent/div  If the label text is used for the
 accessible name, explicit-name will be true.

 If this value is true assistive technology may choose to present
 the user with the accessible name rather than the text from
 IAccessibleText::text.

 and these from the Gecko spec at
 https://developer.mozilla.org/en-US/docs/Accessibility/AT-APIs/Gecko/Attrs

 Name: draggable
 Values: true, false
 Default: false
 Reference:
 Comments: true when the accessible object can be grabbed.

 Name: dropeffect
 Values: copy, move, link, execute, popup, none
 Default: none
 Reference:
 http://www.w3.org/TR/wai-aria/states_and_properties#aria-dropeffect
 Comments: Indicates what functions can be performed when the dragged object
 is released on the drop target. The values are defined as:
 - copy:A duplicate of the source object will be dropped into the target.
 - move:The source object will be removed from its current location and
 dropped into the target.
 - link:A reference or shortcut to the dragged object will be created in
 the target object.
 - execute: A function supported by the drop target is executed, using the
 drag source as an input.
 - popup: There is a popup menu or dialog that allows the user to choose one
 of the drag operations (copy, move, link, execute) and any other drag
 functionality, such as cancel.
 - none: No operation can be performed; effectively cancels the drag
 operation if an attempt is made to drop on this object.

 Name: grabbed
 Values: true, false
 Default: false
 Reference:
 Comments: true when the accessible object has been selected for dragging.

 Name: sort
 Values: ascending, descending, none
 Default: none
 Reference: http://www.w3.org/TR/wai-aria/states_and_properties#aria-sort
 Comments: If the value is ascending or descending this indicates that an
 object's items are sorted and the sorting

Re: [Accessibility-ia2] Please review object attribute additions

2012-08-21 Thread Pete Brunet
Alex, I see I missed #3 and #4.  See below...

On 8/21/12 4:51 AM, Alexander Surkov wrote:
 Hi, Pete. Few notes.

 1) explicit-name description looks a little bit complicated. The
 following short sentence explains well the idea of the attribute:
 A true value indicates that the accessible name is different from,
 and more meaningful than, the text that is returned from
 IAccessibleText::text.

 2) sort.

   Comments: If the value is ascending or descending this indicates that an
 object's items are sorted and the sorting algorithm used.
 why is items are sorted not enough and it makes sense to mention the
 sorting algorithm?

 3) atomic

 True when all the objects in the accessibility tree below this object should 
 be presented as a whole
 maybe from subtree instead in the accessibility tree below this object?
How's this: True when this object and its subtree should be presented as
a whole, when changes within it are considered important enough to be
presented automatically.

 4) event-from-input. It's worth to notice that it works in-process
 only since it doesn't make much sense for out-of-process client (two
 different events may be targeted to the same object).
Is this set on the object that the event was fired on?  Assuming that,
how about this: True if the root cause of the event fired on this object
was explicit user input (as opposed to a programmatic change).  This
attribute is only useful for in-process Assistive Technology which can
check the attribute on the event handling thread.


 Thank you.
 Alex.


 On Thu, Aug 16, 2012 at 2:04 PM, Pete Brunet p...@a11ysoft.com wrote:
 Here is a list of some new IA2 object attributes.  Thanks for a pre-review
 by Alex and Jamie.

 Please review these additions.  The current set is listed at:
 https://www.linuxfoundation.org/collaborate/workgroups/Accessibility/IAccessible2/ObjectAttributes

 In new section, Common Attributes

 Name: explicit-name
 Values: true, false
 Default: false
 Reference:
 Comments: (see the following)

 Indicates that a content author has provided ancillary text in addition
 to the primary text of an object and that the server has chosen to use
 that ancillary text for this object's accessible name in preference to
 the object's primary text.

 A true value indicates that the accessible name is different from, and
 more meaningful than, the text that is returned from
 IAccessibleText::text.  Typically an object's accessible name is taken
 directly from the object's textual content and is equivalent to the text
 from IAccessibleText::text, but a true value is returned when the server
 has chosen to use ancillary text rather than the accessible's primary
 textual content when generating the accessible name.

 Some examples that could be seen in an IAccessible2 implementation of a
 web browser are:

 1) a href=http://www.adomain.com;content/a  In this case the
 accessible name will be content and explicit-name will be false.

 2) a href=http://www.adomain.com; title=a titlecontent/a  If the
 title text is used for the accessible name, explicit-name will be true.

 3) a href=http://www.adomain.com; aria-label=a labelcontent/a  If
 the aria-label text is used for accessible name, explicit-name will be true.

 4) div id=labela label/divdiv role=radio
 aria-labelledby=labelcontent/div  If the label text is used for the
 accessible name, explicit-name will be true.

 If this value is true assistive technology may choose to present
 the user with the accessible name rather than the text from
 IAccessibleText::text.

 and these from the Gecko spec at
 https://developer.mozilla.org/en-US/docs/Accessibility/AT-APIs/Gecko/Attrs

 Name: draggable
 Values: true, false
 Default: false
 Reference:
 Comments: true when the accessible object can be grabbed.

 Name: dropeffect
 Values: copy, move, link, execute, popup, none
 Default: none
 Reference:
 http://www.w3.org/TR/wai-aria/states_and_properties#aria-dropeffect
 Comments: Indicates what functions can be performed when the dragged object
 is released on the drop target. The values are defined as:
 - copy:A duplicate of the source object will be dropped into the target.
 - move:The source object will be removed from its current location and
 dropped into the target.
 - link:A reference or shortcut to the dragged object will be created in
 the target object.
 - execute: A function supported by the drop target is executed, using the
 drag source as an input.
 - popup: There is a popup menu or dialog that allows the user to choose one
 of the drag operations (copy, move, link, execute) and any other drag
 functionality, such as cancel.
 - none: No operation can be performed; effectively cancels the drag
 operation if an attempt is made to drop on this object.

 Name: grabbed
 Values: true, false
 Default: false
 Reference:
 Comments: true when the accessible object has been selected for dragging.

 Name: sort
 Values: ascending, descending, none
 Default: none
 Reference: http://www.w3

Re: [Accessibility-ia2] The display object attribute

2012-08-15 Thread Pete Brunet
I spec'd inline, block, inline-block with inline as default.  Is that OK?

On 8/14/12 11:45 PM, Alexander Surkov wrote:
 Firefox exposes exactly what CSS display is. If the value is not
 inline/block/inline-blcok then should it be mapped to one of these
 values or the attribute should missed?
 Alex.

 On Tue, Aug 14, 2012 at 11:23 AM, James Teh ja...@nvaccess.org wrote:
 I'd argue the only really relevant values that aren't domain specific are
 inline, block and possibly inline-block. These enable an AT to determine
 whether a node is on a separate line from others. None isn't necessary in
 any case, as this should be communicated either via the invisible state or
 non-existence in the tree.

 Jamie


 On 14/08/2012 12:14 PM, Pete Brunet wrote:
 It has been requested that the Gecko display object attribute be added
 to the IA2 Object Attribute spec.  That spec references
 http://www.w3.org/TR/CSS2/visuren.html#display-prop

 Should all of the values listed be supported?  Remember that we don't
 want to over specify in order to not overburden app developers.  The
 list is:

 inline | block | list-item | inline-block | table | inline-table |
 table-row-group | table-header-group | table-footer-group | table-row |
 table-column-group | table-column | table-cell | table-caption | none

 Pete
 --
 *Pete Brunet*


 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G


 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2

 --
 James Teh
 Director, NV Access Limited
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 Phone: +61 7 5667 8372
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] Please review object attribute additions

2012-08-15 Thread Pete Brunet
/states_and_properties#aria-relevant
Comments: Describes what kinds of changes are informational, as opposed
to presentational. The four possible values are defined as:
- text: Notify if there was a change in the text of any of the
accessible objects making up the live region.
- additions: Notify if any accessible objects were added to the live region.
- removals: Notify if  any accessible objects were removed from the live
region.
- all: Equivalent to the combination of the above three values.

Name: container-atomic
Values: true, false
Default: false
Reference:
https://developer.mozilla.org/en-US/docs/AJAX/WAI_ARIA_Live_Regions_API_Support
Comments: This object is a descendant in the accessibility tree of an
object which has the atomic object attribute. If true, the
IA2_RELATION_MEMBER_OF relation will point to the root of the atomic region.

Name: container-busy
Values: true, false
Default: false
Reference:
https://developer.mozilla.org/en-US/docs/AJAX/WAI_ARIA_Live_Regions_API_Support
Comments: The current changes in the live region are not yet complete. A
state change event will be fired on the root object of the live region
once it no longer has state  for STATE_SYSTEM_BUSY. The entire atomic
region should be presented once when it is finally no longer busy.

Name: container-live
Values: off, polite, assertive
Default: off
Reference:
https://developer.mozilla.org/en-US/docs/AJAX/WAI_ARIA_Live_Regions_API_Support
Comments: This object is a descendant in the accessibility tree of an
object which has the live object attribute.  The value of this attribute
will match that of the root of the current live region.

Name: container-relevant
Values: all, or a space delimited list of one or more of these values:
additions, removals, text
Default: additions text
Reference:
https://developer.mozilla.org/en-US/docs/AJAX/WAI_ARIA_Live_Regions_API_Support
Comments: This object is a descendant in the accessibility tree of an
object which has the relevant object attribute.  The value of this
attribute will match that of the root of the current live region.

Name: event-from-input
Values: true, false
Default:
Reference:
https://developer.mozilla.org/en-US/docs/AJAX/WAI_ARIA_Live_Regions_API_Support
Comments: True if the root cause of this event was explicit user input
(as opposed to a programmatic change).

In a new section labeled Value Attributes

Name: valuetext
Values: string
Default:
Reference:
Comments: A text equivalent to the current value, such as High in a
slider.

I'll also add a link to the Gecko spec for an example of object
attributes which has been specified for a HTML specific environment.

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Getting the document accessible

2012-08-15 Thread Pete Brunet
If there's not a clear need for it I'd prefer to not add
childrenByAttribute.  Is that acceptable?

On 8/15/12 8:02 PM, Alexander Surkov wrote:
 For role and states we could use fake attributes as you say like
 role:3;states:34944 where numbers are predefined constants or a
 bitset in case of states. Agree, it looks different from rest of the
 API. However it seems we are hunting for flexibility in API and thus
 maybe it's ok.

 Relations should fit imo.

 Thank you.
 Alex.

 On Thu, Aug 16, 2012 at 9:44 AM, James Teh ja...@nvaccess.org wrote:
 As much as I'd love a way to search descendants quickly (in theory), one
 major problem with searching by attributes is that there are a lot of
 properties which aren't attributes; e.g. role and states. I don't really
 have a good alternative, but even if we make fake attributes for the
 purposes of searching (i.e. they aren't actually exposed as object
 attributes), this seems a bit contrary to the rest of the API.

 Also, is there a reason a relation doesn't fit for getting the document
 accessible?

 Jamie


 On 15/08/2012 4:02 PM, Alexander Surkov wrote:
 Hi, Pete.

 containerByAttrbute is OK with me, taking a BSTR like document:anchored;
 someOtherAttribute:someOtherValue;

 Do all of the attribute/value pairs have to be true?

 I missed the question.

 Regarding childrenByAttribute, although there hasn't been a request for
 this, should we add it?

 It should be good for reserve even if nobody raised a hand for it yet.
 AT should have a fast way to find children complying the certain
 criteria.

 Alex, Please explain the second, third, and fourth parameters:

 - [in] nsIAccessible* anchor
 Is this where to start the search?  Why not just start the search from
 the
 current accessible?

 say if you look for children in the document from certain point, for
 example, you fetch all headings starting from heading #5 (because your
 virtual cursor is on it). If NULL then accessible itself.

 - [in] bool lookIntoSubtree
 Is this is false does that mean to only look into one level below the
 starting point?

 I think yes but I started to think it would be more flexible to keep
 it as integer so that we can introduce more constant when we need. Of
 course any criteria can be specified in the list attribute:value
 like lookIntoSubtree;. Jamie, ideas?

 - [in] long desiredChildrenAmount,
 What is the purpose of limiting the array?  (There was a miscoding in the
 original IDL for IAccessible2::extendedStates,
 IAccessible2::localizedExtendedStates, IAccessibleAction::keyBinding that
 included a maxMembers parameter, but this has been fixed for
 IAccessibleTable2::selectedCells, IAccessibleTable2::selectedColumns, and
 IAccessibleTable2::selectedRows.)

 Idea of max count argument is performance win when AT doesn't need all
 items, it's similar to relations and hyperlinks we discussed recently.
 Indeed if you need next item then you shouldn't calculate all items.

 Thank you.
 Alex.


 On Tue, Aug 14, 2012 at 5:45 AM, Pete Brunet p...@a11ysoft.com wrote:
 I see we have a few things to finalize yet, one of which is this thread.

 containerByAttrbute is OK with me, taking a BSTR like document:anchored;
 someOtherAttribute:someOtherValue;

 Do all of the attribute/value pairs have to be true?

 Regarding childrenByAttribute, although there hasn't been a request for
 this, should we add it?

 Alex, Please explain the second, third, and fourth parameters:

 - [in] nsIAccessible* anchor
 Is this where to start the search?  Why not just start the search from
 the
 current accessible?

 - [in] bool lookIntoSubtree
 Is this is false does that mean to only look into one level below the
 starting point?

 - [in] long desiredChildrenAmount,
 What is the purpose of limiting the array?  (There was a miscoding in the
 original IDL for IAccessible2::extendedStates,
 IAccessible2::localizedExtendedStates, IAccessibleAction::keyBinding that
 included a maxMembers parameter, but this has been fixed for
 IAccessibleTable2::selectedCells, IAccessibleTable2::selectedColumns, and
 IAccessibleTable2::selectedRows.)

 I'd like to finalize all these discussions ASAP so we can finish off the
 1.3
 update so please comment.

 Pete


 On 3/4/12 9:44 PM, Alexander Surkov wrote:

 I find interesting the 5th option: containerOfAttributeValuePairs. It
 looks flexible. Its syntax covers 2-4 options. Not sure I like the
 name since it's pretty long (maybe containerByAttribute or selector?
 similar to DOM API).

 If we discuss the traversal API then we should consider an opposite
 method to get a children like childrenOfAttributeValuePairs
 (childrenByAttribute) that takes a point in accessible tree where we
 should start a search and returns an array of children like

 HRESULT childrenByAttribute(
[in] BSTR attributes,
[in] nsIAccessible* anchor,
[in] bool lookIntoSubtree,
[in] long desiredChildrenAmount,
[out, array] nsIAccessible** children,
[out] long* childrenCount);

 Thank you

Re: [Accessibility-ia2] Getting the document accessible

2012-08-13 Thread Pete Brunet
I see we have a few things to finalize yet, one of which is this thread. 

containerByAttrbute is OK with me, taking a BSTR like
document:anchored; someOtherAttribute:someOtherValue;

Do all of the attribute/value pairs have to be true?

Regarding childrenByAttribute, although there hasn't been a request for
this, should we add it?

Alex, Please explain the second, third, and fourth parameters:

- [in] nsIAccessible* anchor
Is this where to start the search?  Why not just start the search from
the current accessible?

- [in] bool lookIntoSubtree
Is this is false does that mean to only look into one level below the
starting point?

- [in] long desiredChildrenAmount,
What is the purpose of limiting the array?  (There was a miscoding in
the original IDL for IAccessible2::extendedStates,
IAccessible2::localizedExtendedStates, IAccessibleAction::keyBinding
that included a maxMembers parameter, but this has been fixed for
IAccessibleTable2::selectedCells, IAccessibleTable2::selectedColumns,
and IAccessibleTable2::selectedRows.)

I'd like to finalize all these discussions ASAP so we can finish off the
1.3 update so please comment.

Pete

On 3/4/12 9:44 PM, Alexander Surkov wrote:
 I find interesting the 5th option: containerOfAttributeValuePairs. It
 looks flexible. Its syntax covers 2-4 options. Not sure I like the
 name since it's pretty long (maybe containerByAttribute or selector?
 similar to DOM API).

 If we discuss the traversal API then we should consider an opposite
 method to get a children like childrenOfAttributeValuePairs
 (childrenByAttribute) that takes a point in accessible tree where we
 should start a search and returns an array of children like

 HRESULT childrenByAttribute(
   [in] BSTR attributes,
   [in] nsIAccessible* anchor,
   [in] bool lookIntoSubtree,
   [in] long desiredChildrenAmount,
   [out, array] nsIAccessible** children,
   [out] long* childrenCount);

 Thank you.
 Alex.


 On Sat, Mar 3, 2012 at 2:13 AM, Pete Brunet p...@a11ysoft.com wrote:
 Some other thoughts:
 1) containerOfRoles, passing in an array of roles, returning the first one
 found when looking up
 2) containerOfAttribute, passing in a BSTR identifying the attribute and
 then looking up the tree until an accessible with that object attribute is
 found, e.g. document.
 3) containerOfAttributeValuePair, passing in the BSTR document:anchored
 4) containerOfAttributes, passing in a BSTR with more than one attribute,
 e.g. document; someOtherAttribute;
 5) containerOfAttributeValuePairs, passing in a BSTR with more than one
 pair, e.g. document:anchored; someOtherAttribute:someOtherValue;

 Are any of those useful?  Are there other ideas?

 Pete


 On 3/1/12 11:16 PM, Alexander Surkov wrote:

 It's not very flexible. For example, you need to call several times if
 you want to get an accessible having a role from desired set of roles.
 Actually it introduces the basics of traversal API which must be handy
 for ATs but these basics don't look enough.

 Also I worry if document is mapped well always into role concept. For
 example, anchor target is applicable to any DOM document but role of
 DOM document accessible can be overridden by ARIA. If someone crazy
 enough creates a widget (like listbox) based on document and makes
 scrolling by passing '#' into URL then AT still might want to read
 that widget starting from anchorTarget.

 Thank you.
 Alex.


 On Fri, Mar 2, 2012 at 6:49 AM, Pete Brunet p...@a11ysoft.com wrote:

 Maybe we need IA2::containerOfRole?

 HRESULT IAccessible2::containerOfRole([in]long role, [out, retval] IUnknown
 **container)

 Pete


 On 2/23/12 8:40 PM, Alexander Surkov wrote:

 I'd say we should consider interfaces performant by design. If AT
 needs to get a containing document for accessible occasionally then it
 makes sense to do: o(1) is always preferable over o(n). I don't have
 good data when AT needs that but I should say that last year we were
 asked by one AT vendor to provide a mechanism to find a tab document
 having an accessible. We hacked IServiceProvider::QueryService for
 that. Maybe it'll be nice if IA2 had built-in methods to do that.

 If you say yes to this idea in general then we need to consider
 relation mechanism for this since I guess AT might need different
 types of documents like
 1) containing document
 2) tab document
 3) window document
 4) application

 Relation mechanism allows us to avoid a method per document type (sure
 we could have keep one method and pass document type as argument).

 Ale.x

 On Fri, Feb 24, 2012 at 12:57 AM, Pete Brunet p...@a11ysoft.com wrote:

 The apparent reason for this new method is for performance, i.e. the AT
 can already walk up the tree looking for a role of interest.  Has there
 been a situation where walking up the tree is causing a performance
 problem?  In my experience, AT (at least some AT) are constantly walking
 up and down the tree, and I haven't noticed a performance issue.  Also,
 as Jamie implies, you'd only have to walk

Re: [Accessibility-ia2] Wrong documentation of IAccessibleText::textAtOffset

2012-08-08 Thread Pete Brunet
Thanks for catching that Jan Arve.

On 8/8/12 8:36 AM, jan-arve.saet...@nokia.com wrote:
 Hi.
 Unless I have completely misunderstood the textAtOffset() function, I believe 
 that the documentation for textAtOffset have some lies for the 
 documentation of the offset parameter. I believe this to be a copy and paste 
 bug from textBeforeOffset().

 From IAccessibleText.idl(470-472), version 1.2.1:
@param [in] offset
 Index of the character for which to return the text part before it.  The 
 index
 character will not be part of the returned string. The valid range is 
 0..length.

 It should probably be somewhere in the lines of:
@param [in] offset
 Index of the character for which to return the text part it belongs to. 
 The valid 
 range is 0..length.

 cheers,
 Jan Arve Sæther

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IEnumVARIANT vs arrays

2012-03-06 Thread Pete Brunet
Thanks Alex, I still prefer 1 rather than 1.1 and 2, but let's see what
others say.  -Pete

On 3/6/12 12:26 AM, Alexander Surkov wrote:
 2nd is more flexible than 1, 1.1 is a nice shortcut for 2 in case of
 one target so probably I would go with 1.1 and 2.
 Alex.

 On Tue, Mar 6, 2012 at 2:35 PM, Pete Brunet p...@a11ysoft.com wrote:
 Thanks Alex (and Jamie), I offer two choices, and in both cases using IDL
 like our recently added IATable2::selectedRows/Columns/Cells.  I like the
 first choice better because it offers a very simple method for the case that
 will be used 99% of the time.  The second choice is the one Jamie proposed.

 1)
 // Fetch one target, even if there is more than one.
 HRESULT IAccessible2_2::relationTargetOfType (
   [in] BSTR type,
   [out, retvalue] IUnknown **target )

 and

 // Fetch all targets
 HRESULT IAccessible2_2::relationTargetsOfType (
   [in] BSTR type,
   [out, size_is(,*nTargets)] IUnknown ***targets,

   [out, retval] long *nTargets  )

 2)
 // Fetch either one or all targets depending on the maxTargets parameter.
 // Typically maxTargets will be 1 but if maxTargets is 0 the server will
 return all available targets, using nTargets to indicate how many were
 returned.
 HRESULT IAccessible2_2::relationTargetsOfType (
   [in] BSTR type,
   [in] long maxTargets,
   [out, size_is(,*nTargets)] IUnknown ***targets,

   [out, retval] long *nTargets  )

 That maxTargets parameter could be a boolean but as a long it provides the
 option of asking for the first n targets.

 In both cases the server would allocate the array, using CoTaskMemAlloc. The
 client would use CoTaskMemFree to free the array.

 Pete


 On 3/5/12 10:25 PM, Alexander Surkov wrote:

 Basically that's what Jamie said. We need to make sure the server
 doesn't do extra work when nobody needs it. So I'm fine with Jamie
 proposal to pass the desired targets amount.
 Alex.

 On Tue, Mar 6, 2012 at 1:19 PM, Alexander Surkov
 surkov.alexan...@gmail.com wrote:

 ARIA tends to expose multiple targets especially stuffs like
 aria-labelledby. I don't have statistics though. But the point is if
 AT needs only one targets then the server shouldn't spend a time to
 check whether there are other targets. In other words we can end up
 with single target but the server can do a lot of computation to
 figure out this.

 Thank you.
 Alex.


 On Tue, Mar 6, 2012 at 6:31 AM, James Teh ja...@nvaccess.org wrote:

 On 6/03/2012 7:20 AM, Pete Brunet wrote:

 Jamie, Since the server allocates the array, are there any issues for AT
 regarding the method I proposed?

 Not directly for ATs. However, fetching multiple targets might be expensive
 and slow on the server side; if I recall correctly, Alex has concurred with
 this. Obviously, if the server is slow, the client slows down too. The idea
 was to allow clients who only want one target to just fetch one target
 without incurring a performance penalty on the server side.

 Alex, how often are there actually multiple targets for a single relation in
 Mozilla itself?


 Jamie

 --
 James Teh
 Director, NV Access Limited
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 Phone: +61 7 5667 8372
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


 --
 Pete Brunet

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IEnumVARIANT vs arrays

2012-03-05 Thread Pete Brunet
Thanks Alex (and Jamie), I offer two choices, and in both cases using
IDL like our recently added IATable2::selectedRows/Columns/Cells.  I
like the first choice better because it offers a very simple method for
the case that will be used 99% of the time.  The second choice is the
one Jamie proposed.

1)
// Fetch one target, even if there is more than one.
HRESULT IAccessible2_2::relationTargetOfType (
  [in] BSTR type,
  [out, retvalue] IUnknown **target )

and

// Fetch all targets
HRESULT IAccessible2_2::relationTargetsOfType (
  [in] BSTR type,
  [out, size_is(,*nTargets)] IUnknown ***targets,
  [out, retval] long *nTargets  )

2)
// Fetch either one or all targets depending on the maxTargets parameter.
// Typically maxTargets will be 1 but if maxTargets is 0 the server will
return all available targets, using nTargets to indicate how many were
returned.
HRESULT IAccessible2_2::relationTargetsOfType (
  [in] BSTR type,
  [in] long maxTargets,
  [out, size_is(,*nTargets)] IUnknown ***targets,
  [out, retval] long *nTargets  )

That maxTargets parameter could be a boolean but as a long it provides
the option of asking for the first n targets.

In both cases the server would allocate the array, using CoTaskMemAlloc.
The client would use CoTaskMemFree to free the array.

Pete

On 3/5/12 10:25 PM, Alexander Surkov wrote:
 Basically that's what Jamie said. We need to make sure the server
 doesn't do extra work when nobody needs it. So I'm fine with Jamie
 proposal to pass the desired targets amount.
 Alex.

 On Tue, Mar 6, 2012 at 1:19 PM, Alexander Surkov
 surkov.alexan...@gmail.com wrote:
 ARIA tends to expose multiple targets especially stuffs like
 aria-labelledby. I don't have statistics though. But the point is if
 AT needs only one targets then the server shouldn't spend a time to
 check whether there are other targets. In other words we can end up
 with single target but the server can do a lot of computation to
 figure out this.

 Thank you.
 Alex.


 On Tue, Mar 6, 2012 at 6:31 AM, James Teh ja...@nvaccess.org wrote:
 On 6/03/2012 7:20 AM, Pete Brunet wrote:
 Jamie, Since the server allocates the array, are there any issues for AT
 regarding the method I proposed?
 Not directly for ATs. However, fetching multiple targets might be expensive
 and slow on the server side; if I recall correctly, Alex has concurred with
 this. Obviously, if the server is slow, the client slows down too. The idea
 was to allow clients who only want one target to just fetch one target
 without incurring a performance penalty on the server side.

 Alex, how often are there actually multiple targets for a single relation in
 Mozilla itself?


 Jamie

 --
 James Teh
 Director, NV Access Limited
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 Phone: +61 7 5667 8372
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] IEnumVARIANT vs arrays

2012-03-04 Thread Pete Brunet
IATable2::selectedCells/Columns/Rows returns an array but the proposed
new methods:

https://wiki.mozilla.org/Accessibility/IA2_1.3#Relations
https://wiki.mozilla.org/Accessibility/IA2_1.3#Hyperlinks_from_hypertext

specify the return of an IEnumVARIANT. 

What is the reasoning for that?  With the IEnumVARIANT you have to fetch
the count (so you can allocate an array), the enumerator, and then the
elements, taking at least three calls (or more if you want to fetch the
elements one at a time).  With the alternative approach we had used for
IATable2 there is only one call.

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Getting the document accessible

2012-03-02 Thread Pete Brunet
Some other thoughts:
1) containerOfRoles, passing in an array of roles, returning the first
one found when looking up
2) containerOfAttribute, passing in a BSTR identifying the attribute and
then looking up the tree until an accessible with that object attribute
is found, e.g. document.
3) containerOfAttributeValuePair, passing in the BSTR document:anchored
4) containerOfAttributes, passing in a BSTR with more than one
attribute, e.g. document; someOtherAttribute;
5) containerOfAttributeValuePairs, passing in a BSTR with more than one
pair, e.g. document:anchored; someOtherAttribute:someOtherValue;

Are any of those useful?  Are there other ideas?

Pete

On 3/1/12 11:16 PM, Alexander Surkov wrote:
 It's not very flexible. For example, you need to call several times if
 you want to get an accessible having a role from desired set of roles.
 Actually it introduces the basics of traversal API which must be handy
 for ATs but these basics don't look enough.

 Also I worry if document is mapped well always into role concept. For
 example, anchor target is applicable to any DOM document but role of
 DOM document accessible can be overridden by ARIA. If someone crazy
 enough creates a widget (like listbox) based on document and makes
 scrolling by passing '#' into URL then AT still might want to read
 that widget starting from anchorTarget.

 Thank you.
 Alex.


 On Fri, Mar 2, 2012 at 6:49 AM, Pete Brunet p...@a11ysoft.com wrote:
 Maybe we need IA2::containerOfRole?

 HRESULT IAccessible2::containerOfRole([in]long role, [out, retval] IUnknown
 **container)

 Pete


 On 2/23/12 8:40 PM, Alexander Surkov wrote:

 I'd say we should consider interfaces performant by design. If AT
 needs to get a containing document for accessible occasionally then it
 makes sense to do: o(1) is always preferable over o(n). I don't have
 good data when AT needs that but I should say that last year we were
 asked by one AT vendor to provide a mechanism to find a tab document
 having an accessible. We hacked IServiceProvider::QueryService for
 that. Maybe it'll be nice if IA2 had built-in methods to do that.

 If you say yes to this idea in general then we need to consider
 relation mechanism for this since I guess AT might need different
 types of documents like
 1) containing document
 2) tab document
 3) window document
 4) application

 Relation mechanism allows us to avoid a method per document type (sure
 we could have keep one method and pass document type as argument).

 Ale.x

 On Fri, Feb 24, 2012 at 12:57 AM, Pete Brunet p...@a11ysoft.com wrote:

 The apparent reason for this new method is for performance, i.e. the AT
 can already walk up the tree looking for a role of interest.  Has there
 been a situation where walking up the tree is causing a performance
 problem?  In my experience, AT (at least some AT) are constantly walking
 up and down the tree, and I haven't noticed a performance issue.  Also,
 as Jamie implies, you'd only have to walk the tree once to find the
 parent of interest and then save a reference to it.  I just want to make
 sure we are solving a real problem before inflating IA2.  -Pete

 On 2/22/12 4:27 PM, James Teh wrote:

 On 22/02/2012 6:54 PM, Alexander Surkov wrote:

 The proposed document accessible concept is close to DOM document.  ...
 One example was get_accChild that can return child accessible
 by uniqueID.

 True, though the only time you ever need that is to test whether a
 given node is within a document. If you are trying to do that, you
 probably already have a reference to the document accessible.

 All caret/selection methods are
 fast on document accessible and slow on child accessible.

 But in that case, we're probably dealing with an editable document,
 which is a real ROLE_SYSTEM_DOCUMENT object. Trying to query for caret
 or selection on an application or frame just doesn't make sense.

 Theoretically anchorTarget is applicable to any document type,
 requirement is the URL should contain '#' pointing to element.

 Technically, that's true, but I don't see any use case for this in the
 wild. Why would an AT want to query for anchor target on an application?

 The problem is that all of this is abusing the idea of a document
 property. In Gecko, an application might be the same internally as a
 document, but that's not true from a user (and probably AT) perspective.

 One option is to note that the document property just returns the
 nearest document. If necessary, add a note stating that this will
 usually be a ROLE_SYSTEM_DOCUMENT accessible, but that the definition
 of document depends on the application. This makes a little trickier
 for clients to know what they'll get, but it does allow for a bit of
 flexibility.

 Jamie

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


 --
 Pete Brunet

 a11ysoft - Accessibility Architecture

Re: [Accessibility-ia2] getting relations

2012-03-02 Thread Pete Brunet
How about a new method IA2::nRelationsOfType?

So I think you'd do something like the following:

- IEnumVARIANT* pEV = NULL
- long n = IA2::nRelationsOfType(IA2_RELATION_EMBEDS)
- long nFeteched = 0
- allocate an array of n VARIANTs
- IA2::relationsOfType(IA2_RELATION_EMBEDS, pEV)
- pEV-Next(n, theArray, nFetched)

Note that the realtionsOfType [out] parameter is IEnumVARIANT**; the
prototype at
https://wiki.mozilla.org/Accessibility/IA2_1.3#Relations
is missing a *.

Pete

On 3/2/12 1:58 AM, Alexander Surkov wrote:
 If I understand correctly, that would require a separate call to fetch each
 relation, which might not be desirable in some cases and also defeats the
 point of IEnumVARIANT. (If we're going to do that, we may as well have the
 function take an additional parameter specifying the index of the relation
 to fetch and return NULL when there are no more.)
 Nah you pass the desired amount of relations into
 IA2_EnumVariant::Next(). If you want one relation then you pass 1, if
 you want all then you pass int32_max or - 1 if you want. This could
 look like

 interface IA2EnumVariant : public IUknown
 {
   HRESULT Next(
 [in] long nItemLimit,
 [out, size_is(nItems*)] IUnknown*** items,
 [out, long] long* nItems)
 }

 Alex.

 On Fri, Mar 2, 2012 at 4:20 PM, James Teh ja...@nvaccess.org wrote:
 On 2/03/2012 3:42 PM, Alexander Surkov wrote:
 If we add relations count as out argument then we get rid the idea of
 lazy relations calculation. Iirc that was a primary reason of
 IEnumVariant usage but I missed the point that IEnumVariant requires
 the AT client to allocate the memory. So I think we should introduce
 interface similar to IEnumVariant where the server allocates the
 memory. That'll be similar to IAccessibleTable2 approach.
 If I understand correctly, that would require a separate call to fetch each
 relation, which might not be desirable in some cases and also defeats the
 point of IEnumVARIANT. (If we're going to do that, we may as well have the
 function take an additional parameter specifying the index of the relation
 to fetch and return NULL when there are no more.)

 What about a boolean specifying whether the count is desired? Alternatively,
 the count could be an in, out parameter which doesn't return the count if
 it's NULL, though I'm not sure if that is particularly elegant.


 Jamie

 --
 James Teh
 Director, NV Access Limited
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 Phone: +61 7 5667 8372
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Please review these three proposals

2012-03-02 Thread Pete Brunet
We already have IAHypertext::nHyperlinks so the AT already knows how
many to ask for on the call to Next on the IEnumVARIANT returned from
calling IAHyperText2::hyperlinks.

On 3/2/12 12:15 AM, Alexander Surkov wrote:
 And again we need something similar to IEnumVariant but not
 IEnumVariant to do lazy computations :)
 Alex.


 On Fri, Mar 2, 2012 at 5:24 AM, Pete Brunet p...@a11ysoft.com wrote:
 On 2/28/12 8:00 PM, James Teh wrote:

 On 24/02/2012 12:48 PM, Pete Brunet wrote:

 https://wiki.mozilla.org/Accessibility/IA2_1.3#Hyperlinks_from_hypertext

 Again, there probably needs to be an out parameter for the count so that a
 client wanting all hyperlinks knows what to pass to IEnumVariant::Next.

 Thanks Jamie, I'll add that.


 Jamie


 --
 Pete Brunet

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Getting the document accessible

2012-03-01 Thread Pete Brunet
Maybe we need IA2::containerOfRole?

HRESULT IAccessible2::containerOfRole([in]long role, [out, retval]
IUnknown **container)

Pete

On 2/23/12 8:40 PM, Alexander Surkov wrote:
 I'd say we should consider interfaces performant by design. If AT
 needs to get a containing document for accessible occasionally then it
 makes sense to do: o(1) is always preferable over o(n). I don't have
 good data when AT needs that but I should say that last year we were
 asked by one AT vendor to provide a mechanism to find a tab document
 having an accessible. We hacked IServiceProvider::QueryService for
 that. Maybe it'll be nice if IA2 had built-in methods to do that.

 If you say yes to this idea in general then we need to consider
 relation mechanism for this since I guess AT might need different
 types of documents like
 1) containing document
 2) tab document
 3) window document
 4) application

 Relation mechanism allows us to avoid a method per document type (sure
 we could have keep one method and pass document type as argument).

 Ale.x

 On Fri, Feb 24, 2012 at 12:57 AM, Pete Brunet p...@a11ysoft.com wrote:
 The apparent reason for this new method is for performance, i.e. the AT
 can already walk up the tree looking for a role of interest.  Has there
 been a situation where walking up the tree is causing a performance
 problem?  In my experience, AT (at least some AT) are constantly walking
 up and down the tree, and I haven't noticed a performance issue.  Also,
 as Jamie implies, you'd only have to walk the tree once to find the
 parent of interest and then save a reference to it.  I just want to make
 sure we are solving a real problem before inflating IA2.  -Pete

 On 2/22/12 4:27 PM, James Teh wrote:
 On 22/02/2012 6:54 PM, Alexander Surkov wrote:
 The proposed document accessible concept is close to DOM document.  ...
 One example was get_accChild that can return child accessible
 by uniqueID.
 True, though the only time you ever need that is to test whether a
 given node is within a document. If you are trying to do that, you
 probably already have a reference to the document accessible.

 All caret/selection methods are
 fast on document accessible and slow on child accessible.
 But in that case, we're probably dealing with an editable document,
 which is a real ROLE_SYSTEM_DOCUMENT object. Trying to query for caret
 or selection on an application or frame just doesn't make sense.

 Theoretically anchorTarget is applicable to any document type,
 requirement is the URL should contain '#' pointing to element.
 Technically, that's true, but I don't see any use case for this in the
 wild. Why would an AT want to query for anchor target on an application?

 The problem is that all of this is abusing the idea of a document
 property. In Gecko, an application might be the same internally as a
 document, but that's not true from a user (and probably AT) perspective.

 One option is to note that the document property just returns the
 nearest document. If necessary, add a note stating that this will
 usually be a ROLE_SYSTEM_DOCUMENT accessible, but that the definition
 of document depends on the application. This makes a little trickier
 for clients to know what they'll get, but it does allow for a bit of
 flexibility.

 Jamie

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Finding the most recent target of the most recent activation of an in page link

2012-03-01 Thread Pete Brunet
After all our discussion I believe we've reached the point where we can
say the proposal at
https://wiki.mozilla.org/Accessibility/IA2_1.3#Anchor_target
is accepted. 

However, I don't see a need for IAccessibleDocument to derive from a
super-interface, so I propose that this be changed.

Pete

On 2/21/12 8:46 PM, Alexander Surkov wrote:
 Hi, Pete.

 I liked IAccessibleDocument interface because anchorTarget is
 applicable to document accessible and doesn't make huge sense on
 IAccessible2. From implementation point of view we would need to get
 anchorTarget on document accessible and then check if obtained anchor
 target is within an accessible you call this method on.

 Thank you.
 Alex.


 On Wed, Feb 22, 2012 at 6:57 AM, Pete Brunet p...@a11ysoft.com wrote:
 Thanks Jamie, It appears there is not strong preference by anyone for any of
 the various options.  Your observation about state vs relationship is
 interesting and is enough to motivate me to choose a method over a relation.

 Does anyone have any preference regarding whether the anchorTarget method
 should reside in IAccessible2_2 or IAccessibleDocument.  The latter would be
 a new interface with one method.

 Pete


 On 2/12/12 8:45 PM, James Teh wrote:

 On 10/02/2012 4:13 AM, Pete Brunet wrote:

 so maybe it's OK to have a new interface and method, but I'd like to
 get some feed back from others on if a method or relation is preferred.

 It makes sense to use existing mechanisms as much as possible rather than
 introducing new methods, so long as those mechanisms fit the proposal and
 don't incur performance or other problems. I feel a relation fits well
 enough here, but I don't feel strongly enough about it to fight for it if
 others disagree. :) I'd pose the question: what makes this so special as to
 justify a new method? Why is it more special than, say, flowsTo or
 labelledBy? I guess it doesn't fit relations entirely, as it isn't strictly
 related so much as state information. If that argument is consensus, fair
 enough.

 Jamie


 --
 Pete Brunet

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] New relations

2012-02-23 Thread Pete Brunet
Regarding this proposal
https://wiki.mozilla.org/Accessibility/IA2_1.3#New_relation_types

See this related background post:
https://lists.linuxfoundation.org/pipermail/accessibility-ia2/2010-February/001021.html
where I ask if we should add the second and third relations
  IA2_RELATION_GROUPING_OBJECT_FOR
  IA2_RELATION_POPUP_INITIATOR_FOR

Please let me know what you think about adding those two.  I don't want
to add something that isn't useful, won't be used, and will add
unnecessary work for implementers.

Pete
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] getting relations

2012-02-23 Thread Pete Brunet
In prior discussions we have agreed that we can deprecate
IA2::nRelations and IA2::relation (singular).  We have also agreed we
need to be able to fetch relations by type, i.e. this proposal:
https://wiki.mozilla.org/Accessibility/IA2_1.3#Relations
though I'd like to name it IAccessible2_2::relationsOfType

We had agreed that we still need IA2::relations (plural)
http://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/interface_i_accessible2.html#967f0dffba760744b5963f42bb7be8ed
but I just want to verify that, i.e. is it still useful to get all the
relations when it is possible to get only the relations of interest on a
type by type basis?

If IA2::relations is deprecated then IARelation could also be deprecated.
http://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/interface_i_accessible_relation.html

Pete
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] Getting the document accessible

2012-02-21 Thread Pete Brunet
https://wiki.mozilla.org/Accessibility/IA2_1.3#Document_accessible
proposes that IAccessible2_2::document will return the containing object
that implements IAccessibleDocument.  Since it's possible that we will
decide to not add IAccessibleDocument I'd prefer to specify that the
object returned will be the containing object of MSAA role
ROLE_SYSTEM_DOCUMENT.  Are there any concerns with this redefinition?

Pete
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Getting the document accessible

2012-02-21 Thread Pete Brunet
Hi Alexander, In the case of IA2 I'm not aware of an interface being
used as a marker like you are proposing.  Maybe the method name should
be something other than document.  Some use cases would be helpful.  I
am doubting that the AT would be asking for the containing object which
can provide the most recent target (the only method available from your
proposed IADocument interface).  Does that query make sense for
application, frame, and dialog?

Also, I don't understand the get_accChild / uniqueID argument.

Pete

On 2/21/12 9:31 PM, Alexander Surkov wrote:
 Right, but other things like get_accChild taking uniqueId are still applied.


 On Wed, Feb 22, 2012 at 12:05 PM, James Teh ja...@nvaccess.org wrote:
 On 22/02/2012 12:34 PM, Alexander Surkov wrote:
 In Firefox a document accessible can have following roles:
 # ROLE_SYSTEM_APPLICATION
 # IA2_ROLE_FRAME
 # ROLE_SYSTEM_DOCUMENT
 # ROLE_SYSTEM_DIALOG
 I'd argue all of the roles other than ROLE_SYSTEM_DOCUMENT are not
 documents in the user sense of the word and therefore document
 operations (such as fetching the most recent target) don't apply to them.
 However, perhaps I'm being too literal. I don't really mind either way.

 Jamie

 --
 James Teh
 Director, NV Access Limited
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 Phone: +61 7 5667 8372

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] Fwd: Re: IAccessibleEditableText2 - clipboard operations

2012-02-09 Thread Pete Brunet

  
  
Reposting with correct list address...

 Original Message 

  

  Subject: 
  Re: [Accessibility-ia2] IAccessibleEditableText2 -
clipboard operations


  Date: 
  Wed, 08 Feb 2012 12:03:04 -0600


  From: 
  Pete Brunet p...@a11ysoft.com


  Reply-To:
  
  p...@a11ysoft.com


  CC: 
  IA2 List
accessibility-...@lists.linux-foundation.org

  




Since there has been no responses since last July it appears the
following proposal is acceptable.

- Deprecate IAEditableText::cut/copy/pasteText, adding a note that
this function is available via the application's GUI.
- Don't provide additional action constants for cut/copy/paste.
These can easily be added in the future if needed.

Please let me know what you think.

Thanks, Pete

On 7/23/11 8:42 AM, Pete Brunet wrote:

  
  Another p.s.
  
  The reason the group ended up suggesting actions is that users
  would use the GUI for clipboard operations so the actions would be
  available to provide support for some future AT that might not be
  able to use the GUI.
  
  That brings up the question of will there ever be a case where
  there is no keyboard accessible GUI for cut/copy/paste? If there
  will always be a keyboard accessible GUI will there ever be an AT
  that can't access that GUI? I assume even GOK users can
  manipulate a context menu. 
  
  I think the action interface was for something like an image map
  with several unique actionable areas that are only accessible via
  a mouse click.
  
  I suspect we can just deprecate the cut/copy/paste methods of
  IAEditableText and not provide equivalent actions. This would
  save unneeded a11y implementations.
  
  Pete
  
  On 7/22/2011 4:00 PM, Pete Brunet wrote:
  

p.s. What is the advantages of subclassing? On the client side
it would save a QI to switch from IAClipboard and
IAEditableText. On the server side I don't think it matters
because both interfaces would be implemented on the same object.

The other issue is that copy can be done from editable or
non-editable text so for a non-editable object a server would
implement IAText and only the copy method of IAClipboard and
none of the methods in IAClipboard's superclass. Due to that,
if subclassing is the desired approach, it would be better to
derive from IAText instead.

For completeness I'm assuming you'd only want to use
IAEditableText on an editable object.

Pete

On 7/22/2011 1:39 PM, Pete Brunet wrote:

  
  To all: Please let me know your preference for actions vs
  another interface.
  
  Assuming I understand Peter the alternative is to deprecate
  the 3 existing clipboard methods in IAccessibleEditableText
  and then provide IAccessibleClipboard deriving from
  IAccessibleEditableText and providing 3 new methods: cut,
  copy, paste. All methods would use the selection, not offset
  parameters. paste would have a type enum parameter with
  values for default, formatted, and unformatted.
  
  Pete
  
  On 7/22/2011 1:00 PM, Peter Korn wrote:
  

Pete,

Thinking back about these discussions, I wonder if a better
way to approach this is a new sub-interface:
AccessibleClipboard. Then any object (container?) would
implement this as appropriate for it.


Peter

On 7/22/2011 10:56 AM, Pete Brunet wrote:

  
  I believe these are the issues related to clipboard
  operations
  
  1) Copy should have been in IAText instead since copy
  doesn't require that an object be editable
  2) The current selection should be used instead of offset
  parameters.
  3) Other formats besides text can be copied to and pasted
  from the clipboard.
  
  I think the following proposal is in line with the prior
  discussion regarding a solution.
  
  - Deprecate the 3 clipboard operations from
  IAEditableText. (They are currently not in use.)
  - Provide 5 new preset action constants for copy, cut,
  pasteDefault, pasteFormatted, and pasteUnformatted.
   - pasteDefault: The result would be the same

Re: [Accessibility-ia2] accessible relations to expose next/prev item in tab order

2012-02-08 Thread Pete Brunet
This request seems like a good one.  Any objections?  Any ideas for
different names?

On 11/9/11 3:55 AM, Alexander Surkov wrote:
 Hi. Resending the mail again since it appears it was rejected due to
 past IA2 mail list problems.

 Originally this feature was reported in Mozilla bug
 https://bugzilla.mozilla.org/show_bug.cgi?id=396561. Recently I was
 asked about the same by screen reader vendor.

 The problem is the screen reader deals with virtual cursor (the user's
 focus in the virtual buffer) which can be somewhere in the document.
 So when the user presses a tab key, the virtual cursor should be moved
 to next tabbable element relative the point the virtual cursor is. If
 screen reader doesn't handle tab then focus moves to next tabbable
 element relative the current focus.

 Is it a worth idea to introduce new relation types for that, say
 IA2_RELATION_NEXTTABBABLE/PREVTABBABLE?

 Thank you.
 Alex.


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] accessibleWithCaret - caretOffset

2012-02-08 Thread Pete Brunet
I agree that it's OK to keep the offset parameter, primarily so that out
of process AT won't suffer the penalty of process switches resulting
from calls to QI and IAText::caretOffset.  The proposal is at
https://wiki.mozilla.org/Accessibility/IA2_1.3#Caret_offset_and_accessible_containing_the_caret
One additional note is needed:  If there is no object containing a caret
the return value would be S_FALSE and the out parameters would be NULL
for the pointer to the IUnknown and 0 for the long.

Are there any additional issues?

Pete

On 9/7/11 10:02 AM, Alexander Surkov wrote:
 Ok, I buy it. That suggestion was a syntax sugar, it could be useful
 for those who is out of process and deprecate caretOffset (at least I
 don't see a case what caretOffset can be used for having
 accessibleWithCaret).

 Alex.


 On Wed, Sep 7, 2011 at 10:53 PM, Malte Timmermann
 malte_timmerm...@gmx.com wrote:
 Magic value sounds strange to me, especially that it would make the OUT
 param an INOUT param.

 IA2 is intended to be in process, so I don't think the extra call is a
 problem. The AT will make many other calls anyway, like getting text
 attributes, object pos/size and other stuff.

 Malte.

 On 07.09.2011 05:18, Alexander Surkov wrote:
 Hi, Pete. The reason is to save an extra call. From my understanding
 AT wants to know the caret offset within deepest accessible having a
 caret. This doesn't add complexity to server implementation (as you
 said all it's needed is to query text interface and call caretOffset).
 We could introduce magic value for caret offset argument to specify
 that the server shouldn't calculate it.

 Thank you.
 Alex.


 On Sat, Sep 3, 2011 at 5:39 AM, Pete Brunetp...@a11ysoft.com  wrote:
 Alex, Why does accessibleWithCaret have an [out] caretOffset?  The user can
 QI to IAText and use IAText::offset.  I propose not adding that redundancy
 (and thus extra code for the app developers).  -Pete
 --
 Pete Brunet

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] HTML table summary mapping to IA2

2011-09-02 Thread Pete Brunet

  
  
Are there any objections to the following?

Deprecate IATable2::summary and caption, adding the following notes:

summary: If the summary is a simple string return it via MSAA's
get_accDescription. If the summary consists of a hierarchy of
objects provide an IA2_RELATION_DESCRIBED_BY relation.
caption: Provide an IA2_RELATION_LABELED_BY relation.

Pete
-- 
Pete
Brunet






  

  a11ysoft - Accessibility Architecture and Development
  (512) 467-4706 (work), (512) 689-4155 (cell)
  Skype: pete.brunet
  IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
  http://www.a11ysoft.com/about/
  Ionosphere: WS4G


On 8/30/2011 1:30 PM, Richard Schwerdtfeger wrote:

  Hi Alex, 

Summary is the equivalent of a
  text description that can be mapped to accDescription. The
  summary is not visible to sighted users. So, it behaves the
  same way as a hidden aria-descibedby. We should start being
  consistent in the way that we provide information. 

Captions are visible labels
  that have an object associated with them and a label relation
  should be used.

We could apply a role of
  caption to the caption label if we had one. I see no need for
  additional methods in IAccessible2Table2.

Rich

  
  Rich Schwerdtfeger
  CTO Accessibility Software Group

Alexander Surkov
  ---08/30/2011 01:22:56 PM---When I started this thread I
  assumed that summary and caption are semantically different
  than name (

From: Alexander Surkov
  surkov.alexan...@gmail.com
To: p...@a11ysoft.com
Cc: IAccessible2 mailing list
  accessibility-...@lists.linux-foundation.org
Date: 08/30/2011 01:22 PM
Subject: Re: [Accessibility-ia2] HTML table
  summary mapping to IA2
Sent by: accessibility-ia2-boun...@lists.linuxfoundation.org
  
  
  
  
  When I started this thread I assumed that
  summary and caption are
  semantically different than name (label relation) and
  description
  (description relation) and AT wants to have an access to them.
  If this
  makes sense then we should go with VARIANT approach, otherwise
  summary
  and caption should be deprecated. Do we have any use cases
  from AT
  perspective?
  
  Thank you.
  Alex.
  
  
  On Tue, Aug 30, 2011 at 3:44 AM, Pete Brunet
  p...@a11ysoft.com wrote:
   I've been discussing this with Rich: rather than creating
  IATable3 and
   having summary return a VARIANT which could then return
  either a BSTR
   (for HTML) or an object (for other non-browser
  implementations), a
   solution with less impact would be to deprecate summary
  and add a
   comment that describedBy should be used when the
  description is provided
   by an object (or tree of objects) or accDescription
  otherwise. That
   seems acceptable for non-browser implementations as well.
  What do you
   think?
  
   Pete
  
   On 8/23/2011 8:50 AM, Pete Brunet wrote:
   For the 1.3 release, let me know if anyone is opposed
  to creating
   IATable3 with summary and caption changed to return a
  VARIANT instead of
   an IUnknown.
  
   On 8/22/2011 9:48 AM, Brett Lewis wrote:
   Hi,
   What prompted this thread for me is my trying to
  obtain caption and
   summary via the IAccessibleTable interface.
   By convention using name and description is fine
  but doesn't really seem
   to correctly implement IAccessibleTable and is
  only somewhat intuitive.
   I like the idea of having the get_summary and
  get_Caption return a
   variant with either the text or the IAccessible.
   Brett
  
  
   -Original Message-
   From: Alexander Surkov [mailto:surkov.alexan...@gmail.com]
   Sent: Monday, August 08, 2011 8:58 PM
   To: James Teh
   Cc: IAccessible2 mailing list; Brett Lewis
   Subject: Re: [Accessibility-ia2] HTML table
  summary mapping to IA2
  
   Hi, Jamie. It appears AT want to get summary and
  caption (not a name or
   description since they can be different).
  
   Brett, do you have scenarios to share?
  
   Thank you.
   Alex.
  
  
   On Tue, Aug 9, 2011 at 12

[Accessibility-ia2] Finding the most recent target of the most recent activation of an in page link

2011-09-02 Thread Pete Brunet
The originating issue is here:
https://bugzilla.mozilla.org/show_bug.cgi?id=617544

Alex's solution is here:
https://wiki.mozilla.org/Accessibility/IA2_1.3#Anchor_target

Due to the fact that this isn't a widespread issue I'd rather use a new
relation than a new method to resolve the problem.  I am proposing a new
relation, hasFlowedTo.  This is a generic name which could be suitable
in many situations.

A proposed text is:  The object which has this relation is related to a
group of additional objects, the sum of which make up a user's
experience.  The relation's target object is the object which has most
recently been presented to the user.  A concrete example is a section of
a web page that has been navigated to via an in page link such as a
href=#foo.

Pete
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G

On 6/28/2011 10:51 AM, Pete Brunet wrote:
 Hi Alex, I did mean object attribute vs relation.  At this point in
 the discussion either of the three (object attribute, relation,
 method) is OK with me.  Since the requirement does not seem to be an
 overwhelming one (from the input we have so far) perhaps adding an
 object attribute or relation is the most pragmatic solution.

 Pete

 On 6/28/2011 5:05 AM, Alexander Surkov wrote:
 Hi, Pete.

 I don't recall who exactly came up with new interface suggestion,
 maybe it was me based on IA2 architecture in Gecko.

 Assuming you meant new relation rather than object attribute I
 believe relations approach work as generic approach. Any getter
 property that returns an object mapped well to relations mechanism,
 for example, IATable2::caption property can be exposed by relations.
 The question is when we want to introduce new method rather than
 reuse existing generic-propose method.

 Thank you.
 Alex.


 On Fri, Jun 24, 2011 at 12:41 PM, Pete Brunet p...@a11ysoft.com
 mailto:p...@a11ysoft.com wrote:

 Thanks Carolyn,

 Rich, When I read accessibleDocument I was thinking of the work
 done by Cathy Laws back around 2005.  I finally found that
 document at
 
 http://accessibility.linuxfoundation.org/a11yspecs/atspi/adoc/ADOC_ATK.html
 Is this what you were thinking of?  If so please start up a new
 thread to discuss that.

 By the way, ATK does have AtkDocument, documented at
 http://developer.gnome.org/atk/2.0/AtkDocument.html
 with these methods:
 atk_document_get_document_type
 atk_document_get_document
 atk_document_get_attribute_value
 atk_document_set_attribute_value
 atk_document_get_attributes
 atk_document_get_locale

 From what I remember we didn't see a need for the first 4
 methods.  We put the last two into the IAccessible2 interface so
 at this point IA2 doesn't have an IAccessibleDocument interface.

 Jamie, In the bug at
 https://bugzilla.mozilla.org/show_bug.cgi?id=617544
 you proposed solving the problem with a new relation or a new
 accNavigate constant and in the new 1.3 document someone else,
 perhaps Alex, has proposed a new interface with one method,
 IAccessibleDocument::anchorTarget.  (Perhaps that should have
 been currentAnchor?)  Could the problem be solved with a new
 object attribute?

 Pete


___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] IA2 in Eclipse

2011-08-29 Thread Pete Brunet
http://www-03.ibm.com/able/news/eclipse_introduces_iaccessible2.html
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] HTML table summary mapping to IA2

2011-08-29 Thread Pete Brunet
I've been discussing this with Rich: rather than creating IATable3 and
having summary return a VARIANT which could then return either a BSTR
(for HTML) or an object (for other non-browser implementations), a
solution with less impact would be to deprecate summary and add a
comment that describedBy should be used when the description is provided
by an object (or tree of objects) or accDescription otherwise.  That
seems acceptable for non-browser implementations as well.  What do you
think?

Pete

On 8/23/2011 8:50 AM, Pete Brunet wrote:
 For the 1.3 release, let me know if anyone is opposed to creating
 IATable3 with summary and caption changed to return a VARIANT instead of
 an IUnknown.

 On 8/22/2011 9:48 AM, Brett Lewis wrote:
 Hi,
 What prompted this thread for me is my trying to obtain caption and
 summary via the IAccessibleTable interface.
 By convention using name and description is fine but doesn't really seem
 to correctly implement IAccessibleTable and is only somewhat intuitive.
 I like the idea of having the get_summary and get_Caption return a
 variant with either the text or the IAccessible.
 Brett
  

 -Original Message-
 From: Alexander Surkov [mailto:surkov.alexan...@gmail.com] 
 Sent: Monday, August 08, 2011 8:58 PM
 To: James Teh
 Cc: IAccessible2 mailing list; Brett Lewis
 Subject: Re: [Accessibility-ia2] HTML table summary mapping to IA2

 Hi, Jamie. It appears AT want to get summary and caption (not a name or
 description since they can be different).

 Brett, do you have scenarios to share?

 Thank you.
 Alex.


 On Tue, Aug 9, 2011 at 12:42 PM, James Teh ja...@nvaccess.org wrote:
 Hi Alex,

 Why are accName/accDescription insufficient?

 Thanks,
 Jamie

 On 9/08/2011 1:36 PM, Alexander Surkov wrote:
 Hi.

 IATable2 provides caption and summary properties that return 
 accessible objects. HTML table summary is provided by @summary 
 attribute so there's no accessible object that's created from DOM 
 element. This can be workarounded by artificial accessible object 
 creation that is attached or not attached to the tree but this 
 complicates implementation and I would try to avoid it. Can we extend
 the IAccessibleTable2 by summaryText and captionText attributes or 
 introduce summary and caption object attributes on table accessible 
 if interface change is not desired for this?

 Thank you.
 Alexander.
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2
 --
 James Teh
 Vice President, Developer
 NV Access Inc, ABN 61773362390
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2



 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2



___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] HTML table summary mapping to IA2

2011-08-23 Thread Pete Brunet
For the 1.3 release, let me know if anyone is opposed to creating
IATable3 with summary and caption changed to return a VARIANT instead of
an IUnknown.

On 8/22/2011 9:48 AM, Brett Lewis wrote:
 Hi,
 What prompted this thread for me is my trying to obtain caption and
 summary via the IAccessibleTable interface.
 By convention using name and description is fine but doesn't really seem
 to correctly implement IAccessibleTable and is only somewhat intuitive.
 I like the idea of having the get_summary and get_Caption return a
 variant with either the text or the IAccessible.
 Brett
  

 -Original Message-
 From: Alexander Surkov [mailto:surkov.alexan...@gmail.com] 
 Sent: Monday, August 08, 2011 8:58 PM
 To: James Teh
 Cc: IAccessible2 mailing list; Brett Lewis
 Subject: Re: [Accessibility-ia2] HTML table summary mapping to IA2

 Hi, Jamie. It appears AT want to get summary and caption (not a name or
 description since they can be different).

 Brett, do you have scenarios to share?

 Thank you.
 Alex.


 On Tue, Aug 9, 2011 at 12:42 PM, James Teh ja...@nvaccess.org wrote:
 Hi Alex,

 Why are accName/accDescription insufficient?

 Thanks,
 Jamie

 On 9/08/2011 1:36 PM, Alexander Surkov wrote:
 Hi.

 IATable2 provides caption and summary properties that return 
 accessible objects. HTML table summary is provided by @summary 
 attribute so there's no accessible object that's created from DOM 
 element. This can be workarounded by artificial accessible object 
 creation that is attached or not attached to the tree but this 
 complicates implementation and I would try to avoid it. Can we extend
 the IAccessibleTable2 by summaryText and captionText attributes or 
 introduce summary and caption object attributes on table accessible 
 if interface change is not desired for this?

 Thank you.
 Alexander.
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2
 --
 James Teh
 Vice President, Developer
 NV Access Inc, ABN 61773362390
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2




___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] HTML table summary mapping to IA2

2011-08-09 Thread Pete Brunet
Hi Alex, Why are relations sufficient?  A relation is a connection to
another accessible but you said you don't want to fabricate another
accessible.

We probably should have had caption and summary return a variant so
either an accessible or a BSTR could be returned.  Would that have
solved the problem?

Pete
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G

On 8/9/2011 8:47 AM, Alexander Surkov wrote:
 Hi, Benjamin.

 I believe Jamie meant proposed summaryText and captionText when asked
 about accName/accDescription.

 More general question can be asked, i.e. why we need to have interface
 to expose caption and summary and it can be worded as why are
 labelled_by/for and described_by/for relations insufficient.

 Thank you.
 Alex.


 On Tue, Aug 9, 2011 at 3:23 PM, Benjamin Hawkes-Lewis
 bhawkesle...@googlemail.com wrote:
 On Tue, Aug 9, 2011 at 4:42 AM, James Teh ja...@nvaccess.org wrote:
 Why are accName/accDescription insufficient?
 The content model of HTML caption is flow (with no descendant
 table elements):

 http://www.whatwg.org/specs/web-apps/current-work/multipage/tabular-data.html#the-caption-element

 That means it a wide variety of structured markup, including headings,
 changes of language marked up with @lang, and links and form controls.
 A practical use of this complex content model might be to include
 controls for modifying the display of the table or linking to sources
 for the table's data.

 accName is a string, so any complex content is flattened into text:

 http://msdn.microsoft.com/en-us/library/accessibility.iaccessible.accname.aspx

 By contrast, the caption property returns an IAccessible or
 IAccessible2 object that could have children represents the structure
 of the caption.

 --
 Benjamin Hawkes-Lewis
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2



___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Explicit name

2011-07-26 Thread Pete Brunet
Thanks Jamie, I made the following changes:
- changed the method's name
- updated the paragraphs
- added information about the parameter and return values at the end

HRESULT isNamePreferred([out, retval] boolean* isPreferred);

Indicates that a content author has provided ancillary text in addition
to the primary text of an object and that the server has chosen to use
that ancillary text for this object's accessible name in preference to
object's primary text.

This method is only useful when the IAccessibleText interface is
implemented and a true value indicates that the accessible name is
different from, and more meaningful than, the text that is returned from
IAccessibleText::text.  Typically an object's accessible name is taken
directly from the object's textual content and is equivalent to the text
from IAccessibleText::text, but a true value is returned when the server
has chosen to use ancillary text rather than the accessible's primary
textual content when generating the accessible name. 

Some examples that could be seen in an IAccessible2 implementation of a
web browser are:

1) a href=http://www.adomain.com;content/a  In this case the
accessible name will be content and isPreferred will be false.

2) a href=http://www.adomain.com; title=a titlecontent/a  If the
title text is used for the accessible name, isPreferred will be true.

3) a href=http://www.adomain.com; aria-label=a labelcontent/a  If
the aria-label text is used for accessible name, isPreferred will be true.

4) div id=labela label/divdiv role=radio
aria-labelledby=labelcontent/div  If the label text is used for the
accessible name, isPreferred will be true.

If this method returns true assistive technology may choose to present
the user with the accessible name rather than the text from
IAccessibleText::text.

Parameters:
isPreferred is true if the server prefers the use of the accessible name
over the text from IAccessibleText::text.

Return values:
S_OK
S_FALSE if IAccessibleText is not implemented

On 7/26/2011 12:16 AM, James Teh wrote:
 On 26/07/2011 11:47 AM, Pete Brunet wrote:
 HRESULT isNameFromAncillaryText([out, retval] boolean* isFromAncillaryText);
 ...
 An object's accessible name is typically is taken directly from the
 typo: is typically is taken from - is typically taken from

 object's textual content and is equivalent to what is provided by
 IAccessibleText::text.
 I know you used the word typically above, but I'm wondering whether 
 it's clear that this extends to the part about IAccessibleText as well. 
 That is, it's still quite okay to have an accessible name even where 
 IAccessibleText::text is not exposed at all. Perhaps this sentence neds 
 to be amended slightly to make it clear that this is only relevant to 
 servers which choose to expose content via IAccessibleText.

 Jamie


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Explicit name

2011-07-26 Thread Pete Brunet
Since this method is only useful when IAText is implemented I think this
method belongs in IAText instead of IA2_2.  In that case I'd remove the
S_FALSE return value.  Is that acceptable?

On 7/26/2011 9:16 AM, Pete Brunet wrote:
 Thanks Jamie, I made the following changes:
 - changed the method's name
 - updated the paragraphs
 - added information about the parameter and return values at the end

 HRESULT isNamePreferred([out, retval] boolean* isPreferred);

 Indicates that a content author has provided ancillary text in
 addition to the primary text of an object and that the server has
 chosen to use that ancillary text for this object's accessible name in
 preference to object's primary text.

 This method is only useful when the IAccessibleText interface is
 implemented and a true value indicates that the accessible name is
 different from, and more meaningful than, the text that is returned
 from IAccessibleText::text.  Typically an object's accessible name is
 taken directly from the object's textual content and is equivalent to
 the text from IAccessibleText::text, but a true value is returned when
 the server has chosen to use ancillary text rather than the
 accessible's primary textual content when generating the accessible
 name. 

 Some examples that could be seen in an IAccessible2 implementation of
 a web browser are:

 1) a href=http://www.adomain.com;content/a  In this case the
 accessible name will be content and isPreferred will be false.

 2) a href=http://www.adomain.com; title=a titlecontent/a  If
 the title text is used for the accessible name, isPreferred will be true.

 3) a href=http://www.adomain.com; aria-label=a labelcontent/a 
 If the aria-label text is used for accessible name, isPreferred will
 be true.

 4) div id=labela label/divdiv role=radio
 aria-labelledby=labelcontent/div  If the label text is used for
 the accessible name, isPreferred will be true.

 If this method returns true assistive technology may choose to present
 the user with the accessible name rather than the text from
 IAccessibleText::text.

 Parameters:
 isPreferred is true if the server prefers the use of the accessible
 name over the text from IAccessibleText::text.

 Return values:
 S_OK
 S_FALSE if IAccessibleText is not implemented

 On 7/26/2011 12:16 AM, James Teh wrote:
 On 26/07/2011 11:47 AM, Pete Brunet wrote:
 HRESULT isNameFromAncillaryText([out, retval] boolean* isFromAncillaryText);
 ...
 An object's accessible name is typically is taken directly from the
 typo: is typically is taken from - is typically taken from

 object's textual content and is equivalent to what is provided by
 IAccessibleText::text.
 I know you used the word typically above, but I'm wondering whether 
 it's clear that this extends to the part about IAccessibleText as well. 
 That is, it's still quite okay to have an accessible name even where 
 IAccessibleText::text is not exposed at all. Perhaps this sentence neds 
 to be amended slightly to make it clear that this is only relevant to 
 servers which choose to expose content via IAccessibleText.

 Jamie


 -- 
 *Pete Brunet*
 
 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G


 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Explicit name

2011-07-26 Thread Pete Brunet
Hi Jamie, Picky is good - I appreciate it!  Here is the new text
assuming the method is in IAccessibleText:

HRESULT isNamePreferred([out, retval] boolean* isPreferred);

Indicates that a content author has provided ancillary text in addition
to the primary text of an object and that the server has chosen to use
that ancillary text for this object's accessible name in preference to
the object's primary text.

A true value indicates that the accessible name is different from, and
more meaningful than, the text that is returned from
IAccessibleText::text.  Typically an object's accessible name is taken
directly from the object's textual content and is equivalent to the text
from IAccessibleText::text, but a true value is returned when the server
has chosen to use ancillary text rather than the accessible's primary
textual content when generating the accessible name.

Some examples that could be seen in an IAccessible2 implementation of a
web browser are:

1) a href=http://www.adomain.com;content/a  In this case the
accessible name will be content and isPreferred will be false.

2) a href=http://www.adomain.com; title=a titlecontent/a  If the
title text is used for the accessible name, isPreferred will be true.

3) a href=http://www.adomain.com; aria-label=a labelcontent/a  If
the aria-label text is used for accessible name, isPreferred will be true.

4) div id=labela label/divdiv role=radio
aria-labelledby=labelcontent/div  If the label text is used for the
accessible name, isPreferred will be true.

If this method returns true assistive technology may choose to present
the user with the accessible name rather than the text from
IAccessibleText::text.

Parameters:
isPreferred is true if the server prefers the use of the accessible name
over the text from IAccessibleText::text.

Return values:
S_OK


On 7/26/2011 6:45 PM, James Teh wrote:
 Sorry to be picky, but... :)

 On 27/07/2011 12:16 AM, Pete Brunet wrote:
 HRESULT isNamePreferred([out, retval] boolean* isPreferred);
 I think I like this new method name.

 Indicates that a content author has provided ancillary text in addition
 to the primary text of an object and that the server has chosen to use
 that ancillary text for this object's accessible name in preference to
 object's primary text.
 Perhaps in preference to *the* object's primary text (missing the)

 Since this method is only useful when IAText is implemented I think this 
 method belongs in IAText instead of IA2_2.  In that case I'd remove the 
 S_FALSE return value.  Is that acceptable?
 Makes sense. In that case, this sentence:
 This method is only useful when the IAccessibleText interface is
 implemented and a true value indicates that the accessible name is...
 can be changed to just:
 A true value indicates that the accessible name is...

 If others disagree that this belongs in IAText, I think that sentence 
 should be changed to:
 This method is only useful when the IAccessibleText interface is
 implemented. In this case, a true value indicates that the accessible 
 name is...
 (Currently, it sounds like it is only useful if a true value is 
 returned. :))

 Jamie


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Explicit name

2011-07-25 Thread Pete Brunet
I like the terms override and from context.  I think Alex is saying
explicit and override are the same, but it sounds like implicit ==
browser tries to fix name might be something different than from
context.

Alex, Are you saying that implicit indicates a third means of
presenting content taken from the original content but adapted by the
browser but not overridden by content attributes or content outside the
node such as from a label?

Pete

On 7/23/2011 4:00 AM, Alexander Surkov wrote:
 Btw, I'm confused by your use of the term explicit name. I would have
 thought explicit name was the name the author explicitly requested
 (i.e. the override) rather than the original, non-overridden name. This
 is why I used terms like override and from content in my original
 proposal. We probably need to straighten out this terminology. Perhaps
 I'm the only one who is confused by this? :)
 explicit in means author specified it (for example, label element is
 used or ARIA), implicit is otherwise, i.e. when browser tries to fix
 name. Though I can see your point if you meant ARIA usage as a way to
 override name.

 Alex.

 On Sat, Jul 23, 2011 at 3:35 PM, James Teh ja...@nvaccess.org wrote:
 On 23/07/2011 2:43 AM, Pete Brunet wrote:
 Why doesn't NVDA just always use accName for normal browsing instead of
 IAText::text? If that were the case then there would be no need to know
 when accName is different than IAText::text.
 In NVDA browse mode (also known as virtual cursor, virtual buffer, etc.
 in other screen readers), the text is presented to the user in a flat
 representation to make it readable as if the user were working with,
 say, a word processor. Thus, we want to keep the content as close as
 possible to the original content. Some reasons we don't always use
 accName to retrieve this content (and this is by no means an exhaustive
 list):
 1. accName might contain content from descendant objects; e.g. a table
 row, a link containing a graphic, etc. If we just use accName, we must
 choose to either ignore information from all descendant objects (thus
 losing semantic information) or render content from those descendant
 objects and try to filter out duplicates (very ugly and complicated).
 2. In the case of editable text fields and some other form controls, the
 name is not what we want. Instead, we want the value or text. (If the
 label is visible on screen, we do render it, but that's because we take
 the content from the label object.)
 3. accName contains no text attributes, so all information about
 formatting would be lost. (NVDA doesn't currently report this
 information for Firefox, but we plan to rectify this soon.)
 Of course, we still want to honour overrides like aria-label, etc.,
 hence the request under discussion.

 Btw, I'm confused by your use of the term explicit name. I would have
 thought explicit name was the name the author explicitly requested
 (i.e. the override) rather than the original, non-overridden name. This
 is why I used terms like override and from content in my original
 proposal. We probably need to straighten out this terminology. Perhaps
 I'm the only one who is confused by this? :)

 Jamie

 --
 James Teh
 Vice President, Developer
 NV Access Inc, ABN 61773362390
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Explicit name

2011-07-25 Thread Pete Brunet
Thanks Jamie, That was very helpful.  Here is the modified proposal then:

A new IA2_2 method:
  HRESULT isNameFromAncillaryText([out, retval] boolean*
isFromAncillaryText);

With a short description of

Indicates that a content author has provided ancillary text in addition
to the primary text of an object and that the server has chosen to use
that ancillary text for this object's accessible name.

and a longer description of:

Indicates that a content author has provided ancillary text in addition
to the primary text of an object and that the server has chosen to use
that ancillary text for this object's accessible name.

An object's accessible name is typically is taken directly from the
object's textual content and is equivalent to what is provided by
IAccessibleText::text.  In some cases the server may have access to
additional text associated with the object that may be more meaningful
for assistive technology users.

This property is set to true when the server has chosen to use ancillary
text rather than the accessible's primary textual content when
generating the accessible name.  Some examples that could be seen in an
IAccessible2 implementation of a web browser are:

1) a href=http://www.adomain.com;content/a  In this case the
accessible name will be content and isFromAncillaryText will be false.

2) a href=http://www.adomain.com; title=a titlecontent/a  If the
title text is used for the accessible name, isFromAncillaryText will be
true.

3) a href=http://www.adomain.com; aria-label=a labelcontent/a  If
the aria-label text is used for accessible name, isFromAncillaryText
will be true.

4) div id=labela label/divdiv role=radio
aria-labelledby=labelcontent/div  If the label text is used for the
accessible name, isFromAncillaryText will be true.

If this method returns true assistive technology may choose to present
the user with the accessible name rather than the text from
IAccessibleText::text.

If anyone would like changes to the above, please let me know.

Thanks, Pete

On 7/25/2011 5:36 PM, James Teh wrote:
 On 26/07/2011 2:06 AM, Pete Brunet wrote:
 Thanks Jamie, If both the accName and IAText::text are not helpful in
 this case then it appears that we need IA2_2::explicitName rather than a
 boolean property like IA2_2::isNameExplicit.
 You misunderstand me. Allow me to summarise:
 1. We usually want to use IAccessibleText, as it gives us more 
 information and keeps us closer to the content.
 2. However, if the author has explicitly indicated that the content 
 should be overridden for ATs (e.g. using aria-label), we want to use 
 accName instead.
 3. Unfortunately, we can't do (2) because we have no idea *when* the 
 name has been explicitly overridden by the author.
 4. Thus, the flag is enough.
 4.1. If the flag indicates the name has been explicitly overridden, 
 we'll use accName as per (2).
 4.2. If not, we'll use IAccessibleText as per (1).
 5. In the case of (4.1), text attributes don't matter. The author 
 provided a name without formatting, so we'll just use it.

 Jamie


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Accessing specific actions without iteration [was Proposal for html5 media]

2011-07-22 Thread Pete Brunet
On 7/21/2011 9:03 PM, James Teh wrote:
 On 22/07/2011 11:40 AM, Pete Brunet wrote:
 What do you think of using
 IAAction::doAction with IA2 specified negative numbers
 That sounds good to me. I'm guessing IAccessible::doAction will throw 
 E_INVALIDARG if the requested action is not available?
Yes, that makes sense.

 Jamie


___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] IAccessibleEditableText2 - clipboard operations

2011-07-22 Thread Pete Brunet
I believe these are the issues related to clipboard operations

1) Copy should have been in IAText instead since copy doesn't require
that an object be editable
2) The current selection should be used instead of offset parameters.
3) Other formats besides text can be copied to and pasted from the
clipboard.

I think the following proposal is in line with the prior discussion
regarding a solution.

- Deprecate the 3 clipboard operations from IAEditableText.  (They are
currently not in use.)
- Provide 5 new preset action constants for copy, cut, pasteDefault,
pasteFormatted, and pasteUnformatted.
  - pasteDefault:  The result would be the same as Ctrl+V
  - pasteFormatted:  The app has the choice of presenting a list of
choices via a GUI or choosing the format without user interaction.
  - pasteUnformatted:  The app would paste raw text.  This could result
in nothing being pasted, e.g. for an image, and IAAction::doAction would
return S_FALSE.
- The new clipboard actions would use the current selection(s).

Is that acceptable?

Pete
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IAccessibleEditableText2 - clipboard operations

2011-07-22 Thread Pete Brunet

  
  
Hopefully the current caret location would suffice. Are there
caretless situations where we need an additional method
pasteAtOffset?

On 7/22/2011 1:53 PM, Richard Schwerdtfeger wrote:

  You may not have a selection
  for pasting. You may simply have an offset.

  
  Rich Schwerdtfeger
  CTO Accessibility Software Group

Pete Brunet
  ---07/22/2011 01:42:03 PM---To all: Please let me know your
  preference for actions vs another interface. Assuming I
  understand P

From: Pete Brunet
  p...@a11ysoft.com
To: IA2 List
  accessibility-...@lists.linux-foundation.org
Date: 07/22/2011 01:42 PM
Subject: Re: [Accessibility-ia2]
  IAccessibleEditableText2 - clipboard operations
Sent by: accessibility-ia2-boun...@lists.linuxfoundation.org
  
  
  
  
  To all: Please let me know your
preference for actions vs another interface.

Assuming I understand Peter the alternative is to deprecate the
3 existing clipboard methods in IAccessibleEditableText and then
provide IAccessibleClipboard deriving from
IAccessibleEditableText and providing 3 new methods: cut, copy,
paste. All methods would use the selection, not offset
parameters. paste would have a type enum parameter with values
for default, formatted, and unformatted.

Pete

On 7/22/2011 1:00 PM, Peter Korn wrote: 
  
Pete,
  
  Thinking back about these discussions, I wonder if a better
  way to approach this is a new sub-interface:
  AccessibleClipboard. Then any object (container?) would
  implement this as appropriate for it.
  
  
  Peter
  
  On 7/22/2011 10:56 AM, Pete Brunet wrote: 

  I believe these are the issues
related to clipboard operations

1) Copy should have been in IAText instead since copy
doesn't require that an object be editable
2) The current selection should be used instead of offset
parameters.
3) Other formats besides text can be copied to and pasted
from the clipboard.

I think the following proposal is in line with the prior
discussion regarding a solution.

- Deprecate the 3 clipboard operations from IAEditableText.
(They are currently not in use.)
- Provide 5 new preset action constants for copy, cut,
pasteDefault, pasteFormatted, and pasteUnformatted.
- pasteDefault: The result would be the same as Ctrl+V
- pasteFormatted: The app has the choice of presenting a
list of choices via a GUI or choosing the format without
user interaction.
- pasteUnformatted: The app would paste raw text. This could
result in nothing being pasted, e.g. for an image, and
IAAction::doAction would return S_FALSE.
- The new clipboard actions would use the current
selection(s).

Is that acceptable?

Pete
  -- 
  Pete Brunet

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G 
  
  
  ___
  Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2



-- 
  
  Peter Korn | Accessibility Principal
  Phone: +1 650 506 9522 
  Oracle
  Corporate Architecture Group
  500 Oracle Parkway | Redwood City, CA 94065 
  Oracle is committed to
  developing practices and products that help protect the
  environment 
  
  
  ___
  Accessibility-ia2 mailing list
  Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2




  

___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] IAccessibleEditableText2 - clipboard operations

2011-07-22 Thread Pete Brunet

  
  
p.s. What is the advantages of subclassing? On the client side it
would save a QI to switch from IAClipboard and IAEditableText. On
the server side I don't think it matters because both interfaces
would be implemented on the same object.

The other issue is that copy can be done from editable or
non-editable text so for a non-editable object a server would
implement IAText and only the copy method of IAClipboard and none of
the methods in IAClipboard's superclass. Due to that, if
subclassing is the desired approach, it would be better to derive
from IAText instead.

For completeness I'm assuming you'd only want to use IAEditableText
on an editable object.

Pete

On 7/22/2011 1:39 PM, Pete Brunet wrote:

  
  To all: Please let me know your preference for actions vs another
  interface.
  
  Assuming I understand Peter the alternative is to deprecate the 3
  existing clipboard methods in IAccessibleEditableText and then
  provide IAccessibleClipboard deriving from IAccessibleEditableText
  and providing 3 new methods: cut, copy, paste. All methods would
  use the selection, not offset parameters. paste would have a type
  enum parameter with values for default, formatted, and
  unformatted.
  
  Pete
  
  On 7/22/2011 1:00 PM, Peter Korn wrote:
  

Pete,

Thinking back about these discussions, I wonder if a better way
to approach this is a new sub-interface: AccessibleClipboard.
Then any object (container?) would implement this as appropriate
for it.


Peter

On 7/22/2011 10:56 AM, Pete Brunet wrote:

  
  I believe these are the issues related to clipboard operations
  
  1) Copy should have been in IAText instead since copy doesn't
  require that an object be editable
  2) The current selection should be used instead of offset
  parameters.
  3) Other formats besides text can be copied to and pasted from
  the clipboard.
  
  I think the following proposal is in line with the prior
  discussion regarding a solution.
  
  - Deprecate the 3 clipboard operations from IAEditableText.
  (They are currently not in use.)
  - Provide 5 new preset action constants for copy, cut,
  pasteDefault, pasteFormatted, and pasteUnformatted.
   - pasteDefault: The result would be the same as Ctrl+V
   - pasteFormatted: The app has the choice of presenting a
  list of choices via a GUI or choosing the format without user
  interaction.
   - pasteUnformatted: The app would paste raw text. This
  could result in nothing being pasted, e.g. for an image, and
  IAAction::doAction would return S_FALSE.
  - The new clipboard actions would use the current
  selection(s).
  
  Is that acceptable?
  
  Pete
  -- 
Pete


Brunet
 


  a11ysoft - Accessibility Architecture and Development
  (512) 467-4706 (work), (512) 689-4155 (cell)
  Skype: pete.brunet
  IM: ptbrunet (AOL, Google), ptbru...@live.com
  (MSN)
  http://www.a11ysoft.com/about/
  Ionosphere: WS4G 
 
  
  
  
  ___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2



-- 
  
  Peter Korn | Accessibility
Principal
Phone: +1 650 506 9522 
Oracle Corporate Architecture
Group
500 Oracle Parkway | Redwood City, CA 94065 
   Oracle is committed to
developing practices and products that help protect the
environment
  

  
  
  -- 
Pete
Brunet

   
 

  a11ysoft - Accessibility Architecture and Development
  (512) 467-4706 (work), (512) 689-4155 (cell)
  Skype: pete.brunet
  IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
  http://www.a11ysoft.com/about/
  Ionosphere: WS4G 
 
  
  
  
  ___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


  

___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo

[Accessibility-ia2] Registry API

2011-07-21 Thread Pete Brunet
Regarding the request to add a registry API to IA2, I think the
consensus is that no changes are required at the present time.  The work
item may be reopened if the Mozilla team determines that the use of
IsWinEventHookInstalled in inadequate.

Is that correct? 

Pete
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] Addition of a childrenChanged method

2011-07-21 Thread Pete Brunet
Since we have not received any information, use cases, or justification
for adding a childrenChanged method I'll assume it is OK to drop this
request from list of proposed changes for version 1.3.

Are there any objections?

Pete
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Proposal for html5 media

2011-07-21 Thread Pete Brunet
Thanks for reminding me of that Jamie.  What do you think of using
IAAction::doAction with IA2 specified negative numbers, e.g.

enum IA2ActionConstants {
  IA2_ACTION_OPEN = -1,  // Used to inform the server that the client
will signal via IA2_ACTION_COMPLETE when it has consumed the content
provided by the object.  This action allows the object's server to wait
for all clients to signal their readiness for additional content.  Any
form of content generation that requires synchronization with an AT
would require use of this action.  One example is the generation of text
describing visual content not obvious from a video's sound track.  In
this scenario the TTS or Braille output may take more time than the
related length of silence in the video's sound track.
  IA2_ACTION_COMPLETE = -2,  // Used by the client to inform the server
that it has consumed the most recent content provided by this object.
  IA2_ACTION_CLOSE = -3  // Used to inform the server that the client no
longer requires synchronization.
}

Alternatively we can add a new method doNamedAction and use a BSTR input
parameter, but the above has no impact on the existing interface.

Pete

On 7/21/2011 7:53 PM, James Teh wrote:
 On 22/07/2011 10:31 AM, Pete Brunet wrote:
 2) IAccessibleAction and ARIA live regions should be used to synchronize
 the streaming of text descriptions as follows:
 If IAccessibleAction is to be used like this, we probably need to 
 optimise the interface to allow for action constants, similar to the 
 proposal for relations. Having to iterate through all actions is fairly 
 inefficient.

 - The text cue is presented via a live region.
 There probably needs to be an additional attribute (or an additional 
 value of the live attribute) to indicate that open and resume 
 actions are required. Executing them otherwise is wasteful. Perhaps 
 live:interactive?

 - A resume action indicates completion of the presentation of the text
 cue.
 Perhaps this should be generalised to just presentationDone, 
 liveDone or similar. Resume makes it very specific to 
 pausing/unpausing. However, it seems to me that it should be generalised 
 to allow other actions when the AT has finished presenting the live 
 update to the user.

 - An open action provides ref counting so that the video will not
 resume playback until all users of the interface signal readiness to
 proceed.
 To clarify, I assume both of these actions would be on the live region 
 object? This makes the most sense to me.

 Jamie


___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] AViewer

2011-07-14 Thread Pete Brunet
I just ran across this
http://www.paciellogroup.com/blog/2010/06/aviewer-beta/

Does anyone have a report on it?
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] How is MSAA+IA2 used for live regions

2011-07-08 Thread Pete Brunet
What aspects of MSAA+IA2 are used to implement live regions?

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Braille devices and live regions

2011-07-08 Thread Pete Brunet
p.s. In the case of a Braille user how would the user be notified of a
polite update?  I assume in this case only a notification is provided
rather than automatically changing the POR.  Would a message be forced
onto the Braille display?  And what means would be used to transfer the
POR to the newly updated live region?

Pete

On 7/7/2011 11:34 PM, Pete Brunet wrote:

 On 7/7/2011 10:34 PM, James Teh wrote:
 On 8/07/2011 3:46 AM, Pete Brunet wrote:
 The case of text descriptions is similar, i.e. after reading the
 description the return to prior POR key could cause return to the
 video object (a non-text POR).
 I really don't think the live region aspect of this is relevant to 
 braille users. For braille users, scrolling the display if they're 
 already focused in the description object makes more sense. Being 
 constantly bounced back and forth between PORs seems to me a fairly 
 unlikely use case when consuming media. In any case:
 How do you envision non-video live regions working for a Braille user? 
 How would the user get notified of an update and how would the user move
 to the newly updated content and then back to the point of interruption?

 One way to handle it would be to have Braille device contents
 automatically change to that of the live region.  The change of contents
 would be the indication of a live region update.  There would need to be
 a means to get back to the point of interruption and perhaps a Braille
 key could be used for that function.

 In the case of text descriptions there wouldn't be any back and forth. 
 While listening to the audio track the hands would stay on the Braille
 device reading the text descriptions as they are received and after
 consumption of each one a Braille key would be pressed to request a
 resumption of playback.  That Braille key could be the same one used in
 the case of non-video live regions.
 There would have to be some way to indicate the prior POR object,
 perhaps a new IA2 relation that links back to either the prior form
 control or caret offset in the case of a legacy live region or to the
 video element in the case of this new concept of a video text
 description live region.
 I don't think the API needs to cover this, not least because the POR 
 might have been somewhere else entirely (e.g. screen reader review). If 
 an AT wants to implement this, it should just keep track of the last POR 
 itself, though as I noted above, I'm not convinced this is really useful.

 In the latter case the AT could activate
 IAccessibleAction::doAction on the accessilble object representing the
 video object to signal completion.
 That's actually a really interesting point and would avoid the need for 
 a separate method. However, it would require a better action interface 
 which can accept predefined action constants, as iterating through all 
 actions is fairly inefficient. I'm thinking something similar to the 
 proposed relations change.

 Jamie

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Braille devices and live regions

2011-07-07 Thread Pete Brunet
After the Braille user has read the content in the live region the user
will want to go back to the prior POR (point of regard).  There would
need to be a Braille key to do that.  Has that aspect been thought of yet?

The case of text descriptions is similar, i.e. after reading the
description the return to prior POR key could cause return to the
video object (a non-text POR).

There would have to be some way to indicate the prior POR object,
perhaps a new IA2 relation that links back to either the prior form
control or caret offset in the case of a legacy live region or to the
video element in the case of this new concept of a video text
description live region.  In the latter case the AT could activate
IAccessibleAction::doAction on the accessilble object representing the
video object to signal completion.  In the case of TTS the AT could do
the same when the TTS has completed.

There is also the issue of the need to support multiple ATs and ref
counting.  Perhaps doAction could also be used here, e.g. the AT calls a
doAction to open the video object, incrementing the counter at the
start of TTS or Braille and the above mentioned completion doAction
would decrement the counter when TTS is complete or the Braille user has
signaled completion.

Will the above work or do we need more discussion?

At some point we'd need prototyping in one UA and one AT.  (I assume any
funding negotiations would be handled offline.)

Pete

On 7/5/2011 11:56 PM, James Teh wrote:
 NVDA currently doesn't notify of live region updates via braille.

 The only way to notify a braille-only user (e.g. blind deaf) of a live 
 region change is to update the display in some way. Generally, I think 
 optionally scrolling the display to the location of the change makes the 
 most sense.

 Jamie

 On 6/07/2011 12:52 PM, Pete Brunet wrote:
 Regarding steaming text descriptions to Braille devices, the user would
 have to be notified that a new description is available. Is there a
 means to notify Braille users of updated contents that are available for
 access? This would be a similar scenario to live regions. How is a
 Braille user notified of a live region update?
 --
 *Pete Brunet*

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G



 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2

___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Braille devices and live regions

2011-07-07 Thread Pete Brunet
p.s. Besides incrementing the ref count the open action handler in the
UA would set the pauseOnExitFlag and the completion action would cause
the UA to reset it.

BTW, I find that term a bit confusing because nothing is exiting. 
Perhaps something like pauseWhenDone or pauseOnCompletion?

Pete

On 7/7/2011 12:46 PM, Pete Brunet wrote:
 After the Braille user has read the content in the live region the user
 will want to go back to the prior POR (point of regard).  There would
 need to be a Braille key to do that.  Has that aspect been thought of yet?

 The case of text descriptions is similar, i.e. after reading the
 description the return to prior POR key could cause return to the
 video object (a non-text POR).

 There would have to be some way to indicate the prior POR object,
 perhaps a new IA2 relation that links back to either the prior form
 control or caret offset in the case of a legacy live region or to the
 video element in the case of this new concept of a video text
 description live region.  In the latter case the AT could activate
 IAccessibleAction::doAction on the accessilble object representing the
 video object to signal completion.  In the case of TTS the AT could do
 the same when the TTS has completed.

 There is also the issue of the need to support multiple ATs and ref
 counting.  Perhaps doAction could also be used here, e.g. the AT calls a
 doAction to open the video object, incrementing the counter at the
 start of TTS or Braille and the above mentioned completion doAction
 would decrement the counter when TTS is complete or the Braille user has
 signaled completion.

 Will the above work or do we need more discussion?

 At some point we'd need prototyping in one UA and one AT.  (I assume any
 funding negotiations would be handled offline.)

 Pete

 On 7/5/2011 11:56 PM, James Teh wrote:
 NVDA currently doesn't notify of live region updates via braille.

 The only way to notify a braille-only user (e.g. blind deaf) of a live 
 region change is to update the display in some way. Generally, I think 
 optionally scrolling the display to the location of the change makes the 
 most sense.

 Jamie

 On 6/07/2011 12:52 PM, Pete Brunet wrote:
 Regarding steaming text descriptions to Braille devices, the user would
 have to be notified that a new description is available. Is there a
 means to notify Braille users of updated contents that are available for
 access? This would be a similar scenario to live regions. How is a
 Braille user notified of a live region update?
 --
 *Pete Brunet*

 a11ysoft - Accessibility Architecture and Development
 (512) 467-4706 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G



 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2

___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] Braille devices and live regions

2011-07-07 Thread Pete Brunet


On 7/7/2011 10:34 PM, James Teh wrote:
 On 8/07/2011 3:46 AM, Pete Brunet wrote:
 The case of text descriptions is similar, i.e. after reading the
 description the return to prior POR key could cause return to the
 video object (a non-text POR).
 I really don't think the live region aspect of this is relevant to 
 braille users. For braille users, scrolling the display if they're 
 already focused in the description object makes more sense. Being 
 constantly bounced back and forth between PORs seems to me a fairly 
 unlikely use case when consuming media. In any case:
How do you envision non-video live regions working for a Braille user? 
How would the user get notified of an update and how would the user move
to the newly updated content and then back to the point of interruption?

One way to handle it would be to have Braille device contents
automatically change to that of the live region.  The change of contents
would be the indication of a live region update.  There would need to be
a means to get back to the point of interruption and perhaps a Braille
key could be used for that function.

In the case of text descriptions there wouldn't be any back and forth. 
While listening to the audio track the hands would stay on the Braille
device reading the text descriptions as they are received and after
consumption of each one a Braille key would be pressed to request a
resumption of playback.  That Braille key could be the same one used in
the case of non-video live regions.
 There would have to be some way to indicate the prior POR object,
 perhaps a new IA2 relation that links back to either the prior form
 control or caret offset in the case of a legacy live region or to the
 video element in the case of this new concept of a video text
 description live region.
 I don't think the API needs to cover this, not least because the POR 
 might have been somewhere else entirely (e.g. screen reader review). If 
 an AT wants to implement this, it should just keep track of the last POR 
 itself, though as I noted above, I'm not convinced this is really useful.

 In the latter case the AT could activate
 IAccessibleAction::doAction on the accessilble object representing the
 video object to signal completion.
 That's actually a really interesting point and would avoid the need for 
 a separate method. However, it would require a better action interface 
 which can accept predefined action constants, as iterating through all 
 actions is fairly inefficient. I'm thinking something similar to the 
 proposed relations change.

 Jamie


___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] solution for video text descriptions

2011-07-06 Thread Pete Brunet


  
  
For non-deaf/blind users are there significant advantages of Braille
over TTS such that TTS would not be a viable solution for providing
text descriptions to a Braille user? My initial hunch is that there
is not.

I am asking because if cloud based TTS, as suggested by Peter Korn,
is an acceptable solution for providing text descriptions and if
it's also acceptable for Braille users then there is no need to
design a means to synch between the UA and a client based AT.

Do we have enough experience with cloud based TTS to know that this
is an acceptable solution? If not, what is the current status of
development and deployment?

One concern might be latency. This is a high priority issue for AT
users.

Pete

This is in response to one of the many threads inside the "next
changes to IAccessible2" thread...

On 6/22/2011 11:51 AM, Pete Brunet wrote:

  
  Hi Peter, What is DAISY solution for Braille users?
  
  I'm also interested in pointers to web/cloud TTS solutions.
  
  Thanks, Pete
  
  On 6/22/2011 11:40 AM, Peter Korn wrote:
  

Rich, Sylvia, all,

I think we have identified the key use case for extended
descriptions in HTML video playback: for blind people who can
hear. Deaf-blind would simply obtain all of the text (captions
 extended descriptions) and read them at their own speed.

All of this API discussion is predicated on the assumption that
the blind user's screen reader should read these extended
descriptions, with some programmatic means of pausing/continuing
video playback while the screen reader reads the text (at a
speed unknown to the video player).

But is this really the right answer? We are seeing more and
more TTS engines available, many in the cloud. Why not simply
have the video player optionally read the extended description,
pausing the video while it does so? This is how we do DAISY
book playback - we don't expect the screen reader to read the
book, we expect the book player to read the text. Also doing it
this way makes the result much more universally available. And
it opens things up for a human being to read the extended
descriptions - again similar to DAISY.


Regards,

Peter

On 6/22/2011 6:27 AM, Richard Schwerdtfeger wrote:

  Pete, 

I am looking at
  accessibleDocument. Should we not do more than that for a
  document interface? Should we also have features to
  collect and access specific objects with a specific
  element type - filtering mechanisms?

Note: I am in favor of not
  unnecessarily growing the API. API changes cause a lot of
  churn. However, with the FCC adopting creating new laws
  based on the 21st Century Communication and Video act
  there is a need for infrastructure to better support the
  HTML 5 changes Silvia is working on to support video and
  audio.

I am looking at the
  notification mechanism for media MEDIA_TEXT_QUEUE_CHANGE.
  Would it be better to have a callback registry for ATs
  similar to what we did in Java? I am concerned about
  potential OS scheduling issues caused by posting events to
  the message queue. 



  
  Rich Schwerdtfeger
  CTO Accessibility Software Group

    Pete Brunet
  ---06/06/2011 11:12:32 PM---Hi all, Please take a look at
  this and provide your feedback: https://wiki.mozilla.org/Accessibility

From: Pete Brunet p...@a11ysoft.com
To: IA2 List accessibility-...@lists.freestandards.org
Date: 06/06/2011 11:12 PM
Subject: Re: [Accessibility-ia2] next
  changes to IAccessible2
Sent by: accessibility-ia2-boun...@lists.linuxfoundation.org
  
  
  
  
  Hi all, Please take a look at this
and provide your feedback:
  
https://wiki.mozilla.org/Accessibility/IA2_1.3

Thanks, Pete
  -- 
  Pete Brunet

a11ysoft - Accessibility Architecture and Development
(512) 238-6967 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G 
  
On 3/11/2011 11:10 PM, Alexander Su

[Accessibility-ia2] Fwd: reorder events issue

2011-07-05 Thread Pete Brunet
Hi Alex, I went through the IA2 list archives and couldn't find the
background on this.  Is the history in a Mozilla bug perhaps?  -Pete

 Original Message 
Subject:reorder events issue
Date:   Wed, 29 Jun 2011 16:07:53 -0500
From:   Pete Brunet p...@a11ysoft.com
Reply-To:   p...@a11ysoft.com
CC: IAccessible2 mailing list
accessibility-...@lists.linux-foundation.org



Alex, I don't remember the founding discussions for the reorder events
issue.  Please update the proposal wiki page with a link to that
discussion.  Thanks, Pete

On 6/8/2011 3:53 AM, Alexander Surkov wrote:
 Hi, Jamie.

 If two continue set of children are added and removed then you get an
 array of two items IA2ChildrenChange.

 What's the problem of in-process calls?

 If you think this suggestion doesn't make too much sense then it's
 fine and let's drop it from proposal. But since this problem is bottle
 neck on certain cases, then we should start working on alternative
 way.

 Thank you.
 Alex.


 On Wed, Jun 8, 2011 at 5:34 PM, James Teh ja...@nvaccess.org wrote:
 Regarding Reorder event details:
 https://wiki.mozilla.org/Accessibility/IA2_1.3#Reorder_event_details

 One issue is that this introduces more in-process only calls into IA2.
 That is, you can of course make the call out-of-process, but it isn't
 useful because win events are async. I don't really have a solution to
 this problem without creating a new event system, but I think this is
 something worth noting nevertheless. :)

 Also, I think the way this works needs to be clarified; e.g. what
 happens if children are both added and removed.

 Jamie

 On 7/06/2011 2:09 PM, Pete Brunet wrote:
 Hi all, Please take a look at this and provide your feedback:

 https://wiki.mozilla.org/Accessibility/IA2_1.3

 Thanks, Pete
 --
 *Pete Brunet*

 a11ysoft - Accessibility Architecture and Development
 (512) 238-6967 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

 On 3/11/2011 11:10 PM, Alexander Surkov wrote:
 Hi, Jamie. I missed Mick suggestion on the list. It's sounds
 reasonable and I agree we should try it before getting new API for
 this since the issue is mostly about events.

 Thank you.
 Alex.


 On Sat, Mar 12, 2011 at 11:43 AM, James Teh ja...@nvaccess.org
 mailto:ja...@nvaccess.org wrote:

 Hi.

 Nice work; good to get the discussion going. :)

 I still don't see a need for this registry API. Why not just use
 IsWinEventHookInstalled(), as Mick suggested on the IA2 list?

 Thanks.

 Jamie


 On 12/03/2011 3:48 AM, Alexander Surkov wrote:

 Hi.

 I gathered ideas into one doc -
 https://wiki.mozilla.org/Accessibility/IA2_1.3. Please give
 feedback
 here and feel free to edit the wiki.

 Thank you.
 Alex.


 --
 James Teh
 Vice President, Developer
 NV Access Inc, ABN 61773362390
 Email: ja...@nvaccess.org mailto:ja...@nvaccess.org
 Web site: http://www.nvaccess.org/



 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2
 --
 James Teh
 Vice President, Developer
 NV Access Inc, ABN 61773362390
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] text-position

2011-07-05 Thread Pete Brunet
Based on this thread
https://lists.linux-foundation.org/pipermail/accessibility-ia2/2009-March/000765.html
I added this paragraph to the text-position text attribute:

Also consider the case of the html snippet, xsupasubi/sub/sup. A
super or sub text attribute refers to the base line of the prior
character which in turn may itself be offset from the baseline of the
character in front of it.

-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] Braille devices and live regions

2011-07-05 Thread Pete Brunet
Regarding steaming text descriptions to Braille devices, the user would
have to be notified that a new description is available.  Is there a
means to notify Braille users of updated contents that are available for
access?  This would be a similar scenario to live regions.  How is a
Braille user notified of a live region update?
-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 467-4706 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


[Accessibility-ia2] reorder events issue

2011-06-29 Thread Pete Brunet
Alex, I don't remember the founding discussions for the reorder events
issue.  Please update the proposal wiki page with a link to that
discussion.  Thanks, Pete

On 6/8/2011 3:53 AM, Alexander Surkov wrote:
 Hi, Jamie.

 If two continue set of children are added and removed then you get an
 array of two items IA2ChildrenChange.

 What's the problem of in-process calls?

 If you think this suggestion doesn't make too much sense then it's
 fine and let's drop it from proposal. But since this problem is bottle
 neck on certain cases, then we should start working on alternative
 way.

 Thank you.
 Alex.


 On Wed, Jun 8, 2011 at 5:34 PM, James Teh ja...@nvaccess.org wrote:
 Regarding Reorder event details:
 https://wiki.mozilla.org/Accessibility/IA2_1.3#Reorder_event_details

 One issue is that this introduces more in-process only calls into IA2.
 That is, you can of course make the call out-of-process, but it isn't
 useful because win events are async. I don't really have a solution to
 this problem without creating a new event system, but I think this is
 something worth noting nevertheless. :)

 Also, I think the way this works needs to be clarified; e.g. what
 happens if children are both added and removed.

 Jamie

 On 7/06/2011 2:09 PM, Pete Brunet wrote:
 Hi all, Please take a look at this and provide your feedback:

 https://wiki.mozilla.org/Accessibility/IA2_1.3

 Thanks, Pete
 --
 *Pete Brunet*

 a11ysoft - Accessibility Architecture and Development
 (512) 238-6967 (work), (512) 689-4155 (cell)
 Skype: pete.brunet
 IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
 http://www.a11ysoft.com/about/
 Ionosphere: WS4G

 On 3/11/2011 11:10 PM, Alexander Surkov wrote:
 Hi, Jamie. I missed Mick suggestion on the list. It's sounds
 reasonable and I agree we should try it before getting new API for
 this since the issue is mostly about events.

 Thank you.
 Alex.


 On Sat, Mar 12, 2011 at 11:43 AM, James Teh ja...@nvaccess.org
 mailto:ja...@nvaccess.org wrote:

 Hi.

 Nice work; good to get the discussion going. :)

 I still don't see a need for this registry API. Why not just use
 IsWinEventHookInstalled(), as Mick suggested on the IA2 list?

 Thanks.

 Jamie


 On 12/03/2011 3:48 AM, Alexander Surkov wrote:

 Hi.

 I gathered ideas into one doc -
 https://wiki.mozilla.org/Accessibility/IA2_1.3. Please give
 feedback
 here and feel free to edit the wiki.

 Thank you.
 Alex.


 --
 James Teh
 Vice President, Developer
 NV Access Inc, ABN 61773362390
 Email: ja...@nvaccess.org mailto:ja...@nvaccess.org
 Web site: http://www.nvaccess.org/




 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2
 --
 James Teh
 Vice President, Developer
 NV Access Inc, ABN 61773362390
 Email: ja...@nvaccess.org
 Web site: http://www.nvaccess.org/
 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2

 ___
 Accessibility-ia2 mailing list
 Accessibility-ia2@lists.linuxfoundation.org
 https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


-- 
*Pete Brunet*

a11ysoft - Accessibility Architecture and Development
(512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G
___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] next changes to IAccessible2

2011-06-28 Thread Pete Brunet


  
  
Rich, There is one MSAA method, accLocation, and three IA2 methods,
IAText::characterExtents, IAImage::imageLocation,
IAImage::imageSize.  All these are getters.

Are you asking if IAccessibleImage should include a means for
returning a series of points?  

How would this information be used by AT?

A side note: IAccessibleImage::imageLocation provides for fetching
either screen or parent relative offsets.  MSAA's accLocation only
provides screen relative offsets.

Thanks, Pete

On 6/28/2011 2:04 PM, Richard Schwerdtfeger wrote:

  So, we are discussing making
  canvas accessible. Currently accessible objects take bounding
  rectangles yet drawing objects can be more complex. Should we
  introduce a drawing path to the API vs doing a best fit to a
  rectangle?

Rich

  
  Rich Schwerdtfeger
  CTO Accessibility Software Group

Pete Brunet
  ---06/28/2011 01:57:10 PM---AT devs, do you use
  IAccessibleEditableText? Is there a kind of AT that can't use
  the GUI for clipbo

From: Pete Brunet
  p...@a11ysoft.com
To: 
Cc: IA2 List
  accessibility-...@lists.linux-foundation.org
Date: 06/28/2011 01:57 PM
Subject: Re: [Accessibility-ia2] next
  changes to IAccessible2
Sent by: accessibility-ia2-boun...@lists.linuxfoundation.org
  
  
  
  
  AT devs, do you use IAccessibleEditableText?
  
  Is there a kind of AT that can't use the GUI for clipboard
  operations? 
  The same question often comes up regarding IAccessibleAction,
  i.e. why
  have actions if the same thing can be done via the GUI. My
  understanding is that this is for those who can't use the
  mouse and
  keyboard. Do ATs for those users not have the ability to use
  GUI menus?
  
  Pete
  
  On 6/28/2011 2:29 AM, Malte Timmermann wrote:
   Actually, it's also not clear to me why the clipboard
  stuff exists at all.
  
   Maybe it was introduced with JAA/ATK, because there is no
  "standard
   platform mechanism" on all supported platforms?
  
   I don't know - how would an AT tell any application on
  GNOME or Mac to
   copy/paste, w/o faking some key events?
  
   The clipboard API is incomplete anyway. For example, I
  don't have an
   equivalent API for copy/paste on a drawing document or a
  bitmap editor.
   Only for objects supporting accessible text.
  
   Malte.
  
   Carolyn MacLeod wrote, On 27.06.2011 21:06:
   An excellent point, Peter.
  
   In fact, I just read Malte's discussion on the same
  API, and something
   he said - "If [the user] really is interested in
  selecting a certain
   format, he can use the dialog in the application." -
  reminded me of our
   initial reaction when we were asked to implement
   IAccessibleEditableText::copyText, cutText, and
  pasteText in our
   StyledText control namely, "Why??".
  
   Why do AT need a separate way of doing something that
  every editable
   text control already provides by a multitude of
  standard platform
   mechanisms?
  
   I still don't have the answer. However, since we
  implemented
   IAccessibleEditableText in order to provide
  insert/replace/delete and
   allow setting of attributes, we then implemented
  cut/copy/paste anyway,
   but only because they were in the same interface.
  
   Our second question was "What are the offsets for?
  Why not just use the
   selection?". The answer to that was that since
  IAccessibleText::copy
   needed offsets because there might not be a
  selection, someone decided
   that IAccessibleEditableText cut/copy/paste needed
  offsets, too, for
   consistency. This was an unfortunate decision,
  because it gives these
   methods a very strange side effect: the server is
  forced to change the
   selection to match the offsets before doing the
  clipboard operation. We
   grudgingly implemented these methods, and hoped that
  no AT would ever
   send us any offsets other than those for the already
  existing selection.
   :)
  
   (Epilogue: I cannot find a definition of
  IAccessibleText::copy anywhere,
   so th

Re: [Accessibility-ia2] next changes to IAccessible2

2011-06-22 Thread Pete Brunet


  
  

On 6/22/2011 8:27 AM, Richard Schwerdtfeger wrote:

  Pete, 

I am looking at
  accessibleDocument. Should we not do more than that for a
  document interface? Should we also have features to collect
  and access specific objects with a specific element type -
  filtering mechanisms?
  

Hi Rich, It's been a long time since I looked at
accessibleDocument. (It's not part of IA2.) I couldn't find a link
in my archives. Please send it. Would that discussion be better
held on the parent LF a11y list at
accessibil...@lists.linux-foundation.org ? That will also be of
interest to the Linux a11y architects.

  

Note: I am in favor of not
  unnecessarily growing the API. API changes cause a lot of
  churn. However, with the FCC adopting creating new laws based
  on the 21st Century Communication and Video act there is a
  need for infrastructure to better support the HTML 5 changes
  Silvia is working on to support video and audio.

I am looking at the
  notification mechanism for media MEDIA_TEXT_QUEUE_CHANGE.
  Would it be better to have a callback registry for ATs similar
  to what we did in Java? I am concerned about potential OS
  scheduling issues caused by posting events to the message
  queue. 
  

We've talked about adding
something to get around the limitations of WinEvent, primarily
the lack of an event payload so out of process AT don't have to
use (and possibly get stale data) on a following call fetching
event data. It's not become enough of an issue that the group
has pushed that change through though.

For in process AT the callback happens on the same thread that
fires the event. Jamie might be able to comment on what
problems there might be for out of process AT when handing a cue
change event.
  

  



  
  Rich Schwerdtfeger
  CTO Accessibility Software Group

Pete Brunet
  ---06/06/2011 11:12:32 PM---Hi all, Please take a look at this
  and provide your feedback: https://wiki.mozilla.org/Accessibility

From: Pete Brunet
  p...@a11ysoft.com
To: IA2 List
  accessibility-...@lists.freestandards.org
Date: 06/06/2011 11:12 PM
Subject: Re: [Accessibility-ia2] next
  changes to IAccessible2
Sent by: accessibility-ia2-boun...@lists.linuxfoundation.org
  
  
  
  
  Hi all, Please take a look at this and
provide your feedback:
  
https://wiki.mozilla.org/Accessibility/IA2_1.3

Thanks, Pete
  -- 
  Pete Brunet

a11ysoft - Accessibility Architecture and Development
(512) 238-6967 (work), (512) 689-4155 (cell)
Skype: pete.brunet
IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
http://www.a11ysoft.com/about/
Ionosphere: WS4G 
  
On 3/11/2011 11:10 PM, Alexander Surkov wrote: 
  
Hi, Jamie. I missed Mick suggestion
  on the list. It's sounds reasonable and I agree we should try
  it before getting new API for this since the issue is mostly
  about events.
  
  Thank you.
  Alex.
  

On Sat, Mar 12, 2011 at 11:43 AM,
  James Teh ja...@nvaccess.org wrote:

  Hi.

Nice work; good to get the discussion going. :)

I still don't see a need for this registry API. Why not just
use IsWinEventHookInstalled(), as Mick suggested on the IA2
list?

Thanks.

Jamie 
  

On 12/03/2011 3:48 AM, Alexander Surkov wrote:
  
Hi.
  
  I gathered ideas into one doc -
  https://wiki.mozilla.org/Accessibility/IA2_1.3. Please give feedback
  here and feel free to edit the wiki.
  
  Thank you.
  Alex.
  
  
  -- 
James Teh
Vice President, Developer
NV Access Inc, ABN 61773362390
Email: ja...@nvaccess.org
Web site: http://www.nvaccess.org/

  
  ___
  Accessibility-ia2 mailing list
  Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


  

___
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2


Re: [Accessibility-ia2] next changes to IAccessible2

2011-06-22 Thread Pete Brunet


  
  
Hi Peter, What is DAISY solution for Braille users?

I'm also interested in pointers to web/cloud TTS solutions.

Thanks, Pete

On 6/22/2011 11:40 AM, Peter Korn wrote:

  
  Rich, Sylvia, all,
  
  I think we have identified the key use case for extended
  descriptions in HTML video playback: for blind people who can
  hear. Deaf-blind would simply obtain all of the text (captions
   extended descriptions) and read them at their own speed.
  
  All of this API discussion is predicated on the assumption that
  the blind user's screen reader should read these extended
  descriptions, with some programmatic means of pausing/continuing
  video playback while the screen reader reads the text (at a speed
  unknown to the video player).
  
  But is this really the right answer? We are seeing more and more
  TTS engines available, many in the cloud. Why not simply have the
  video player optionally read the extended description, pausing the
  video while it does so? This is how we do DAISY book playback -
  we don't expect the screen reader to read the book, we expect the
  book player to read the text. Also doing it this way makes the
  result much more universally available. And it opens things up
  for a human being to read the extended descriptions - again
  similar to DAISY.
  
  
  Regards,
  
  Peter
  
  On 6/22/2011 6:27 AM, Richard Schwerdtfeger wrote:
  
Pete, 
  
  I am looking at
accessibleDocument. Should we not do more than that for a
document interface? Should we also have features to collect
and access specific objects with a specific element type -
filtering mechanisms?
  
  Note: I am in favor of not
unnecessarily growing the API. API changes cause a lot of
churn. However, with the FCC adopting creating new laws
based on the 21st Century Communication and Video act there
is a need for infrastructure to better support the HTML 5
changes Silvia is working on to support video and audio.
  
  I am looking at the
notification mechanism for media MEDIA_TEXT_QUEUE_CHANGE.
Would it be better to have a callback registry for ATs
similar to what we did in Java? I am concerned about
potential OS scheduling issues caused by posting events to
the message queue. 
  
  
  

Rich Schwerdtfeger
CTO Accessibility Software Group
  
  Pete Brunet
---06/06/2011 11:12:32 PM---Hi all, Please take a look at
this and provide your feedback: https://wiki.mozilla.org/Accessibility
  
  From: Pete Brunet p...@a11ysoft.com
  To: IA2 List accessibility-...@lists.freestandards.org
  Date: 06/06/2011 11:12 PM
  Subject: Re: [Accessibility-ia2] next
changes to IAccessible2
  Sent by: accessibility-ia2-boun...@lists.linuxfoundation.org




Hi all, Please take a look at this
  and provide your feedback:

  https://wiki.mozilla.org/Accessibility/IA2_1.3
  
  Thanks, Pete
-- 
Pete Brunet
  
  a11ysoft - Accessibility Architecture and Development
  (512) 238-6967 (work), (512) 689-4155 (cell)
  Skype: pete.brunet
  IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
  http://www.a11ysoft.com/about/
  Ionosphere: WS4G 

  On 3/11/2011 11:10 PM, Alexander Surkov wrote: 

  Hi, Jamie. I missed Mick
suggestion on the list. It's sounds reasonable and I agree
we should try it before getting new API for this since the
issue is mostly about events.

Thank you.
Alex.

  
  On Sat, Mar 12, 2011 at 11:43 AM,
James Teh ja...@nvaccess.org wrote:
  
Hi.
  
  Nice work; good to get the discussion going. :)
  
  I still don't see a need for this registry API. Why not
  just use IsWinEventHookInstalled(), as Mick suggested on
  the IA2 list?
  
  Thanks.
  
  Jamie 

  
  On 12/03/2011 3:48 AM, Alexander Surkov wrote:

  Hi.

I gathered ideas into one doc -
https://wiki.mozilla.org/Accessibility/IA2_1.3. Please give feedback
here and feel free to edit the wiki.

Thank you.
Alex

  1   2   >