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 20 matching lines...) Expand all Loading... |
31 | 31 |
32 #include "core/layout/LayoutTableRow.h" | 32 #include "core/layout/LayoutTableRow.h" |
33 #include "modules/accessibility/AXObjectCacheImpl.h" | 33 #include "modules/accessibility/AXObjectCacheImpl.h" |
34 #include "modules/accessibility/AXTableCell.h" | 34 #include "modules/accessibility/AXTableCell.h" |
35 | 35 |
36 | 36 |
37 namespace blink { | 37 namespace blink { |
38 | 38 |
39 using namespace HTMLNames; | 39 using namespace HTMLNames; |
40 | 40 |
41 AXTableRow::AXTableRow(RenderObject* renderer, AXObjectCacheImpl* axObjectCache) | 41 AXTableRow::AXTableRow(LayoutObject* renderer, AXObjectCacheImpl* axObjectCache) |
42 : AXRenderObject(renderer, axObjectCache) | 42 : AXRenderObject(renderer, axObjectCache) |
43 { | 43 { |
44 } | 44 } |
45 | 45 |
46 AXTableRow::~AXTableRow() | 46 AXTableRow::~AXTableRow() |
47 { | 47 { |
48 } | 48 } |
49 | 49 |
50 PassRefPtr<AXTableRow> AXTableRow::create(RenderObject* renderer, AXObjectCacheI
mpl* axObjectCache) | 50 PassRefPtr<AXTableRow> AXTableRow::create(LayoutObject* renderer, AXObjectCacheI
mpl* axObjectCache) |
51 { | 51 { |
52 return adoptRef(new AXTableRow(renderer, axObjectCache)); | 52 return adoptRef(new AXTableRow(renderer, axObjectCache)); |
53 } | 53 } |
54 | 54 |
55 AccessibilityRole AXTableRow::determineAccessibilityRole() | 55 AccessibilityRole AXTableRow::determineAccessibilityRole() |
56 { | 56 { |
57 if (!isTableRow()) | 57 if (!isTableRow()) |
58 return AXRenderObject::determineAccessibilityRole(); | 58 return AXRenderObject::determineAccessibilityRole(); |
59 | 59 |
60 if ((m_ariaRole = determineAriaRoleAttribute()) != UnknownRole) | 60 if ((m_ariaRole = determineAriaRoleAttribute()) != UnknownRole) |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
108 | 108 |
109 AccessibilityChildrenVector rowChildren = children(); | 109 AccessibilityChildrenVector rowChildren = children(); |
110 if (!rowChildren.size()) | 110 if (!rowChildren.size()) |
111 return 0; | 111 return 0; |
112 | 112 |
113 // check the first element in the row to see if it is a TH element | 113 // check the first element in the row to see if it is a TH element |
114 AXObject* cell = rowChildren[0].get(); | 114 AXObject* cell = rowChildren[0].get(); |
115 if (!cell->isTableCell()) | 115 if (!cell->isTableCell()) |
116 return 0; | 116 return 0; |
117 | 117 |
118 RenderObject* cellRenderer = toAXTableCell(cell)->renderer(); | 118 LayoutObject* cellRenderer = toAXTableCell(cell)->renderer(); |
119 if (!cellRenderer) | 119 if (!cellRenderer) |
120 return 0; | 120 return 0; |
121 | 121 |
122 Node* cellNode = cellRenderer->node(); | 122 Node* cellNode = cellRenderer->node(); |
123 if (!cellNode || !cellNode->hasTagName(thTag)) | 123 if (!cellNode || !cellNode->hasTagName(thTag)) |
124 return 0; | 124 return 0; |
125 | 125 |
126 return cell; | 126 return cell; |
127 } | 127 } |
128 | 128 |
129 void AXTableRow::headerObjectsForRow(AccessibilityChildrenVector& headers) | 129 void AXTableRow::headerObjectsForRow(AccessibilityChildrenVector& headers) |
130 { | 130 { |
131 if (!m_renderer || !m_renderer->isTableRow()) | 131 if (!m_renderer || !m_renderer->isTableRow()) |
132 return; | 132 return; |
133 | 133 |
134 AccessibilityChildrenVector rowChildren = children(); | 134 AccessibilityChildrenVector rowChildren = children(); |
135 unsigned childrenCount = rowChildren.size(); | 135 unsigned childrenCount = rowChildren.size(); |
136 for (unsigned i = 0; i < childrenCount; i++) { | 136 for (unsigned i = 0; i < childrenCount; i++) { |
137 AXObject* cell = rowChildren[i].get(); | 137 AXObject* cell = rowChildren[i].get(); |
138 if (!cell->isTableCell()) | 138 if (!cell->isTableCell()) |
139 continue; | 139 continue; |
140 | 140 |
141 if (toAXTableCell(cell)->scanToDecideHeaderRole() == RowHeaderRole) | 141 if (toAXTableCell(cell)->scanToDecideHeaderRole() == RowHeaderRole) |
142 headers.append(cell); | 142 headers.append(cell); |
143 } | 143 } |
144 } | 144 } |
145 | 145 |
146 } // namespace blink | 146 } // namespace blink |
OLD | NEW |