LayoutTests:
authorjusting <justing@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 20 Apr 2007 00:08:50 +0000 (00:08 +0000)
committerjusting <justing@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 20 Apr 2007 00:08:50 +0000 (00:08 +0000)
commitededa446f598b2fb0391c73de57b74fb66af156c
treedff25bab63baf4fa66bd126c5389ef4fb9d5ecb5
parent1a83f66eaca962d7cdf9b7dd07eabab9f0612060
LayoutTests:

        Reviewed by harrison

        * editing/execCommand/5144139-1-expected.checksum: Added.
        * editing/execCommand/5144139-1-expected.png: Added.
        * editing/execCommand/5144139-1-expected.txt: Added.
        * editing/execCommand/5144139-1.html: Added.

WebCore:

        Reviewed by harrison

        Fixes some issues found while investigating:
        <rdar://problem/5144139> On delete, <BR> inserted into non-editable ToDo <TABLE> element

        Move the code to handle inserting content before/after
        tables for [table, 0/max] to insertNodeAt, so that
        all insertions get it, not just some.
        Changed insertNodeAt to take in a position instead of a
        node and an offset.

        * editing/CompositeEditCommand.cpp:
        (WebCore::CompositeEditCommand::insertNodeAt):
        (WebCore::CompositeEditCommand::insertNodeAtTabSpanPosition):
        (WebCore::CompositeEditCommand::insertBlockPlaceholder):
        (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
        If paragrahStart.node() is an atomic node, insertNodeAt can handle
        insertion, we don't need to special case it.
        (WebCore::CompositeEditCommand::moveParagraphs):
        (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
        * editing/CompositeEditCommand.h:
        * editing/DeleteSelectionCommand.cpp:
        (WebCore::DeleteSelectionCommand::mergeParagraphs):
        (WebCore::DeleteSelectionCommand::doApply):
        * editing/FormatBlockCommand.cpp:
        (WebCore::FormatBlockCommand::doApply):
        * editing/IndentOutdentCommand.cpp:
        (WebCore::IndentOutdentCommand::indentRegion):
        (WebCore::IndentOutdentCommand::outdentParagraph):
        * editing/InsertLineBreakCommand.cpp:
        (WebCore::InsertLineBreakCommand::doApply):
        * editing/InsertListCommand.cpp:
        (WebCore::InsertListCommand::doApply):
        * editing/InsertParagraphSeparatorCommand.cpp:
        (WebCore::InsertParagraphSeparatorCommand::doApply):
        * editing/InsertTextCommand.cpp:
        (WebCore::InsertTextCommand::prepareForTextInsertion): Removed some
        dead code that handled insertion at non-editable positions.
        (WebCore::InsertTextCommand::insertTab):
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplaceSelectionCommand::doApply):
        (WebCore::ReplaceSelectionCommand::insertNodeAtAndUpdateNodesInserted):
        * editing/ReplaceSelectionCommand.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20960 268f45cc-cd09-0410-ab3c-d52691b4dbfc
17 files changed:
LayoutTests/ChangeLog
LayoutTests/editing/execCommand/5144139-1-expected.checksum [new file with mode: 0644]
LayoutTests/editing/execCommand/5144139-1-expected.png [new file with mode: 0644]
LayoutTests/editing/execCommand/5144139-1-expected.txt [new file with mode: 0644]
LayoutTests/editing/execCommand/5144139-1.html [new file with mode: 0644]
WebCore/ChangeLog
WebCore/editing/CompositeEditCommand.cpp
WebCore/editing/CompositeEditCommand.h
WebCore/editing/DeleteSelectionCommand.cpp
WebCore/editing/FormatBlockCommand.cpp
WebCore/editing/IndentOutdentCommand.cpp
WebCore/editing/InsertLineBreakCommand.cpp
WebCore/editing/InsertListCommand.cpp
WebCore/editing/InsertParagraphSeparatorCommand.cpp
WebCore/editing/InsertTextCommand.cpp
WebCore/editing/ReplaceSelectionCommand.cpp
WebCore/editing/ReplaceSelectionCommand.h