Closed Bug 208898 Opened 22 years ago Closed 21 years ago

In-process accessibility clients need XPCOM notification of newly initiialized doc views

Categories

(Core :: Disability Access APIs, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: aaronlev, Assigned: aaronlev)

Details

(Whiteboard: in-process-accessibility)

Attachments

(1 file, 1 obsolete file)

The closest way I can find to start the accessibility tree building process is to use nsIWebProgressListner, and wait for a StateChange of STATE_TRANSFERRING. However, 1) it's not a frozen interface and 2) it's a lot of code to listen for just that.
Attachment #125301 - Flags: review?(jst)
Comment on attachment 125301 [details] [diff] [review] Uses nsIObserverService to fire notification that new viewable document is ready I don't see a lot of users being interested in this notification, and assuming using nsIWebProgress works, I'd suggest going with that, even if it's not just a few lines of code to do that (assuming it's not pages and pages worth of code, which I doubt). r- for now, let me know if you strongly disagree.
Attachment #125301 - Flags: review?(jst) → review-
Johnny, the problem is that nsIWebProgress* are "under review". I doubt if they'll be frozen for 1.4.
Jst, bug 99639 is the bug to freeze the nsIWebProg* interfaces, but it's minused.
no, nsIWebProgress* won't be frozen for 1.4 ... maybe sometime in the future ;)
Attachment #126378 - Flags: review?(kyle.yuan)
Comment on attachment 126378 [details] [diff] [review] nsAccessibilityservice uses doc loader service to learn about new docs, and then generates accessibles and accessible events for them >+ const kRequiredFlags = STATE_IS_DOCUMENT|STATE_TRANSFERRING; iirc, STATE_IS_DOCUMENT|STATE_STOP would be the right event you want to check. Please double check with the guys who is familiar with this.
Kyle, I want STATE_TRANSFERRING, otherwise it won't create the accesible until the doc is fully finished loading. I want an event at the start of the load, and one at the end.
Kyle, STATE_TRANSFERRING is definitely what I want. It's always fired at the start of the load. However, STATE_START is too early because there is no document node yet. It is important to create the accessible early because the user can interact with the document before it finishes loading. The user can tab/scroll around and edit forms. All of these things can happen before the doc finishes loading and it is important to get the accessibility events for those things too.
Comment on attachment 126378 [details] [diff] [review] nsAccessibilityservice uses doc loader service to learn about new docs, and then generates accessibles and accessible events for them sorry, I was unable to access bugzilla for a while. r=kyle.
Attachment #126378 - Flags: review?(kyle.yuan) → review+
Comment on attachment 126378 [details] [diff] [review] nsAccessibilityservice uses doc loader service to learn about new docs, and then generates accessibles and accessible events for them No problem. Thanks Kyle. Seeking sr=jst
Attachment #126378 - Flags: superreview?(jst)
Comment on attachment 126378 [details] [diff] [review] nsAccessibilityservice uses doc loader service to learn about new docs, and then generates accessibles and accessible events for them - In nsAccessibilityService::OnStateChange(): + const kRequiredFlags = STATE_IS_DOCUMENT|STATE_TRANSFERRING; + if ((aStateFlags & kRequiredFlags ) != kRequiredFlags) { Be consistent with space-around-binary-operators, i.e. add spaces before and after '|' (makes it more readable too). sr=jst
Attachment #126378 - Flags: superreview?(jst) → superreview+
checked in
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Whiteboard: in-process-accessibility
Comment on attachment 126378 [details] [diff] [review] nsAccessibilityservice uses doc loader service to learn about new docs, and then generates accessibles and accessible events for them 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 #126378 - Flags: approval1.4.x?
Comment on attachment 126378 [details] [diff] [review] nsAccessibilityservice uses doc loader service to learn about new docs, and then generates accessibles and accessible events for them 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 #126378 - 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: