Closed Bug 324846 Opened 19 years ago Closed 19 years ago

XUL links still being exposed as buttons

Categories

(Firefox :: Disability Access, defect)

x86
All
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: aaronlev, Assigned: aaronlev)

References

Details

(Keywords: access)

Attachments

(1 file, 1 obsolete file)

Apparently our fix for XUL links isn't working very well. The XUL links in the JS console and extension manager are being exposed as buttons, for example
Still need to test on Windows.
Assignee: nobody → aaronleventhal
Status: NEW → ASSIGNED
Attachment #209743 - Attachment is obsolete: true
Attachment #209887 - Flags: review?(parente)
Attachment #209887 - Flags: review?(parente) → review+
Attachment #209887 - Flags: superreview?(neil)
Comment on attachment 209887 [details] [diff] [review] nsXULLinkAccessible should inherit from nsLinkableAccessible >+ NS_IMETHOD Init(); It's not clear how this fits in.
Neil, we need to do CacheActionContent() in Init() instead of the constructor, because if we put the call in the nsLinkableAccessible constructor, believe it or not the wrong CacheActionContent() is called for an nsXULLinkAccessible. That's a virtual method. We want the nsXULLinkAccessible::CacheActionContent() to be called when the object is created, not nsLinkableAccessible::CacheActionContent(). Init() is always called for accessibles after they are created.
Comment on attachment 209887 [details] [diff] [review] nsXULLinkAccessible should inherit from nsLinkableAccessible Sorry, I was momentarily confused by the location of the nsLinkableAccessible class definition being in nsBaseWidgetAccessible.h
Attachment #209887 - Flags: superreview?(neil) → superreview+
(In reply to comment #4) >Neil, we need to do CacheActionContent() in Init() instead of the constructor, >because if we put the call in the nsLinkableAccessible constructor, believe it >or not the wrong CacheActionContent() is called for an nsXULLinkAccessible. Actually that behaviour is correct for C++ - you don't get to call nsXULLinkAccessible's virtual methods until its constructor which runs after all of its base classes and members have been constructed.
Checking in src/base/nsBaseWidgetAccessible.cpp; /cvsroot/mozilla/accessible/src/base/nsBaseWidgetAccessible.cpp,v <-- nsBaseWidgetAccessible.cpp new revision: 1.43; previous revision: 1.42 done Checking in src/base/nsBaseWidgetAccessible.h; /cvsroot/mozilla/accessible/src/base/nsBaseWidgetAccessible.h,v <-- nsBaseWidgetAccessible.h new revision: 1.18; previous revision: 1.17 done Checking in src/xul/nsXULTextAccessible.cpp; /cvsroot/mozilla/accessible/src/xul/nsXULTextAccessible.cpp,v <-- nsXULTextAccessible.cpp new revision: 1.20; previous revision: 1.19 done Checking in src/xul/nsXULTextAccessible.h; /cvsroot/mozilla/accessible/src/xul/nsXULTextAccessible.h,v <-- nsXULTextAccessible.h new revision: 1.15; previous revision: 1.14 done
Status: ASSIGNED → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
Depends on: 338272
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: