Changeset 65941 in webkit


Ignore:
Timestamp:
Aug 24, 2010 3:27:36 PM (14 years ago)
Author:
abarth@webkit.org
Message:

2010-08-24 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Delete LegacyHTMLTreeBuilder
https://bugs.webkit.org/show_bug.cgi?id=44554

There were some free functions in LegacyHTMLTreeBuilder that needed a
new home. I've put them in HTMLTreeBuilder, but they'll probably need
a better home eventually.

  • Android.mk:
  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/Document.cpp: (WebCore::shouldCreateImplicitHead):
  • dom/DocumentParser.h:
  • dom/ScriptableDocumentParser.h:
  • html/HTMLConstructionSite.cpp:
  • html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::removedFromTree):
  • html/HTMLInputElement.cpp:
  • html/HTMLMeterElement.cpp:
  • html/HTMLProgressElement.cpp:
  • html/HTMLTreeBuilder.cpp: (WebCore::serializeForNumberType): (WebCore::parseToDoubleForNumberType):
  • html/HTMLTreeBuilder.h:
  • html/HTMLViewSourceParser.h:
  • html/LegacyHTMLTreeBuilder.cpp: Removed.
  • html/LegacyHTMLTreeBuilder.h: Removed.
  • html/StepRange.cpp:
  • html/ValidityState.cpp:
  • rendering/RenderSlider.cpp:
Location:
trunk/WebCore
Files:
2 deleted
22 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/Android.mk

    r65910 r65941  
    282282        html/HTMLNameCollection.cpp \
    283283        html/HTMLOptionsCollection.cpp \
    284         html/LegacyHTMLTreeBuilder.cpp \
    285284        html/HTMLParserErrorCodes.cpp \
    286285        html/HTMLParserScheduler.cpp \
  • trunk/WebCore/CMakeLists.txt

    r65910 r65941  
    10261026    html/HTMLParagraphElement.cpp
    10271027    html/HTMLParamElement.cpp
    1028     html/LegacyHTMLTreeBuilder.cpp
    10291028    html/HTMLParserErrorCodes.cpp
    10301029    html/HTMLParserScheduler.cpp
  • trunk/WebCore/ChangeLog

    r65939 r65941  
     12010-08-24  Adam Barth  <abarth@webkit.org>
     2
     3        Reviewed by Eric Seidel.
     4
     5        Delete LegacyHTMLTreeBuilder
     6        https://bugs.webkit.org/show_bug.cgi?id=44554
     7
     8        There were some free functions in LegacyHTMLTreeBuilder that needed a
     9        new home.  I've put them in HTMLTreeBuilder, but they'll probably need
     10        a better home eventually.
     11
     12        * Android.mk:
     13        * CMakeLists.txt:
     14        * GNUmakefile.am:
     15        * WebCore.gypi:
     16        * WebCore.pro:
     17        * WebCore.vcproj/WebCore.vcproj:
     18        * WebCore.xcodeproj/project.pbxproj:
     19        * dom/Document.cpp:
     20        (WebCore::shouldCreateImplicitHead):
     21        * dom/DocumentParser.h:
     22        * dom/ScriptableDocumentParser.h:
     23        * html/HTMLConstructionSite.cpp:
     24        * html/HTMLFormControlElement.cpp:
     25        (WebCore::HTMLFormControlElement::removedFromTree):
     26        * html/HTMLInputElement.cpp:
     27        * html/HTMLMeterElement.cpp:
     28        * html/HTMLProgressElement.cpp:
     29        * html/HTMLTreeBuilder.cpp:
     30        (WebCore::serializeForNumberType):
     31        (WebCore::parseToDoubleForNumberType):
     32        * html/HTMLTreeBuilder.h:
     33        * html/HTMLViewSourceParser.h:
     34        * html/LegacyHTMLTreeBuilder.cpp: Removed.
     35        * html/LegacyHTMLTreeBuilder.h: Removed.
     36        * html/StepRange.cpp:
     37        * html/ValidityState.cpp:
     38        * rendering/RenderSlider.cpp:
     39
    1402010-08-24  Pavel Podivilov  <podivilov@chromium.org>
    241
  • trunk/WebCore/GNUmakefile.am

    r65927 r65941  
    15101510        WebCore/html/HTMLParamElement.cpp \
    15111511        WebCore/html/HTMLParamElement.h \
    1512         WebCore/html/LegacyHTMLTreeBuilder.cpp \
    1513         WebCore/html/LegacyHTMLTreeBuilder.h \
    15141512        WebCore/html/HTMLParserErrorCodes.cpp \
    15151513        WebCore/html/HTMLParserErrorCodes.h \
  • trunk/WebCore/WebCore.gypi

    r65910 r65941  
    16761676            'html/HTMLParamElement.cpp',
    16771677            'html/HTMLParamElement.h',
    1678             'html/LegacyHTMLTreeBuilder.cpp',
    1679             'html/LegacyHTMLTreeBuilder.h',
    16801678            'html/HTMLParserErrorCodes.cpp',
    16811679            'html/HTMLParserErrorCodes.h',
  • trunk/WebCore/WebCore.pro

    r65910 r65941  
    720720    html/HTMLParagraphElement.cpp \
    721721    html/HTMLParamElement.cpp \
    722     html/LegacyHTMLTreeBuilder.cpp \
    723722    html/HTMLParserErrorCodes.cpp \
    724723    html/HTMLParserScheduler.cpp \
     
    14941493    html/HTMLParamElement.h \
    14951494    html/HTMLParserErrorCodes.h \
    1496     html/LegacyHTMLTreeBuilder.h \
    14971495    html/HTMLPlugInElement.h \
    14981496    html/HTMLPlugInImageElement.h \
  • trunk/WebCore/WebCore.vcproj/WebCore.vcproj

    r65910 r65941  
    4172241722                        </File>
    4172341723                        <File
    41724                                 RelativePath="..\html\LegacyHTMLTreeBuilder.cpp"
    41725                                 >
    41726                         </File>
    41727                         <File
    41728                                 RelativePath="..\html\LegacyHTMLTreeBuilder.h"
    41729                                 >
    41730                         </File>
    41731                         <File
    4173241724                                RelativePath="..\html\MediaError.h"
    4173341725                                >
  • trunk/WebCore/WebCore.xcodeproj/project.pbxproj

    r65910 r65941  
    11011101                512DD8E30D91E2B4000F89EE /* SharedBufferCF.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 512DD8E20D91E2B4000F89EE /* SharedBufferCF.cpp */; };
    11021102                512DD8F40D91E6AF000F89EE /* LegacyWebArchive.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 512DD8EA0D91E6AF000F89EE /* LegacyWebArchive.cpp */; };
    1103                 512DD8F50D91E6AF000F89EE /* LegacyWebArchive.h in Headers */ = {isa = PBXBuildFile; fileRef = 512DD8EB0D91E6AF000F89EE /* LegacyWebArchive.h */; settings = {ATTRIBUTES = (Private, ); }; };
     1103        512DD8F50D91E6AF000F89EE /* LegacyWebArchive.h in Headers */ = {isa = PBXBuildFile; fileRef = 512DD8EB0D91E6AF000F89EE /* LegacyWebArchive.h */; settings = {ATTRIBUTES = (Private, ); }; };
    11041104                512DD8F60D91E6AF000F89EE /* Archive.h in Headers */ = {isa = PBXBuildFile; fileRef = 512DD8EC0D91E6AF000F89EE /* Archive.h */; settings = {ATTRIBUTES = (Private, ); }; };
    11051105                512DD8F70D91E6AF000F89EE /* ArchiveResourceCollection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 512DD8ED0D91E6AF000F89EE /* ArchiveResourceCollection.cpp */; };
     
    26572657                93F198E508245E59001E9ABC /* HTMLDocument.h in Headers */ = {isa = PBXBuildFile; fileRef = F523D23C02DE4396018635CA /* HTMLDocument.h */; settings = {ATTRIBUTES = (Private, ); }; };
    26582658                93F198E608245E59001E9ABC /* HTMLElement.h in Headers */ = {isa = PBXBuildFile; fileRef = F523D23F02DE4396018635CA /* HTMLElement.h */; settings = {ATTRIBUTES = (Private, ); }; };
    2659                 93F198EF08245E59001E9ABC /* LegacyHTMLTreeBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = F523D25102DE4396018635CA /* LegacyHTMLTreeBuilder.h */; };
    26602659                93F198F608245E59001E9ABC /* TextResourceDecoder.h in Headers */ = {isa = PBXBuildFile; fileRef = F523D27902DE43D7018635CA /* TextResourceDecoder.h */; settings = {ATTRIBUTES = (Private, ); }; };
    26612660                93F1991808245E59001E9ABC /* Range.h in Headers */ = {isa = PBXBuildFile; fileRef = F523D30402DE4476018635CA /* Range.h */; settings = {ATTRIBUTES = (Private, ); }; };
     
    26862685                93F19A9108245E59001E9ABC /* HTMLDocument.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F523D23B02DE4396018635CA /* HTMLDocument.cpp */; };
    26872686                93F19A9208245E59001E9ABC /* HTMLElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F523D23E02DE4396018635CA /* HTMLElement.cpp */; };
    2688                 93F19A9B08245E59001E9ABC /* LegacyHTMLTreeBuilder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F523D25002DE4396018635CA /* LegacyHTMLTreeBuilder.cpp */; };
    26892687                93F19A9D08245E59001E9ABC /* TextResourceDecoder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F523D27802DE43D7018635CA /* TextResourceDecoder.cpp */; };
    26902688                93F19AB908245E59001E9ABC /* Range.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F523D30302DE4476018635CA /* Range.cpp */; };
     
    1115611154                F523D23E02DE4396018635CA /* HTMLElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTMLElement.cpp; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
    1115711155                F523D23F02DE4396018635CA /* HTMLElement.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = HTMLElement.h; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
    11158                 F523D25002DE4396018635CA /* LegacyHTMLTreeBuilder.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LegacyHTMLTreeBuilder.cpp; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
    11159                 F523D25102DE4396018635CA /* LegacyHTMLTreeBuilder.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = LegacyHTMLTreeBuilder.h; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
    1116011156                F523D27802DE43D7018635CA /* TextResourceDecoder.cpp */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextResourceDecoder.cpp; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
    1116111157                F523D27902DE43D7018635CA /* TextResourceDecoder.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = TextResourceDecoder.h; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; };
     
    1433614332                                A456FA2411AD4A830020B420 /* LabelsNodeList.cpp */,
    1433714333                                A456FA2511AD4A830020B420 /* LabelsNodeList.h */,
    14338                                 F523D25002DE4396018635CA /* LegacyHTMLTreeBuilder.cpp */,
    14339                                 F523D25102DE4396018635CA /* LegacyHTMLTreeBuilder.h */,
    1434014334                                E446139B0CD6331000FADA75 /* MediaError.h */,
    1434114335                                E446139C0CD6331000FADA75 /* MediaError.idl */,
     
    1945319447                                85EC9AFB0A71A2C600EEEAED /* Language.h in Headers */,
    1945419448                                2D9066070BE141D400956998 /* LayoutState.h in Headers */,
    19455                                 93F198EF08245E59001E9ABC /* LegacyHTMLTreeBuilder.h in Headers */,
    19456                                 512DD8F50D91E6AF000F89EE /* LegacyWebArchive.h in Headers */,
     19449                512DD8F50D91E6AF000F89EE /* LegacyWebArchive.h in Headers */,
    1945719450                                BCE65BEB0EACDF16007E4533 /* Length.h in Headers */,
    1945819451                                BCFF64910EAD15C200C1D6F7 /* LengthBox.h in Headers */,
     
    2203122024                                9352084509BD43B900F2038D /* Language.mm in Sources */,
    2203222025                                2D9066060BE141D400956998 /* LayoutState.cpp in Sources */,
    22033                                 93F19A9B08245E59001E9ABC /* LegacyHTMLTreeBuilder.cpp in Sources */,
    2203422026                                512DD8F40D91E6AF000F89EE /* LegacyWebArchive.cpp in Sources */,
    2203522027                                51B2417B0D931F3F00E83F5C /* LegacyWebArchiveMac.mm in Sources */,
  • trunk/WebCore/dom/Document.cpp

    r65878 r65941  
    9090#include "InspectorTimelineAgent.h"
    9191#include "KeyboardEvent.h"
    92 #include "LegacyHTMLTreeBuilder.h"
    9392#include "Logging.h"
    9493#include "MessageEvent.h"
     
    19241923}
    19251924
     1925// FIXME: These settings probably don't work anymore.  We should either remove
     1926// them or make them work properly.
     1927#ifdef BUILDING_ON_LEOPARD
     1928static bool shouldCreateImplicitHead(Document* document)
     1929{
     1930    ASSERT(document);
     1931    Settings* settings = document->page() ? document->page()->settings() : 0;
     1932    return settings ? !settings->needsLeopardMailQuirks() : true;
     1933}
     1934#elif defined(BUILDING_ON_TIGER)
     1935static bool shouldCreateImplicitHead(Document* document)
     1936{
     1937    ASSERT(document);
     1938    Settings* settings = document->page() ? document->page()->settings() : 0;
     1939    return settings ? !settings->needsTigerMailQuirks() : true;
     1940}
     1941#else
     1942inline bool shouldCreateImplicitHead(Document*) { return true; }
     1943#endif
     1944
    19261945void Document::implicitClose()
    19271946{
  • trunk/WebCore/dom/DocumentParser.h

    r65692 r65941  
    3131class Document;
    3232class DocumentWriter;
    33 class LegacyHTMLTreeBuilder;
    3433class SegmentedString;
    3534class ScriptableDocumentParser;
     
    6160    // used to implements it.
    6261    virtual bool processingData() const { return false; }
    63 
    64     // FIXME: Exposed for HTMLFormControlElement::removedFromTree.  HTML DOM
    65     // code should not need to reach into implementation details of the parser.
    66     virtual LegacyHTMLTreeBuilder* htmlTreeBuilder() const { return 0; }
    6762
    6863    Document* document() const { return m_document; }
  • trunk/WebCore/dom/ScriptableDocumentParser.h

    r61985 r65941  
    5353    void setXSSAuditor(XSSAuditor* auditor) { m_xssAuditor = auditor; }
    5454
    55     // Exposed for LegacyHTMLTreeBuilder::reportErrorToConsole
    56     virtual bool processingContentWrittenByScript() const { return false; }
    57 
    5855protected:
    5956    ScriptableDocumentParser(Document*, bool viewSourceMode = false);
  • trunk/WebCore/html/HTMLConstructionSite.cpp

    r65852 r65941  
    4040#include "HTMLToken.h"
    4141#include "HTMLTokenizer.h"
    42 #include "LegacyHTMLTreeBuilder.h"
    4342#include "LocalizedStrings.h"
    4443#if ENABLE(MATHML)
  • trunk/WebCore/html/HTMLFormControlElement.cpp

    r65468 r65941  
    4040#include "HTMLInputElement.h"
    4141#include "HTMLNames.h"
    42 #include "LegacyHTMLTreeBuilder.h"
    4342#include "LabelsNodeList.h"
    4443#include "Page.h"
     
    174173    // If the form and element are both in the same tree, preserve the connection to the form.
    175174    // Otherwise, null out our form and remove ourselves from the form's list of elements.
    176     LegacyHTMLTreeBuilder* treeBuilder = 0;
    177     if (DocumentParser* parser = document()->parser())
    178         treeBuilder = parser->htmlTreeBuilder();
    179 
    180     if (m_form && !(treeBuilder && treeBuilder->isHandlingResidualStyleAcrossBlocks()) && findRoot(this) != findRoot(m_form)) {
     175    if (m_form && findRoot(this) != findRoot(m_form)) {
    181176        m_form->removeFormElement(this);
    182177        m_form = 0;
  • trunk/WebCore/html/HTMLInputElement.cpp

    r65917 r65941  
    5151#include "HTMLNames.h"
    5252#include "HTMLOptionElement.h"
    53 #include "LegacyHTMLTreeBuilder.h"
     53#include "HTMLTreeBuilder.h"
    5454#include "KeyboardEvent.h"
    5555#include "LocalizedStrings.h"
  • trunk/WebCore/html/HTMLMeterElement.cpp

    r61677 r65941  
    2929#include "HTMLFormElement.h"
    3030#include "HTMLNames.h"
    31 #include "LegacyHTMLTreeBuilder.h"
     31#include "HTMLTreeBuilder.h"
    3232#include "RenderMeter.h"
    3333#include <wtf/StdLibExtras.h>
  • trunk/WebCore/html/HTMLProgressElement.cpp

    r61677 r65941  
    2929#include "HTMLFormElement.h"
    3030#include "HTMLNames.h"
    31 #include "LegacyHTMLTreeBuilder.h"
     31#include "HTMLTreeBuilder.h"
    3232#include "RenderProgress.h"
    3333#include <wtf/StdLibExtras.h>
  • trunk/WebCore/html/HTMLTreeBuilder.cpp

    r65931 r65941  
    5050#include "XMLNSNames.h"
    5151#include "XMLNames.h"
     52// FIXME: Remove this include once we find a home for the free functions that
     53// are using it.
     54#include <wtf/dtoa.h>
    5255#include <wtf/UnusedParam.h>
    5356
     
    28432846}
    28442847
    2845 }
     2848// FIXME: Move this function to a more appropriate place.
     2849String serializeForNumberType(double number)
     2850{
     2851    // According to HTML5, "the best representation of the number n as a floating
     2852    // point number" is a string produced by applying ToString() to n.
     2853    DtoaBuffer buffer;
     2854    unsigned length;
     2855    doubleToStringInJavaScriptFormat(number, buffer, &length);
     2856    return String(buffer, length);
     2857}
     2858
     2859// FIXME: Move this function to a more appropriate place.
     2860bool parseToDoubleForNumberType(const String& src, double* out)
     2861{
     2862    // See HTML5 2.4.4.3 `Real numbers.'
     2863
     2864    if (src.isEmpty())
     2865        return false;
     2866    // String::toDouble() accepts leading + \t \n \v \f \r and SPACE, which are invalid in HTML5.
     2867    // So, check the first character.
     2868    if (src[0] != '-' && (src[0] < '0' || src[0] > '9'))
     2869        return false;
     2870
     2871    bool valid = false;
     2872    double value = src.toDouble(&valid);
     2873    if (!valid)
     2874        return false;
     2875    // NaN and Infinity are not valid numbers according to the standard.
     2876    if (!isfinite(value))
     2877        return false;
     2878    // -0 -> 0
     2879    if (!value)
     2880        value = 0;
     2881    if (out)
     2882        *out = value;
     2883    return true;
     2884}
     2885
     2886}
  • trunk/WebCore/html/HTMLTreeBuilder.h

    r65931 r65941  
    256256};
    257257
     258// FIXME: Move these functions to a more appropriate place.
     259
     260// Converts the specified string to a floating number.
     261// If the conversion fails, the return value is false. Take care that leading
     262// or trailing unnecessary characters make failures.  This returns false for an
     263// empty string input.
     264// The double* parameter may be 0.
     265bool parseToDoubleForNumberType(const String&, double*);
     266// Converts the specified number to a string. This is an implementation of
     267// HTML5's "algorithm to convert a number to a string" for NUMBER/RANGE types.
     268String serializeForNumberType(double);
     269
    258270}
    259271
  • trunk/WebCore/html/HTMLViewSourceParser.h

    r65932 r65941  
    4040class HTMLTreeBuilder;
    4141class HTMLPreloadScanner;
    42 class LegacyHTMLTreeBuilder;
    4342class ScriptController;
    4443class ScriptSourceCode;
  • trunk/WebCore/html/StepRange.cpp

    r61677 r65941  
    2424#include "HTMLInputElement.h"
    2525#include "HTMLNames.h"
    26 #include "LegacyHTMLTreeBuilder.h"
     26#include "HTMLTreeBuilder.h"
    2727#include "PlatformString.h"
    2828#include <wtf/MathExtras.h>
  • trunk/WebCore/html/ValidityState.cpp

    r64805 r65941  
    2727#include "HTMLInputElement.h"
    2828#include "HTMLNames.h"
    29 #include "LegacyHTMLTreeBuilder.h"
     29#include "HTMLTreeBuilder.h"
    3030#include "KURL.h"
    3131#include "LocalizedStrings.h"
  • trunk/WebCore/rendering/RenderSlider.cpp

    r65852 r65941  
    3030#include "HTMLInputElement.h"
    3131#include "HTMLNames.h"
    32 #include "LegacyHTMLTreeBuilder.h"
     32#include "HTMLTreeBuilder.h"
    3333#include "MediaControlElements.h"
    3434#include "MouseEvent.h"
Note: See TracChangeset for help on using the changeset viewer.