How to connect to chromium Accessibility

Post a reply

Confirmation code
Enter the code exactly as it appears. All letters are case insensitive.
Smilies
:D :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :| :mrgreen: :geek: :ugeek: :arrow: :angel: :clap: :crazy: :eh: :lolno: :problem: :shh: :shifty: :sick: :silent: :think: :thumbup: :thumbdown: :salute: :wave: :wtf: :yawn: :facepalm: :bravo: :dance: :beard: :morebeard: :xmas: :HeHe: :trollface: :cookie: :rainbow: :monkeysee: :monkeysay: :happybday: :headwall: :offtopic: :superhappy: :terms: :beer:
View more smilies

BBCode is ON
[img] is OFF
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: How to connect to chromium Accessibility

Re: How to connect to chromium Accessibility

Post by arcticir » 01 Oct 2017, 04:24

I use "Acc_Parent (Acc)" to get the parent data, which seems to be the correct answer.
thank you very much. :D

Re: How to connect to chromium Accessibility

Post by arcticir » 30 Sep 2017, 17:08

But I did not find who's the value is an object.
Even if you use "for wach, child in Acc_Children (AccObj)", no useful data is found.

Re: How to connect to chromium Accessibility

Post by HotKeyIt » 30 Sep 2017, 16:40

I am not sure but as I understand chromium uses different structure.
If I get it right the value is an object that contains the information, try f.value:=(ChildId2:=Acc.AccValue(ChildId)).accName(ChildId2) or something similar.

Re: How to connect to chromium Accessibility

Post by arcticir » 30 Sep 2017, 15:55

Using the same code, chromium and Firefox have different information.

Code: [Select all]GeSHi © Codebox Plus

	Acc := Acc_ObjectFromPoint(ChildId)
role:=Acc_GetRoleText(Acc.accRole(ChildId))
state:=Acc_GetStateText(Acc.accState(ChildId))
action:=Acc.accDefaultAction(ChildId)
f:={role:role,state:state,action:action,ChildId:ChildId}
if role
f.name:=Acc.accName(ChildId),f.value:=Acc.accValue(ChildId)

ImageImage

Re: How to connect to chromium Accessibility

Post by HotKeyIt » 30 Sep 2017, 14:13

Can you post an example and explain where it does not work?

How to connect to chromium Accessibility

Post by arcticir » 30 Sep 2017, 13:27

chromium Use the command line parameter "--force-renderer-accessibility" to allow us to use the ACC.
But its interface seems to be somewhat incomplete, it rarely provides "accName" or "accValue".
And if you use Firefox, the same page, we can get the complete information.


On this page: chrome://accessibility
To view the "show accessibility tree" option on the page, we can see that its ACC contains all the information.
But the problem is that we can not get this information.

I found some relevant documentation, for example here:
https://chromium.googlesource.com/chromium/src/+/master/docs/accessibility/overview.md

On Windows, the root node implements the IAccessible protocol and if you call IAccessible::get_accRole, it returns ROLE_SYSTEM_DOCUMENT, and if you call IAccessible::get_accName, it returns “How old are you?”. Other methods let you walk the tree.


But I can not understand how these data are connected.

https://www.chromium.org/developers/design-documents/accessibility

Top