[Webkit-unassigned] [Bug 109937] [EFL][WK2] Additional bits of having Accessibility in WebKit-EFL.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Feb 15 09:27:39 PST 2013


https://bugs.webkit.org/show_bug.cgi?id=109937





--- Comment #3 from Mario Sanchez Prada <mario at webkit.org>  2013-02-15 09:29:54 PST ---
(In reply to comment #1)
> In order to expose information from WebKit (server) to clients applications
> (Assistive Technologies example. GNOME Orca) DBus is used. AT-SPI2 is something 
> that mediates between server and client in terms of passing dbus messages. 
>
> WebKit's events before land in AT-SPI2 should be translated into dbus messages 
> by ATK-BRIDGE module, which should be properly loaded. In GNOME it's out of the 
> box, in EFL it's not.

Right.

> Generally this should be done transparently without WebKit support, but till 
> EFL does not do this, it may be the only way.

You mean forcing to load the ATK bridge from WebKitEfl, right? If so, and providing that for EFL the "desktop" does not do the job, then I guess you're pretty much stuck with two options: either you do it in WebKit or you do it in every single application using WebKit.

In this regard, I wonder whether it would certainly be more "clean" to do it the apps (or even in the EFL's widget toolkit, if that was possible), so you would not have to mess with AtkUtil in WebKit at all.

Still, I see a problem with that approach for the case WebKit2, since you still need to have the ATK bridge loaded for the Web process, so it can expose its a11y tree for the DOM and "connect it" to the one hanging from the UI process, and that won't happen automatically if you do that in the application or the EFL widgets toolkit, I guess.

So, you would still need to force the load of the ATK bridge module in the WebProcess but perhaps that would be enough and you still would avoid having to mess with AtkUtil? In any case, I'm not 100% sure about this, the "AtkUtil expert" here is Alejandro Pinheiro, so I guess it's better if he commented more on that idea.

> I'm proposing a patch that loads ATK-BRIDGE and adds implementation of 
> AtkUtilClass that registers listeners for specific ATK events

I would really love to hear Pinheiro's opinon on this. As I said, he's the AtkUtil expert here :)

> and creates top level accessible object for WebKit.

I have a doubt about this "top level accessible object":

As far as I can see from the patch, it seems to be just a dummy AtkObject that you're returning from the implementation of AtkUtil, but I can't see the relationship between that object and the a11y hierarchy exposed by the WebProcess: an AtkPlug object (which is the root Atk object in that process) associated to the WebPage object where the a11y hierarchy of Atk objects wrapping the DOM world "hangs" from, and which serves as the "bridge" with the UI process by means of the AtkSocket object that is implemented up there, as the associated a11y object for the WebView widget.

So, I really wonder why you want to return this dummy root object, which isolated from the world, instead of plainly returning that AtkPlug object, which is also a AtkObject that connects you to the a11y hierarchy wrapping the DOM.

> I would like to discuss this approach.
> I'm looking forward to hearing your opinion about this.

Just trying to add my 2 cents here. Please forgive me in advance if what I'm saying makes no sense at all :)

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list