Reviewed by Hyatt
authorkocienda <kocienda@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 12 Oct 2004 23:25:44 +0000 (23:25 +0000)
committerkocienda <kocienda@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 12 Oct 2004 23:25:44 +0000 (23:25 +0000)
commitf4a90eff262218ffdbcf21ab05b59bc4d85e9a28
treee25b7a8091fc2a01858b30f46e43909c917eab22
parentf9bd8242dd5d8d677434e3f1d536ae72e4f0aa98
    Reviewed by Hyatt

        Fix for this bug:

        <rdar://problem/3836986> Delete code removes elements of table structure; can result in very broken-looking web pages

        * khtml/editing/htmlediting.cpp:
        (khtml::isTableStructureNode): New helper. Determines whether a node is a table cell,
        row, section, or column.
        (khtml::CompositeEditCommand::removeFullySelectedNode): New helper that recurses into elements
        of table structure when doing deletes, rather than deleting the structure elements themselves.
        (khtml::DeleteSelectionCommand::moveNodesAfterNode): Do not move content between elements
        of table structure. We may want to revisit this some day, but this seems like the best behavior
        to me now.
        (khtml::DeleteSelectionCommand::doApply): Call removeFullySelectedNode instead of removeNode
        where needed.
        * khtml/editing/htmlediting.h: Add declarations for new functions.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@7822 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebCore/ChangeLog-2005-08-23
WebCore/khtml/editing/htmlediting.cpp
WebCore/khtml/editing/htmlediting.h