[Webkit-unassigned] [Bug 50126] Fallback content in canvas element not focusable
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Feb 11 16:41:00 PST 2011
https://bugs.webkit.org/show_bug.cgi?id=50126
--- Comment #11 from chris fleizach <cfleizach at apple.com> 2011-02-11 16:41:00 PST ---
(In reply to comment #8)
> (From update of attachment 81856 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=81856&action=review
>
> >> Source/WebCore/accessibility/AccessibilityRenderObject.cpp:3283
> >>
> >
> > The default for allowing children is true. I don't think canvas fits any of the roles that don't allow children, so it seems this is not necessary
>
> The layout test doesn't pass without this line. A canvas has a roleValue of ImageRole, so the switch statement immediately below this causes it to return false (that it's not allowed to have children).
>
> Is there a better role for canvas? Should we create a new role (internally) but then map it to Image at the platform-specific accessibility API level?
>
I should have guessed canvas defaults to an image. I think that we should have a new internal Canvas role that defaults to the Group role on most platforms. I know on the mac, that if an image has a child, VoiceOver will not access it correctly.
> >> Source/WebCore/html/HTMLFormControlElement.cpp:243
> >> return false;
> >
> > Instead of removing the size check, which may be valid in other contexts, should you just add another check to determine if its size is empty and it's not a child of a canvas area.
>
> Good idea, done.
>
> >> Source/WebCore/rendering/RenderObject.cpp:1317
> >> }
> >
> > Might be a good idea to have a comment why this changed
>
> The issue is that clippedOverflowRectForRepaint(repaintContainer) tries to access the containing block and crashes if it doesn't exist. A child of a RenderHTMLCanvas doesn't necessarily have a containing block. Luckily repainting isn't needed for that case, either, so it suffices to just check whether containingBlock() exists.
>
> I restructured it slightly and added a comment, how's this?
Looks good. Need to fix the style issue as well
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list