Closed
Bug 799133
Opened 12 years ago
Closed 12 years ago
certain web sites miss focus event on reload
Categories
(Core :: Disability Access APIs, defect)
Core
Disability Access APIs
Tracking
()
RESOLVED
FIXED
People
(Reporter: surkov, Assigned: surkov)
References
(Blocks 1 open bug)
Details
(Keywords: access, Whiteboard: [leave open])
Attachments
(1 file)
(deleted),
patch
|
tbsaunde
:
review+
|
Details | Diff | Splinter Review |
I was reported about http://www.freedomscientific.com. Hitting reload doesn't make a focus. The problem here we receive DOM focus event for document a little bit early than anything is loaded into the document. Obviously this is timing issue but due to some reason it happens on fs site permanently (I'm not aware of other examples). We don't create accessible document (because of bug 612830) and therefore we miss the focus event.
Fixing bug 612830 should fix this one.
Attachment #669171 -
Flags: review?(trev.saunders)
Assignee | ||
Updated•12 years ago
|
Assignee: nobody → surkov.alexander
Comment 1•12 years ago
|
||
Comment on attachment 669171 [details] [diff] [review]
add logging reveling the problem
> LogPresShell(nsIDocument* aDocumentNode)
> {
> nsIPresShell* ps = aDocumentNode->GetShell();
>- printf("presshell: %p", static_cast<void*>(ps));
>+ printf("presshell: %p, %s destroying", static_cast<void*>(ps),
>+ (ps->IsDestroying() ? "" : "not"));
maybe "is" instead of "" to be more clear
>+logging::Document(DocAccessible* aDocument)
>+{
>+ printf(" Document: %p, document node: %p\n",
>+ static_cast<void*>(aDocument),
>+ static_cast<void*>(aDocument->GetDocumentNode()));
>+
>+ printf(" Document ");
>+ LogDocURI(static_cast<nsIDocument*>(aDocument->GetDocumentNode()));
why is cast needed?
> logging::AccessibleNNode(const char* aDescr, nsINode* aNode)
> {
> DocAccessible* document =
> GetAccService()->GetDocAccessible(aNode->OwnerDoc());
>
> if (document) {
> Accessible* accessible = document->GetAccessible(aNode);
> if (accessible) {
> AccessibleNNode(aDescr, accessible);
> return;
> }
> }
>
>- nsAutoCString nodeDescr("Not accessible ");
>+ nsAutoCString nodeDescr("[not accessible] ");
> nodeDescr.Append(aDescr);
> Node(nodeDescr.get(), aNode);
>+
>+ if (document) {
>+ Document(document);
>+ return;
>+ }
>+
>+ printf(" [contained by document]:\n");
non accessible document?
Attachment #669171 -
Flags: review?(trev.saunders) → review+
Assignee | ||
Comment 2•12 years ago
|
||
landed with Trevor's comments fixed http://hg.mozilla.org/integration/mozilla-inbound/rev/b7d112dee89c
Whiteboard: [leave open]
Comment 3•12 years ago
|
||
Assignee | ||
Comment 4•12 years ago
|
||
it's no longer an issue after bug 612830 was fixed.
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•