| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2 * Copyright (C) 2008 Apple Inc. All rights reserved. | 2 * Copyright (C) 2008 Apple Inc. All rights reserved. | 
| 3 * | 3 * | 
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without | 
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions | 
| 6 * are met: | 6 * are met: | 
| 7 * | 7 * | 
| 8 * 1.  Redistributions of source code must retain the above copyright | 8 * 1.  Redistributions of source code must retain the above copyright | 
| 9 *     notice, this list of conditions and the following disclaimer. | 9 *     notice, this list of conditions and the following disclaimer. | 
| 10 * 2.  Redistributions in binary form must reproduce the above copyright | 10 * 2.  Redistributions in binary form must reproduce the above copyright | 
| (...skipping 370 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 381     // The HTML element should not be exposed as an element. That's what the Ren
      derView element does. | 381     // The HTML element should not be exposed as an element. That's what the Ren
      derView element does. | 
| 382     if (isHTMLHtmlElement(node)) | 382     if (isHTMLHtmlElement(node)) | 
| 383         return IgnoredRole; | 383         return IgnoredRole; | 
| 384 | 384 | 
| 385     if (node && node->hasTagName(iframeTag)) | 385     if (node && node->hasTagName(iframeTag)) | 
| 386         return IframeRole; | 386         return IframeRole; | 
| 387 | 387 | 
| 388     if (isEmbeddedObject()) | 388     if (isEmbeddedObject()) | 
| 389         return EmbeddedObjectRole; | 389         return EmbeddedObjectRole; | 
| 390 | 390 | 
|  | 391     if (node && node->hasTagName(figureTag)) | 
|  | 392         return FigureRole; | 
|  | 393 | 
| 391     // There should only be one banner/contentInfo per page. If header/footer ar
      e being used within an article or section | 394     // There should only be one banner/contentInfo per page. If header/footer ar
      e being used within an article or section | 
| 392     // then it should not be exposed as whole page's banner/contentInfo | 395     // then it should not be exposed as whole page's banner/contentInfo | 
| 393     if (node && node->hasTagName(headerTag) && !isDescendantOfElementType(articl
      eTag) && !isDescendantOfElementType(sectionTag)) | 396     if (node && node->hasTagName(headerTag) && !isDescendantOfElementType(articl
      eTag) && !isDescendantOfElementType(sectionTag)) | 
| 394         return BannerRole; | 397         return BannerRole; | 
| 395     if (node && node->hasTagName(footerTag) && !isDescendantOfElementType(articl
      eTag) && !isDescendantOfElementType(sectionTag)) | 398     if (node && node->hasTagName(footerTag) && !isDescendantOfElementType(articl
      eTag) && !isDescendantOfElementType(sectionTag)) | 
| 396         return FooterRole; | 399         return FooterRole; | 
| 397 | 400 | 
| 398     if (isHTMLAnchorElement(node) && isClickable()) | 401     if (isHTMLAnchorElement(node) && isClickable()) | 
| 399         return LinkRole; | 402         return LinkRole; | 
| 400 | 403 | 
| (...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 668     if (hasContentEditableAttributeSet()) | 671     if (hasContentEditableAttributeSet()) | 
| 669         return false; | 672         return false; | 
| 670 | 673 | 
| 671     // List items play an important role in defining the structure of lists. The
      y should not be ignored. | 674     // List items play an important role in defining the structure of lists. The
      y should not be ignored. | 
| 672     if (roleValue() == ListItemRole) | 675     if (roleValue() == ListItemRole) | 
| 673         return false; | 676         return false; | 
| 674 | 677 | 
| 675     if (roleValue() == DialogRole) | 678     if (roleValue() == DialogRole) | 
| 676         return false; | 679         return false; | 
| 677 | 680 | 
|  | 681     if (roleValue() == FigureRole) | 
|  | 682         return false; | 
|  | 683 | 
| 678     // if this element has aria attributes on it, it should not be ignored. | 684     // if this element has aria attributes on it, it should not be ignored. | 
| 679     if (supportsARIAAttributes()) | 685     if (supportsARIAAttributes()) | 
| 680         return false; | 686         return false; | 
| 681 | 687 | 
| 682     // <span> tags are inline tags and not meant to convey information if they h
      ave no other aria | 688     // <span> tags are inline tags and not meant to convey information if they h
      ave no other aria | 
| 683     // information on them. If we don't ignore them, they may emit signals expec
      ted to come from | 689     // information on them. If we don't ignore them, they may emit signals expec
      ted to come from | 
| 684     // their parent. In addition, because included spans are GroupRole objects, 
      and GroupRole | 690     // their parent. In addition, because included spans are GroupRole objects, 
      and GroupRole | 
| 685     // objects are often containers with meaningful information, the inclusion o
      f a span can have | 691     // objects are often containers with meaningful information, the inclusion o
      f a span can have | 
| 686     // the side effect of causing the immediate parent accessible to be ignored.
       This is especially | 692     // the side effect of causing the immediate parent accessible to be ignored.
       This is especially | 
| 687     // problematic for platforms which have distinct roles for textual block ele
      ments. | 693     // problematic for platforms which have distinct roles for textual block ele
      ments. | 
| (...skipping 1626 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 2314         if (label && label->renderer()) { | 2320         if (label && label->renderer()) { | 
| 2315             LayoutRect labelRect = axObjectCache()->getOrCreate(label)->elementR
      ect(); | 2321             LayoutRect labelRect = axObjectCache()->getOrCreate(label)->elementR
      ect(); | 
| 2316             result.unite(labelRect); | 2322             result.unite(labelRect); | 
| 2317         } | 2323         } | 
| 2318     } | 2324     } | 
| 2319 | 2325 | 
| 2320     return result; | 2326     return result; | 
| 2321 } | 2327 } | 
| 2322 | 2328 | 
| 2323 } // namespace blink | 2329 } // namespace blink | 
| OLD | NEW | 
|---|