summaryrefslogtreecommitdiffstats
path: root/WebCore/accessibility/AccessibilityTableCell.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/accessibility/AccessibilityTableCell.cpp')
-rw-r--r--WebCore/accessibility/AccessibilityTableCell.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/WebCore/accessibility/AccessibilityTableCell.cpp b/WebCore/accessibility/AccessibilityTableCell.cpp
index 4d7cf5a..7674cb8 100644
--- a/WebCore/accessibility/AccessibilityTableCell.cpp
+++ b/WebCore/accessibility/AccessibilityTableCell.cpp
@@ -67,7 +67,7 @@ AccessibilityObject* AccessibilityTableCell::parentTable() const
if (!m_renderer || !m_renderer->isTableCell())
return false;
- return axObjectCache()->getOrCreate(static_cast<RenderTableCell*>(m_renderer)->table());
+ return axObjectCache()->getOrCreate(toRenderTableCell(m_renderer)->table());
}
bool AccessibilityTableCell::isTableCell() const
@@ -92,7 +92,7 @@ void AccessibilityTableCell::rowIndexRange(pair<int, int>& rowRange)
if (!m_renderer || !m_renderer->isTableCell())
return;
- RenderTableCell* renderCell = static_cast<RenderTableCell*>(m_renderer);
+ RenderTableCell* renderCell = toRenderTableCell(m_renderer);
rowRange.first = renderCell->row();
rowRange.second = renderCell->rowSpan();
@@ -122,7 +122,7 @@ void AccessibilityTableCell::columnIndexRange(pair<int, int>& columnRange)
if (!m_renderer || !m_renderer->isTableCell())
return;
- RenderTableCell* renderCell = static_cast<RenderTableCell*>(m_renderer);
+ RenderTableCell* renderCell = toRenderTableCell(m_renderer);
columnRange.first = renderCell->col();
columnRange.second = renderCell->colSpan();
}
@@ -134,8 +134,14 @@ AccessibilityObject* AccessibilityTableCell::titleUIElement() const
// case when the table is not appearing as an AXTable.)
if (isTableCell() || !m_renderer || !m_renderer->isTableCell())
return 0;
+
+ // Table cells that are th cannot have title ui elements, since by definition
+ // they are title ui elements
+ Node* node = m_renderer->node();
+ if (node && node->hasTagName(thTag))
+ return 0;
- RenderTableCell* renderCell = static_cast<RenderTableCell*>(m_renderer);
+ RenderTableCell* renderCell = toRenderTableCell(m_renderer);
// If this cell is in the first column, there is no need to continue.
int col = renderCell->col();