OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2005, 2006, 2008, 2009 Apple Inc. All rights reserved. | 2 * Copyright (C) 2005, 2006, 2008, 2009 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 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 1097 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1108 while (node) { | 1108 while (node) { |
1109 RefPtr<Node> next; | 1109 RefPtr<Node> next; |
1110 if (editingIgnoresContent(node.get())) { | 1110 if (editingIgnoresContent(node.get())) { |
1111 ASSERT(node == end.deprecatedNode() || !node->contains(end.deprecate
dNode())); | 1111 ASSERT(node == end.deprecatedNode() || !node->contains(end.deprecate
dNode())); |
1112 next = NodeTraversal::nextSkippingChildren(node.get()); | 1112 next = NodeTraversal::nextSkippingChildren(node.get()); |
1113 } else { | 1113 } else { |
1114 next = NodeTraversal::next(*node); | 1114 next = NodeTraversal::next(*node); |
1115 } | 1115 } |
1116 if (node->isHTMLElement() && nodeFullySelected(node.get(), start, end))
{ | 1116 if (node->isHTMLElement() && nodeFullySelected(node.get(), start, end))
{ |
1117 RefPtr<HTMLElement> elem = toHTMLElement(node); | 1117 RefPtr<HTMLElement> elem = toHTMLElement(node); |
1118 RefPtr<Node> prev = NodeTraversal::previousPostOrder(elem.get()); | 1118 RefPtr<Node> prev = NodeTraversal::previousPostOrder(*elem); |
1119 RefPtr<Node> next = NodeTraversal::next(*elem); | 1119 RefPtr<Node> next = NodeTraversal::next(*elem); |
1120 RefPtr<EditingStyle> styleToPushDown; | 1120 RefPtr<EditingStyle> styleToPushDown; |
1121 RefPtr<Node> childNode; | 1121 RefPtr<Node> childNode; |
1122 if (isStyledInlineElementToRemove(elem.get())) { | 1122 if (isStyledInlineElementToRemove(elem.get())) { |
1123 styleToPushDown = EditingStyle::create(); | 1123 styleToPushDown = EditingStyle::create(); |
1124 childNode = elem->firstChild(); | 1124 childNode = elem->firstChild(); |
1125 } | 1125 } |
1126 | 1126 |
1127 removeInlineStyleFromElement(style, elem.get(), RemoveIfNeeded, styl
eToPushDown.get()); | 1127 removeInlineStyleFromElement(style, elem.get(), RemoveIfNeeded, styl
eToPushDown.get()); |
1128 if (!elem->inDocument()) { | 1128 if (!elem->inDocument()) { |
(...skipping 417 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1546 String textToMove = nextText->data(); | 1546 String textToMove = nextText->data(); |
1547 insertTextIntoNode(childText, childText->length(), textToMove); | 1547 insertTextIntoNode(childText, childText->length(), textToMove); |
1548 removeNode(next); | 1548 removeNode(next); |
1549 // don't move child node pointer. it may want to merge with more text no
des. | 1549 // don't move child node pointer. it may want to merge with more text no
des. |
1550 } | 1550 } |
1551 | 1551 |
1552 updateStartEnd(newStart, newEnd); | 1552 updateStartEnd(newStart, newEnd); |
1553 } | 1553 } |
1554 | 1554 |
1555 } | 1555 } |
OLD | NEW |