Changeset 135529 in webkit


Ignore:
Timestamp:
Nov 22, 2012, 9:34:36 AM (13 years ago)
Author:
Antti Koivisto
Message:

Merge EditingText into Text
https://bugs.webkit.org/show_bug.cgi?id=103060

Reviewed by Ryosuke Niwa.

Remove the EditingText class. Its only function beyond the regular Text is that it always creates a renderer.
It can be replaced with a bit.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/CDATASection.cpp:

(WebCore::CDATASection::CDATASection):

  • dom/Document.cpp:

(WebCore::Document::createEditingTextNode):

  • dom/Document.h:

(WebCore):
(Document):

  • dom/EditingText.cpp: Removed.
  • dom/EditingText.h: Removed.
  • dom/Node.h:

(WebCore::Node::hasName):
(WebCore::Node::isEditingText):
(WebCore::Node::setHasName):

Use the same bit as hasName() which is Element specific.

  • dom/Text.cpp:

(WebCore::Text::create):
(WebCore):
(WebCore::Text::createEditingText):
(WebCore::Text::rendererIsNeeded):

  • dom/Text.h:

(Text):
(WebCore::Text::Text):

  • editing/Editor.cpp:
  • editing/InsertTextCommand.cpp:
  • editing/ReplaceSelectionCommand.cpp:
  • editing/htmlediting.cpp:
  • editing/mac/EditorMac.mm:
  • page/Frame.cpp:
Location:
trunk/Source/WebCore
Files:
2 deleted
22 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/CMakeLists.txt

    r135410 r135529  
    11471147    dom/DocumentType.cpp
    11481148    dom/DynamicNodeList.cpp
    1149     dom/EditingText.cpp
    11501149    dom/Element.cpp
    11511150    dom/ElementAttributeData.cpp
  • trunk/Source/WebCore/ChangeLog

    r135518 r135529  
     12012-11-22  Antti Koivisto  <antti@apple.com>
     2
     3        Merge EditingText into Text
     4        https://bugs.webkit.org/show_bug.cgi?id=103060
     5
     6        Reviewed by Ryosuke Niwa.
     7
     8        Remove the EditingText class. Its only function beyond the regular Text is that it always creates a renderer.
     9        It can be replaced with a bit.
     10
     11        * CMakeLists.txt:
     12        * GNUmakefile.list.am:
     13        * Target.pri:
     14        * WebCore.gypi:
     15        * WebCore.vcproj/WebCore.vcproj:
     16        * WebCore.xcodeproj/project.pbxproj:
     17        * dom/CDATASection.cpp:
     18        (WebCore::CDATASection::CDATASection):
     19        * dom/Document.cpp:
     20        (WebCore::Document::createEditingTextNode):
     21        * dom/Document.h:
     22        (WebCore):
     23        (Document):
     24        * dom/EditingText.cpp: Removed.
     25        * dom/EditingText.h: Removed.
     26        * dom/Node.h:
     27        (WebCore::Node::hasName):
     28        (WebCore::Node::isEditingText):
     29        (WebCore::Node::setHasName):
     30       
     31            Use the same bit as hasName() which is Element specific.
     32
     33        * dom/Text.cpp:
     34        (WebCore::Text::create):
     35        (WebCore):
     36        (WebCore::Text::createEditingText):
     37        (WebCore::Text::rendererIsNeeded):
     38        * dom/Text.h:
     39        (Text):
     40        (WebCore::Text::Text):
     41        * editing/Editor.cpp:
     42        * editing/InsertTextCommand.cpp:
     43        * editing/ReplaceSelectionCommand.cpp:
     44        * editing/htmlediting.cpp:
     45        * editing/mac/EditorMac.mm:
     46        * page/Frame.cpp:
     47
    1482012-11-22  Eugene Klyuchnikov  <eustas.bug@gmail.com>
    249
  • trunk/Source/WebCore/GNUmakefile.list.am

    r135455 r135529  
    27752775        Source/WebCore/dom/DynamicNodeList.cpp \
    27762776        Source/WebCore/dom/DynamicNodeList.h \
    2777         Source/WebCore/dom/EditingText.cpp \
    2778         Source/WebCore/dom/EditingText.h \
    27792777        Source/WebCore/dom/Element.cpp \
    27802778        Source/WebCore/dom/Element.h \
  • trunk/Source/WebCore/Target.pri

    r135410 r135529  
    386386    dom/DatasetDOMStringMap.cpp \
    387387    dom/DynamicNodeList.cpp \
    388     dom/EditingText.cpp \
    389388    dom/Element.cpp \
    390389    dom/ElementAttributeData.cpp \
     
    15651564    dom/DatasetDOMStringMap.h \
    15661565    dom/DynamicNodeList.h \
    1567     dom/EditingText.h \
    15681566    dom/Element.h \
    15691567    dom/ElementShadow.h \
  • trunk/Source/WebCore/WebCore.gypi

    r135487 r135529  
    38423842            'dom/DynamicNodeList.cpp',
    38433843            'dom/DynamicNodeList.h',
    3844             'dom/EditingText.cpp',
    3845             'dom/EditingText.h',
    38463844            'dom/ElementShadow.cpp',
    38473845            'dom/Element.cpp',
  • trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj

    r135487 r135529  
    5107851078                                >
    5107951079                        </File>
    51080                         <File
    51081                                 RelativePath="..\dom\EditingText.cpp"
    51082                                 >
    51083                                 <FileConfiguration
    51084                                         Name="Debug|Win32"
    51085                                         ExcludedFromBuild="true"
    51086                                         >
    51087                                         <Tool
    51088                                                 Name="VCCLCompilerTool"
    51089                                         />
    51090                                 </FileConfiguration>
    51091                                 <FileConfiguration
    51092                                         Name="Release|Win32"
    51093                                         ExcludedFromBuild="true"
    51094                                         >
    51095                                         <Tool
    51096                                                 Name="VCCLCompilerTool"
    51097                                         />
    51098                                 </FileConfiguration>
    51099                                 <FileConfiguration
    51100                                         Name="Debug_Cairo_CFLite|Win32"
    51101                                         ExcludedFromBuild="true"
    51102                                         >
    51103                                         <Tool
    51104                                                 Name="VCCLCompilerTool"
    51105                                         />
    51106                                 </FileConfiguration>
    51107                                 <FileConfiguration
    51108                                         Name="Release_Cairo_CFLite|Win32"
    51109                                         ExcludedFromBuild="true"
    51110                                         >
    51111                                         <Tool
    51112                                                 Name="VCCLCompilerTool"
    51113                                         />
    51114                                 </FileConfiguration>
    51115                                 <FileConfiguration
    51116                                         Name="Debug_All|Win32"
    51117                                         ExcludedFromBuild="true"
    51118                                         >
    51119                                         <Tool
    51120                                                 Name="VCCLCompilerTool"
    51121                                         />
    51122                                 </FileConfiguration>
    51123                                 <FileConfiguration
    51124                                         Name="Production|Win32"
    51125                                         ExcludedFromBuild="true"
    51126                                         >
    51127                                         <Tool
    51128                                                 Name="VCCLCompilerTool"
    51129                                         />
    51130                                 </FileConfiguration>
    51131                         </File>
    51132                         <File
    51133                                 RelativePath="..\dom\EditingText.h"
    51134                                 >
    51135                         </File>
    51136                         <File
     51080            <File
    5113751081                                RelativePath="..\dom\Element.cpp"
    5113851082                                >
  • trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj

    r135455 r135529  
    17711771                6550B6A1099DF0270090D781 /* Comment.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6550B697099DF0270090D781 /* Comment.cpp */; };
    17721772                6550B6A2099DF0270090D781 /* Comment.h in Headers */ = {isa = PBXBuildFile; fileRef = 6550B698099DF0270090D781 /* Comment.h */; };
    1773                 6550B6A3099DF0270090D781 /* EditingText.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6550B699099DF0270090D781 /* EditingText.cpp */; };
    1774                 6550B6A4099DF0270090D781 /* EditingText.h in Headers */ = {isa = PBXBuildFile; fileRef = 6550B69A099DF0270090D781 /* EditingText.h */; };
    17751773                6550B6A5099DF0270090D781 /* Text.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6550B69B099DF0270090D781 /* Text.cpp */; };
    17761774                6550B6A6099DF0270090D781 /* Text.h in Headers */ = {isa = PBXBuildFile; fileRef = 6550B69C099DF0270090D781 /* Text.h */; settings = {ATTRIBUTES = (Private, ); }; };
     
    90199017                6550B697099DF0270090D781 /* Comment.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = Comment.cpp; sourceTree = "<group>"; };
    90209018                6550B698099DF0270090D781 /* Comment.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Comment.h; sourceTree = "<group>"; };
    9021                 6550B699099DF0270090D781 /* EditingText.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = EditingText.cpp; sourceTree = "<group>"; };
    9022                 6550B69A099DF0270090D781 /* EditingText.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = EditingText.h; sourceTree = "<group>"; };
    90239019                6550B69B099DF0270090D781 /* Text.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = Text.cpp; sourceTree = "<group>"; };
    90249020                6550B69C099DF0270090D781 /* Text.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Text.h; sourceTree = "<group>"; };
     
    2189221888                                BC7FA61E0D1F0CBD00DB22A9 /* DynamicNodeList.cpp */,
    2189321889                                BC7FA61F0D1F0CBD00DB22A9 /* DynamicNodeList.h */,
    21894                                 6550B699099DF0270090D781 /* EditingText.cpp */,
    21895                                 6550B69A099DF0270090D781 /* EditingText.h */,
    2189621890                                A8C4A7F609D563270003AC8D /* Element.cpp */,
    2189721891                                A8C4A7F509D563270003AC8D /* Element.h */,
     
    2354223536                                3AC648B2129E146500C3EB25 /* EditingBoundary.h in Headers */,
    2354323537                                9BAB6C6C12550631001626D4 /* EditingStyle.h in Headers */,
    23544                                 6550B6A4099DF0270090D781 /* EditingText.h in Headers */,
    2354523538                                4B3043CD0AE0373B00A82647 /* Editor.h in Headers */,
    2354623539                                1AF326790D78B9440068F0C4 /* EditorClient.h in Headers */,
     
    2680626799                                93309DE3099E64920056E581 /* EditCommand.cpp in Sources */,
    2680726800                                9BAB6C6D12550631001626D4 /* EditingStyle.cpp in Sources */,
    26808                                 6550B6A3099DF0270090D781 /* EditingText.cpp in Sources */,
    2680926801                                4B3043CC0AE0373B00A82647 /* Editor.cpp in Sources */,
    2681026802                                93A38B4B0D0E5808006872C2 /* EditorCommand.cpp in Sources */,
  • trunk/Source/WebCore/dom/CDATASection.cpp

    r127228 r135529  
    2828
    2929inline CDATASection::CDATASection(Document* document, const String& data)
    30     : Text(document, data)
     30    : Text(document, data, CreateText)
    3131{
    3232}
  • trunk/Source/WebCore/dom/CharacterData.h

    r130190 r135529  
    5555        , m_data(!text.isNull() ? text : emptyString())
    5656    {
    57         ASSERT(type == CreateOther || type == CreateText);
     57        ASSERT(type == CreateOther || type == CreateText || type == CreateEditingText);
    5858    }
    5959
  • trunk/Source/WebCore/dom/DOMAllInOne.cpp

    r132692 r135529  
    6969#include "DocumentType.cpp"
    7070#include "DynamicNodeList.cpp"
    71 #include "EditingText.cpp"
    7271#include "Element.cpp"
    7372#include "ElementAttributeData.cpp"
  • trunk/Source/WebCore/dom/Document.cpp

    r135493 r135529  
    5858#include "DocumentStyleSheetCollection.h"
    5959#include "DocumentType.h"
    60 #include "EditingText.h"
    6160#include "Editor.h"
    6261#include "Element.h"
     
    919918}
    920919
    921 PassRefPtr<EditingText> Document::createEditingTextNode(const String& text)
    922 {
    923     return EditingText::create(this, text);
     920PassRefPtr<Text> Document::createEditingTextNode(const String& text)
     921{
     922    return Text::createEditingText(this, text);
    924923}
    925924
  • trunk/Source/WebCore/dom/Document.h

    r135421 r135529  
    8282class DocumentWeakReference;
    8383class DynamicNodeListCacheBase;
    84 class EditingText;
    8584class Element;
    8685class ElementAttributeData;
     
    526525    // Special support for editing
    527526    PassRefPtr<CSSStyleDeclaration> createCSSStyleDeclaration();
    528     PassRefPtr<EditingText> createEditingTextNode(const String&);
     527    PassRefPtr<Text> createEditingTextNode(const String&);
    529528
    530529    void recalcStyle(StyleChange = NoChange);
  • trunk/Source/WebCore/dom/Node.h

    r135498 r135529  
    318318    virtual void startLoadingDynamicSheet() { ASSERT_NOT_REACHED(); }
    319319
    320     bool hasName() const { return getFlag(HasNameFlag); }
     320    bool hasName() const { return !isTextNode() && getFlag(HasNameOrIsEditingTextFlag); }
    321321    bool hasID() const;
    322322    bool hasClass() const;
     
    332332    bool childNeedsStyleRecalc() const { return getFlag(ChildNeedsStyleRecalcFlag); }
    333333    bool isLink() const { return getFlag(IsLinkFlag); }
    334 
    335     void setHasName(bool f) { setFlag(f, HasNameFlag); }
     334    bool isEditingText() const { return isTextNode() && getFlag(HasNameOrIsEditingTextFlag); }
     335
     336    void setHasName(bool f) { ASSERT(!isTextNode()); setFlag(f, HasNameOrIsEditingTextFlag); }
    336337    void setChildNeedsStyleRecalc() { setFlag(ChildNeedsStyleRecalcFlag); }
    337338    void clearChildNeedsStyleRecalc() { clearFlag(ChildNeedsStyleRecalcFlag); }
     
    718719        SelfOrAncestorHasDirAutoFlag = 1 << 21,
    719720
    720         HasNameFlag = 1 << 22,
     721        HasNameOrIsEditingTextFlag = 1 << 22,
    721722
    722723        InNamedFlowFlag = 1 << 23,
     
    754755        CreateSVGElement = CreateStyledElement | IsSVGFlag,
    755756        CreateDocument = CreateContainer | InDocumentFlag,
    756         CreateInsertionPoint = CreateHTMLElement | IsInsertionPointFlag
     757        CreateInsertionPoint = CreateHTMLElement | IsInsertionPointFlag,
     758        CreateEditingText = CreateText | HasNameOrIsEditingTextFlag,
    757759    };
    758760    Node(Document*, ConstructionType);
  • trunk/Source/WebCore/dom/Text.cpp

    r133372 r135529  
    4343PassRefPtr<Text> Text::create(Document* document, const String& data)
    4444{
    45     return adoptRef(new Text(document, data));
     45    return adoptRef(new Text(document, data, CreateText));
     46}
     47
     48PassRefPtr<Text> Text::createEditingText(Document* document, const String& data)
     49{
     50    return adoptRef(new Text(document, data, CreateEditingText));
    4651}
    4752
     
    193198bool Text::rendererIsNeeded(const NodeRenderingContext& context)
    194199{
     200    if (isEditingText())
     201        return true;
    195202    if (!CharacterData::rendererIsNeeded(context))
    196203        return false;
  • trunk/Source/WebCore/dom/Text.h

    r127228 r135529  
    3434    static PassRefPtr<Text> create(Document*, const String&);
    3535    static PassRefPtr<Text> createWithLengthLimit(Document*, const String&, unsigned positionInString, unsigned lengthLimit = defaultLengthLimit);
     36    static PassRefPtr<Text> createEditingText(Document*, const String&);
    3637
    3738    PassRefPtr<Text> splitText(unsigned offset, ExceptionCode&);
     
    4950
    5051protected:
    51     Text(Document* document, const String& data)
    52         : CharacterData(document, data, CreateText)
     52    Text(Document* document, const String& data, ConstructionType type)
     53        : CharacterData(document, data, type)
    5354    {
    5455    }
  • trunk/Source/WebCore/editing/Editor.cpp

    r133326 r135529  
    4444#include "DocumentFragment.h"
    4545#include "DocumentMarkerController.h"
    46 #include "EditingText.h"
    4746#include "EditorClient.h"
    4847#include "EventHandler.h"
  • trunk/Source/WebCore/editing/InsertTextCommand.cpp

    r116368 r135529  
    2929#include "Document.h"
    3030#include "Element.h"
    31 #include "EditingText.h"
    3231#include "Editor.h"
    3332#include "Frame.h"
    3433#include "HTMLInterchange.h"
     34#include "Text.h"
    3535#include "htmlediting.h"
    3636#include "visible_units.h"
  • trunk/Source/WebCore/editing/ReplaceSelectionCommand.cpp

    r134539 r135529  
    3636#include "Document.h"
    3737#include "DocumentFragment.h"
    38 #include "EditingText.h"
    3938#include "Element.h"
    4039#include "EventNames.h"
     
    5352#include "SmartReplace.h"
    5453#include "StylePropertySet.h"
     54#include "Text.h"
    5555#include "TextIterator.h"
    5656#include "htmlediting.h"
  • trunk/Source/WebCore/editing/htmlediting.cpp

    r121303 r135529  
    2929#include "AXObjectCache.h"
    3030#include "Document.h"
    31 #include "EditingText.h"
    3231#include "Editor.h"
    3332#include "Frame.h"
  • trunk/Source/WebCore/editing/mac/EditorMac.mm

    r133207 r135529  
    3232#import "DocumentFragment.h"
    3333#import "DOMRangeInternal.h"
    34 #import "EditingText.h"
    3534#import "Editor.h"
    3635#import "EditorClient.h"
     
    4847#import "RuntimeApplicationChecks.h"
    4948#import "Sound.h"
     49#import "Text.h"
    5050#import "TypingCommand.h"
    5151#import "htmlediting.h"
  • trunk/Source/WebCore/page/Frame.cpp

    r135503 r135529  
    4141#include "CachedResourceLoader.h"
    4242#include "DocumentType.h"
    43 #include "EditingText.h"
    4443#include "EditorClient.h"
    4544#include "EventNames.h"
  • trunk/Source/WebCore/svg/SVGTRefElement.cpp

    r135069 r135529  
    139139private:
    140140    SVGShadowText(Document* document, const String& data)
    141         : Text(document, data)
     141        : Text(document, data, CreateText)
    142142    {
    143143        setHasCustomCallbacks();
Note: See TracChangeset for help on using the changeset viewer.