Closed Bug 82207 Opened 23 years ago Closed 20 years ago

Complete MSAA XUL support

Categories

(SeaMonkey :: General, defect, P1)

x86
Windows 2000
defect

Tracking

(Not tracked)

RESOLVED FIXED
mozilla1.0.1

People

(Reporter: caustin, Assigned: aaronlev)

References

()

Details

(Keywords: access, meta, Whiteboard: checkbox checked in, bug is now for tracking)

Attachments

(8 files, 1 obsolete file)

Reproducible:  Always

Steps to reproduce:
1) Download MSAA SDK
2) Run Inspect Objects
3) Open Mozilla preferences dialog box
3) Select home page location edit box

Actual behavior:

The name, value, and role of the object according to the Inspector are none,
none, and client, respectively.

Expected behavior:

Name, value, and role should be "Location", "<whatever URL>", and "editable
text", respectively.

Forms within web pages (and throughout the rest of chrome) have similar behavior
and should be updated to return meaningful values.
Blocks: 65632
Keywords: access
We should probably get a testing plan in order, and in line with requirements.
Assignee: asa → aaronl
QA Contact: doronr → aegis
Aegis,

We only have MSAA working for HTML at the moment.
XUL is coming next.
Thanks for filing a bug for us :)

Aaron
Status: NEW → ASSIGNED
Summary: Complete MSAA support (return meaningful information) → Complete MSAA XUL support
QA contact -> dsirnapalli

QA Contact: aegis → dsirnapalli
*** Bug 96115 has been marked as a duplicate of this bug. ***
Severity: minor → normal
Priority: -- → P1
Target Milestone: --- → mozilla1.0
In xpfe\global\resources\content\bindings\checkbox.xml
 (*NOT* checkboxBindings.xml)

- <implementation>
+ <implementation implements="nsIDOMXULCheckboxElement, nsIAccessibleProvider">

==========================

However, it only seems to support the first interface under implements="i1, i2"
Yep, I have it working now - as long we don't list 2 interfaces in the
implementation="i1, i2" part.
Make sure you labeled both interfaces as scriptable in the IDL.
Depends on: 96610
Attached patch checkbox workingSplinter Review
The attachment "checkbox working" shows just that.

You also need the patch from 96610 for this to work, as well as the 4 .idl files
in the zip file attachment.

Don't forget your make depend after you add the new .idl files.
Dave,

John and I have gone over this. This patch is ready for your sr=

In nsIDOMXULControlElement.idl, we had to comment out some things in order to
compile.
They were already defined in the parent class.
+//  readonly attribute nsIControllers controllers;
+//  void focus();
+//  void blur();

Same thing in nsIDOMXULLabeledControlElement.idl
+//  void doCommand();

Finally, do you know if is there a better way to do this? It doesn't work when I
get rid of the second line.
var accService =
Components.classes["@mozilla.org/accessibilityService;1"].createInstance();
accService =
accService.QueryInterface(Components.interfaces.nsIAccessibilityService);
return (accService? accService.createXULCheckboxAccessible(this): null);

- Aaron
Whiteboard: ready for sr=
Dave, one more thing.

In the .idl files, I believe John had to change the interface names from XUL* to
nsIDOMXUL*

Is that okay?

Aaron
r=jgaunt for 46985,

we need clarification on a couple issues from hyatt -- outlined by aaron above
You want getService rather than createInstance, don't you?
So..... are we sr= worthy or not?
Yes.  sr=hyatt.  Please hold off until 0.9.5 though.  Keep the methods in the
IDL commented out too.  I like that.  Thanks.
There is an error in the spec.

tabindex

should be

tabIndex

In the IDL, you should make sure you use "tabIndex".
aaron: To improve the clarity and speed development I'd like to suggest the
following. Let's make this a tracking bug for all the individual XUL elements
and file individual bugs on them. This bug can handle any code that is used
across them all ( like nsIAccessibleProvider.idl ). We need to get that code in
right away to ease the process of developing the solutions for the different XUL
widgets.

There are going to be other dependancies ( like bug 96019 for radios ) dealing
with the implementation of the XUL 1.0 spec as well, and these may ( like radios
) be different for the different XUL elements.
Whiteboard: ready for sr= → Have r=/sr=. Need mac build additions
I'm going to check in these changes under this bug, and keep it open as a
tracking bug for other XUL widgets.
Changes necessary to build on Mac:

The file name nsIDOMXULLabeledControlElement.idl has been changed to
nsIDOMXULLabeledControlEl.idl because file names must be <31 chars long for Mac.

Also, these files need to be added to the Mac IDL project.
/dom/public/idl/xul/:
nsIDOMXULCheckboxElement.idl
nsIDOMXULControlElement.idl
nsIDOMXULLabeledControlEl.idl

/accessible/public
nsIAccessibleProvider.idl
Whiteboard: Have r=/sr=. Need mac build additions → checkbox checked in, bug is now for tracking
Depends on: 98781
Blocks: 12422
*** Bug 110699 has been marked as a duplicate of this bug. ***
Attachment #58379 - Attachment is obsolete: true
Bugs targeted at mozilla1.0 without the mozilla1.0 keyword moved to mozilla1.0.1 
(you can query for this string to delete spam or retrieve the list of bugs I've 
moved)
Target Milestone: mozilla1.0 → mozilla1.0.1
Keywords: nsbeta1
Please nominate the individual bugs that are getting fixed, not the meta bugs.
This should also go on the landing page for tracking
Keywords: nsbeta1meta
Progress report: we now have all of the XUL MSAA support necessary to make
Mozilla or Netscape accessible. Bug reports welcome.
Depends on: 131465
No longer depends on: 131465
This meta bug is no longer useful since we basically have XUL MSAA support
working other than a few flaws, which are filed in indivual bugs.
Status: ASSIGNED → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: