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 355 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
366 | 366 |
367 ASSERT(!m_haveChildren); | 367 ASSERT(!m_haveChildren); |
368 | 368 |
369 m_haveChildren = true; | 369 m_haveChildren = true; |
370 if (!m_renderer || !m_renderer->isTable()) | 370 if (!m_renderer || !m_renderer->isTable()) |
371 return; | 371 return; |
372 | 372 |
373 RenderTable* table = toRenderTable(m_renderer); | 373 RenderTable* table = toRenderTable(m_renderer); |
374 AXObjectCacheImpl* axCache = axObjectCache(); | 374 AXObjectCacheImpl* axCache = axObjectCache(); |
375 | 375 |
376 // Add caption | |
377 if (HTMLTableElement* tableElement = toHTMLTableElement(table->node())) { | |
378 if (HTMLTableCaptionElement* caption = tableElement->caption()) { | |
379 AXObject* captionObject = axCache->getOrCreate(caption); | |
380 if (!captionObject->accessibilityIsIgnored()) | |
381 m_children.append(captionObject); | |
382 } | |
383 } | |
384 | |
385 // Go through all the available sections to pull out the rows and add them a
s children. | 376 // Go through all the available sections to pull out the rows and add them a
s children. |
386 table->recalcSectionsIfNeeded(); | 377 table->recalcSectionsIfNeeded(); |
387 RenderTableSection* tableSection = table->topSection(); | 378 RenderTableSection* tableSection = table->topSection(); |
388 if (!tableSection) | 379 if (!tableSection) |
389 return; | 380 return; |
390 | 381 |
391 RenderTableSection* initialTableSection = tableSection; | 382 RenderTableSection* initialTableSection = tableSection; |
392 while (tableSection) { | 383 while (tableSection) { |
393 | 384 |
394 HashSet<AXObject*> appendedRows; | 385 HashSet<AXObject*> appendedRows; |
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
579 } | 570 } |
580 | 571 |
581 // try the standard | 572 // try the standard |
582 if (title.isEmpty()) | 573 if (title.isEmpty()) |
583 title = AXRenderObject::title(); | 574 title = AXRenderObject::title(); |
584 | 575 |
585 return title; | 576 return title; |
586 } | 577 } |
587 | 578 |
588 } // namespace blink | 579 } // namespace blink |
OLD | NEW |