Closed Bug 208922 Opened 21 years ago Closed 21 years ago

Convert nsIAccessNode into an interface for internal accessibility clients

Categories

(Core :: Disability Access APIs, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: aaronlev, Assigned: aaronlev)

Details

(Keywords: access, Whiteboard: in-process-accessibility)

Attachments

(2 files)

Internal XPCOM-based accessibilty clients need nsIAccessNode to give them some
of the same capabilities as ISimpleDOMNode does for external COM-based clients.

In addition, the methods Shutdown() and Init() need to be moved to a private
interface.
Attachment #125310 - Flags: review?(kyle.yuan)
Aaron, what is "XPCOM-based accessibilty clients"? Is that a tool like DOM 
inspector?
Kyle, it's an XPCOM DLL that gets loaded in process at startup, and uses 
nsIAccessible and our other XPCOM accessibility interfaces directly, as well as 
be able to use the nsIDOM and any other frozen interfaces in the embedding SDK. 
It will get acccessibility events through nsIObserver. In the end it can send 
text to the speech driver directly, or communicate with the screen reader or 
other assistive technology in whatever way the vendor decides.

It will be a little bit like nsAccessProxy, but that is old code, and I´m 
updating it now.
Comment on attachment 125310 [details] [diff] [review]
Add methods to nsIAccessNode, split off nsPIAccessNode, implement new methods

r=kyle
Attachment #125310 - Flags: review?(kyle.yuan) → review+
Attachment #125310 - Flags: superreview?(alecf)
Comment on attachment 125310 [details] [diff] [review]
Add methods to nsIAccessNode, split off nsPIAccessNode, implement new methods

I like the cleanup, but where is nsPIAccessNode? Always remember to cvs diff
-N!

is this part of your patch:
-  if (role == EVENT_OBJECT_REORDER) {
-    // Probably need to do this somewhere else so simple dom nodes get
shutdown
-    nsCOMPtr<nsIAccessNode> accessNode(do_QueryInterface(aAccessible));
-    accessNode->Shutdown();
-  }

sr=alecf but I want to see nsPIAccessNode.idl in a seperate patch/attachment
Attachment #125310 - Flags: superreview?(alecf) → superreview+
is this part of your patch:
-  if (role == EVENT_OBJECT_REORDER) {
-    // Probably need to do this somewhere else so simple dom nodes get
shutdown
-    nsCOMPtr<nsIAccessNode> accessNode(do_QueryInterface(aAccessible));
-    accessNode->Shutdown();
-  }

That code was supposed to be removed a while ago, but it somehow didn't.
We take care of shutting down accessnodes based on mutation events in
nsDocAccessible.cpp now.

sounds like grounds for a different bug - in case there is a regression its
going to be a lot easier to track if the bug in the checkin comments matches the
actual bug that you're trying to fix.
checked in
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
this hosed cafe (gtk2) on seamonkey-ports, people talked about it for a while
(wondering why no one cared). at some point someone asked for help and
eventually w/ his help and w/ bz's i made enough changes to fix it.
Whiteboard: in-process-accessibility
Comment on attachment 125310 [details] [diff] [review]
Add methods to nsIAccessNode, split off nsPIAccessNode, implement new methods

For making the accessibility feature work better and more stable in 1.4.x, we
need to get this patch in. This fix has been in trunk for a long period. It
won't affect other modules.
Attachment #125310 - Flags: approval1.4.x?
Comment on attachment 125310 [details] [diff] [review]
Add methods to nsIAccessNode, split off nsPIAccessNode, implement new methods

This is not going to make 1.4.1.  Please re-request aproval after 1.4.1 ships
if you'd like to get this in for 1.4.2. 
Kyle, can you all take this into your tree locally until after 1.4.1 ships
(real soon now) and then work with us to get it landed first thing for 1.4.2?
Attachment #125310 - Flags: approval1.4.x? → approval1.4.x-
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: