Changeset 60936 in webkit
- Timestamp:
- Jun 9, 2010 10:22:41 PM (14 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r60933 r60936 1 2010-06-09 Roland Steiner <rolandsteiner@chromium.org> 2 3 Reviewed by Ojan Vafai. 4 5 Bug 35632 - htmlediting.cpp : isEmptyTableCell() is incomplete 6 https://bugs.webkit.org/show_bug.cgi?id=35632 7 8 Correct isEmptyTableCell to check for the presence of other renderer 9 children. 10 11 Layout test checks that deleting a <br> within the last table cell works. 12 13 * editing/deleting/delete-br-in-last-table-cell-expected.txt: Added. 14 * editing/deleting/delete-br-in-last-table-cell.html: Added. 15 * platform/gtk/Skipped: 16 * platform/qt/Skipped: 17 1 18 2010-06-09 Qi Zhang <qi.2.zhang@nokia.com> 2 19 -
trunk/LayoutTests/platform/gtk/Skipped
r60840 r60936 745 745 editing/deleting/delete-br-011.html 746 746 editing/deleting/delete-br-012.html 747 editing/deleting/delete-br-in-last-table-cell.html 747 748 editing/deleting/delete-by-word-002.html 748 749 editing/deleting/delete-character-001.html -
trunk/LayoutTests/platform/qt/Skipped
r60933 r60936 2080 2080 editing/deleting/delete-br-012.html 2081 2081 editing/deleting/delete-br-013.html 2082 editing/deleting/delete-br-in-last-table-cell.html 2082 2083 editing/deleting/delete-character-001.html 2083 2084 editing/deleting/delete-first-list-item.html -
trunk/WebCore/ChangeLog
r60933 r60936 1 2010-06-09 Roland Steiner <rolandsteiner@chromium.org> 2 3 Reviewed by Ojan Vafai. 4 5 Bug 35632 - htmlediting.cpp : isEmptyTableCell() is incomplete 6 https://bugs.webkit.org/show_bug.cgi?id=35632 7 8 Correct isEmptyTableCell to check for the presence of other renderer 9 children. 10 11 Test: editing/deleting/delete-br-in-last-table-cell.html 12 13 * editing/htmlediting.cpp: 14 (WebCore::isEmptyTableCell): 15 1 16 2010-06-09 Qi Zhang <qi.2.zhang@nokia.com> 2 17 -
trunk/WebCore/editing/htmlediting.cpp
r60418 r60936 870 870 bool isEmptyTableCell(const Node* node) 871 871 { 872 return node && node->renderer() && (node->renderer()->isTableCell() || (node->renderer()->isBR() && node->parentNode()->renderer() && node->parentNode()->renderer()->isTableCell())); 872 // Returns true IFF the passed in node is one of: 873 // .) a table cell with no children, 874 // .) a table cell with a single BR child, and which has no other child renderers, including :before and :after renderers 875 // .) the BR child of such a table cell 876 877 // Find rendered node 878 while (node && !node->renderer()) 879 node = node->parent(); 880 if (!node) 881 return false; 882 883 // Make sure the rendered node is a table cell or <br>. 884 // If it's a <br>, then the parent node has to be a table cell. 885 RenderObject* renderer = node->renderer(); 886 if (renderer->isBR()) { 887 renderer = renderer->parent(); 888 if (!renderer) 889 return false; 890 } 891 if (!renderer->isTableCell()) 892 return false; 893 894 // Check that the table cell contains no child renderers except for perhaps a single <br>. 895 RenderObject* childRenderer = renderer->firstChild(); 896 if (!childRenderer) 897 return true; 898 if (!childRenderer->isBR()) 899 return false; 900 return !childRenderer->nextSibling(); 873 901 } 874 902
Note: See TracChangeset
for help on using the changeset viewer.