Closed Bug 300782 Opened 20 years ago Closed 20 years ago

No event fired when a frame's src changes, and new content is loaded

Categories

(Core :: Disability Access APIs, defect)

x86
All
defect
Not set
major

Tracking

()

RESOLVED FIXED

People

(Reporter: aaronlev, Assigned: aaronlev)

References

Details

(Keywords: access)

Attachments

(1 file)

This is one of the last major blockers for Firefox 1.1 accessibility adoption. We need to fire an event when just one frame in a frameset changes, so that the screen reader can reload the page.
A good example of the problem is at http://www.exactaudiocopy.org -- click on one of the links in nav bar and the main frame loads new content.
Comment on attachment 189390 [details] [diff] [review] Fire EVENT_REORDER on frame or iframe object when its content has finished loading >Index: accessible/src/base/nsAccessibilityService.cpp >@@ -182,28 +182,28 @@ NS_IMETHODIMP nsAccessibilityService::On >+ return NS_OK; // A frames or iframe has begun to load new content frame >Index: accessible/src/base/nsDocAccessible.cpp >@@ -1068,14 +1068,19 @@ NS_IMETHODIMP nsDocAccessible::Invalidat >+ // Don't go any higher than the root of the content or UI document chain bz and i aren't sure if this comment can ever be wrong. >Index: accessible/src/msaa/nsDocAccessibleWrap.cpp >@@ -404,19 +404,30 @@ void nsDocAccessibleWrap::DocLoadCallbac >+ // A frames or iframe has finished loading new content >+ NS_ASSERTION(docShell, "No docShell for docShellTreeItem"); hrm, an assertion i never expect to hit, strange. >- docAccessible->FireDocLoadingEvent(!(aStateFlags & STATE_TRANSFERRING)); >- return NS_OK; >+ return docAccessible->FireDocLoadingEvent(!(aStateFlags & STATE_START)); out of sleepy curiosity, does your caller care that you're now sometimes maybe throwing an exception?
Attachment #189390 - Flags: review?(timeless) → review+
(In reply to comment #3) > >Index: accessible/src/base/nsDocAccessible.cpp > >@@ -1068,14 +1068,19 @@ NS_IMETHODIMP nsDocAccessible::Invalidat > >+ // Don't go any higher than the root of the content or UI document chain > bz and i aren't sure if this comment can ever be wrong. Can you give more detail? > > >Index: accessible/src/msaa/nsDocAccessibleWrap.cpp > >@@ -404,19 +404,30 @@ void nsDocAccessibleWrap::DocLoadCallbac > >+ // A frames or iframe has finished loading new content > > >+ NS_ASSERTION(docShell, "No docShell for docShellTreeItem"); > hrm, an assertion i never expect to hit, strange. Well, you won't hit it, but it's not a bad thing to put -- self documenting no? > >- docAccessible->FireDocLoadingEvent(!(aStateFlags & STATE_TRANSFERRING)); > >- return NS_OK; > >+ return docAccessible->FireDocLoadingEvent(!(aStateFlags & STATE_START)); > > out of sleepy curiosity, does your caller care that you're now sometimes maybe > throwing an exception? Maybe. I'll return NS_OK instead.
Attachment #189390 - Flags: superreview?(bzbarsky)
Comment on attachment 189390 [details] [diff] [review] Fire EVENT_REORDER on frame or iframe object when its content has finished loading >Index: accessible/src/base/nsAccessibilityService.cpp >+ return NS_OK; // A frames or iframe has begun to load "frame" >Index: accessible/src/base/nsDocAccessible.cpp >+ // Don't go any higher than the root of the content or UI document chain I'm not sure what this comment is saying.... >+ containerAccessible = this; // At the root of UI or content And again. There can be all sorts of docshell trees other than "UI" and "content", in theory. In embedding apps especially. >Index: accessible/src/msaa/nsDocAccessibleWrap.cpp >+ // A frames or iframe has finished loading new content "frame" sr=bzbarsky with the comments fixed up.
Attachment #189390 - Flags: superreview?(bzbarsky) → superreview+
Comment on attachment 189390 [details] [diff] [review] Fire EVENT_REORDER on frame or iframe object when its content has finished loading Will fix the comments and the return value as asked.
Attachment #189390 - Flags: approval-aviary1.0.6?
Comment on attachment 189390 [details] [diff] [review] Fire EVENT_REORDER on frame or iframe object when its content has finished loading Will fix the comments and the return value as asked.
Attachment #189390 - Flags: approval1.8b4?
Comment on attachment 189390 [details] [diff] [review] Fire EVENT_REORDER on frame or iframe object when its content has finished loading This doesn't look like a security fix or a regression from a security fix, so I don't see the rationale for the approval-aviary1.0.6 request. If you meant to request that, please explain why.
Attachment #189390 - Flags: approval-aviary1.0.6? → approval-aviary1.0.6-
(In reply to comment #8) > (From update of attachment 189390 [details] [diff] [review] [edit]) > This doesn't look like a security fix or a regression from a security fix, so I > don't see the rationale for the approval-aviary1.0.6 request. If you meant to > request that, please explain why. > No. I hit the wrong flag. Then hit stop on the browser and cleared it and set the right one and resubmitted. I guess the second submit with the cleared flag didn't override the first submit's flag. They combined.
Attachment #189390 - Flags: approval1.8b4? → approval1.8b4+
Checking in accessible/src/base/nsAccessibilityService.cpp; /cvsroot/mozilla/accessible/src/base/nsAccessibilityService.cpp,v <-- nsAccessibilityService.cpp new revision: 1.148; previous revision: 1.147 done Checking in accessible/src/base/nsDocAccessible.cpp; /cvsroot/mozilla/accessible/src/base/nsDocAccessible.cpp,v <-- nsDocAccessible.cpp new revision: 1.67; previous revision: 1.66 done Checking in accessible/src/msaa/nsDocAccessibleWrap.cpp; /cvsroot/mozilla/accessible/src/msaa/nsDocAccessibleWrap.cpp,v <-- nsDocAccessibleWrap.cpp new revision: 1.30; previous revision: 1.29 done
Forgot to mark fixed.
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: