| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * Copyright (C) 2005, 2008 Apple Inc. All rights reserved. | 2  * Copyright (C) 2005, 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  * 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 38 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 49     ASSERT(m_offset > 0); | 49     ASSERT(m_offset > 0); | 
| 50     ASSERT(m_offset < m_text2->length()); | 50     ASSERT(m_offset < m_text2->length()); | 
| 51 } | 51 } | 
| 52 | 52 | 
| 53 void SplitTextNodeCommand::doApply() | 53 void SplitTextNodeCommand::doApply() | 
| 54 { | 54 { | 
| 55     ContainerNode* parent = m_text2->parentNode(); | 55     ContainerNode* parent = m_text2->parentNode(); | 
| 56     if (!parent || !parent->rendererIsEditable()) | 56     if (!parent || !parent->rendererIsEditable()) | 
| 57         return; | 57         return; | 
| 58 | 58 | 
| 59     String prefixText = m_text2->substringData(0, m_offset, IGNORE_EXCEPTION_STA
     TE); | 59     String prefixText = m_text2->substringData(0, m_offset, IGNORE_EXCEPTION); | 
| 60     if (prefixText.isEmpty()) | 60     if (prefixText.isEmpty()) | 
| 61         return; | 61         return; | 
| 62 | 62 | 
| 63     m_text1 = Text::create(document(), prefixText); | 63     m_text1 = Text::create(document(), prefixText); | 
| 64     ASSERT(m_text1); | 64     ASSERT(m_text1); | 
| 65     document()->markers()->copyMarkers(m_text2.get(), 0, m_offset, m_text1.get()
     , 0); | 65     document()->markers()->copyMarkers(m_text2.get(), 0, m_offset, m_text1.get()
     , 0); | 
| 66 | 66 | 
| 67     insertText1AndTrimText2(); | 67     insertText1AndTrimText2(); | 
| 68 } | 68 } | 
| 69 | 69 | 
| 70 void SplitTextNodeCommand::doUnapply() | 70 void SplitTextNodeCommand::doUnapply() | 
| 71 { | 71 { | 
| 72     if (!m_text1 || !m_text1->rendererIsEditable()) | 72     if (!m_text1 || !m_text1->rendererIsEditable()) | 
| 73         return; | 73         return; | 
| 74 | 74 | 
| 75     ASSERT(m_text1->document() == document()); | 75     ASSERT(m_text1->document() == document()); | 
| 76 | 76 | 
| 77     String prefixText = m_text1->data(); | 77     String prefixText = m_text1->data(); | 
| 78 | 78 | 
| 79     m_text2->insertData(0, prefixText, ASSERT_NO_EXCEPTION_STATE); | 79     m_text2->insertData(0, prefixText, ASSERT_NO_EXCEPTION); | 
| 80 | 80 | 
| 81     document()->markers()->copyMarkers(m_text1.get(), 0, prefixText.length(), m_
     text2.get(), 0); | 81     document()->markers()->copyMarkers(m_text1.get(), 0, prefixText.length(), m_
     text2.get(), 0); | 
| 82     m_text1->remove(ASSERT_NO_EXCEPTION_STATE); | 82     m_text1->remove(ASSERT_NO_EXCEPTION); | 
| 83 } | 83 } | 
| 84 | 84 | 
| 85 void SplitTextNodeCommand::doReapply() | 85 void SplitTextNodeCommand::doReapply() | 
| 86 { | 86 { | 
| 87     if (!m_text1 || !m_text2) | 87     if (!m_text1 || !m_text2) | 
| 88         return; | 88         return; | 
| 89 | 89 | 
| 90     ContainerNode* parent = m_text2->parentNode(); | 90     ContainerNode* parent = m_text2->parentNode(); | 
| 91     if (!parent || !parent->rendererIsEditable()) | 91     if (!parent || !parent->rendererIsEditable()) | 
| 92         return; | 92         return; | 
| (...skipping 12 matching lines...) Expand all  Loading... | 
| 105 | 105 | 
| 106 #ifndef NDEBUG | 106 #ifndef NDEBUG | 
| 107 void SplitTextNodeCommand::getNodesInCommand(HashSet<Node*>& nodes) | 107 void SplitTextNodeCommand::getNodesInCommand(HashSet<Node*>& nodes) | 
| 108 { | 108 { | 
| 109     addNodeAndDescendants(m_text1.get(), nodes); | 109     addNodeAndDescendants(m_text1.get(), nodes); | 
| 110     addNodeAndDescendants(m_text2.get(), nodes); | 110     addNodeAndDescendants(m_text2.get(), nodes); | 
| 111 } | 111 } | 
| 112 #endif | 112 #endif | 
| 113 | 113 | 
| 114 } // namespace WebCore | 114 } // namespace WebCore | 
| OLD | NEW | 
|---|