Changeset 140267 in webkit


Ignore:
Timestamp:
Jan 19, 2013 10:32:29 PM (11 years ago)
Author:
pdr@google.com
Message:

Refactor SVGSVGElement to inherit from SVGStyledTransformableElement
https://bugs.webkit.org/show_bug.cgi?id=107393

Reviewed by Dirk Schulze.

Source/WebCore:

This patch refactors SVGSVGElement to inherit from SVGStyledTransformableElement instead
of SVGStyledLocatableElement. In a followup patch, SVGStyledTransformableElement will
be refactored into SVGGraphicsElement which will match the spec:
https://svgwg.org/svg2-draft/single-page.html#struct-InterfaceSVGSVGElement

Tests: svg/transforms/svgsvgelement-transform-expected.svg

svg/transforms/svgsvgelement-transform.svg

  • svg/SVGSVGElement.cpp:

(WebCore):
(WebCore::SVGSVGElement::SVGSVGElement):
(WebCore::SVGSVGElement::didMoveToNewDocument):
(WebCore::SVGSVGElement::parseAttribute):
(WebCore::SVGSVGElement::insertedInto):
(WebCore::SVGSVGElement::removedFrom):

  • svg/SVGSVGElement.h:

(SVGSVGElement):

  • svg/SVGSVGElement.idl:

LayoutTests:

  • svg/transforms/svgsvgelement-transform-expected.svg: Added.
  • svg/transforms/svgsvgelement-transform.svg: Added.
Location:
trunk
Files:
2 added
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r140262 r140267  
     12013-01-19  Philip Rogers  <pdr@google.com>
     2
     3        Refactor SVGSVGElement to inherit from SVGStyledTransformableElement
     4        https://bugs.webkit.org/show_bug.cgi?id=107393
     5
     6        Reviewed by Dirk Schulze.
     7
     8        * svg/transforms/svgsvgelement-transform-expected.svg: Added.
     9        * svg/transforms/svgsvgelement-transform.svg: Added.
     10
    1112013-01-19  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
    212
  • trunk/Source/WebCore/ChangeLog

    r140265 r140267  
     12013-01-19  Philip Rogers  <pdr@google.com>
     2
     3        Refactor SVGSVGElement to inherit from SVGStyledTransformableElement
     4        https://bugs.webkit.org/show_bug.cgi?id=107393
     5
     6        Reviewed by Dirk Schulze.
     7
     8        This patch refactors SVGSVGElement to inherit from SVGStyledTransformableElement instead
     9        of SVGStyledLocatableElement. In a followup patch, SVGStyledTransformableElement will
     10        be refactored into SVGGraphicsElement which will match the spec:
     11        https://svgwg.org/svg2-draft/single-page.html#struct-InterfaceSVGSVGElement
     12
     13        Tests: svg/transforms/svgsvgelement-transform-expected.svg
     14               svg/transforms/svgsvgelement-transform.svg
     15
     16        * svg/SVGSVGElement.cpp:
     17        (WebCore):
     18        (WebCore::SVGSVGElement::SVGSVGElement):
     19        (WebCore::SVGSVGElement::didMoveToNewDocument):
     20        (WebCore::SVGSVGElement::parseAttribute):
     21        (WebCore::SVGSVGElement::insertedInto):
     22        (WebCore::SVGSVGElement::removedFrom):
     23        * svg/SVGSVGElement.h:
     24        (SVGSVGElement):
     25        * svg/SVGSVGElement.idl:
     26
    1272013-01-19  Philip Rogers  <pdr@google.com>
    228
  • trunk/Source/WebCore/svg/SVGSVGElement.cpp

    r137406 r140267  
    7979    REGISTER_LOCAL_ANIMATED_PROPERTY(viewBox)
    8080    REGISTER_LOCAL_ANIMATED_PROPERTY(preserveAspectRatio)
    81     REGISTER_PARENT_ANIMATED_PROPERTIES(SVGStyledLocatableElement)
     81    REGISTER_PARENT_ANIMATED_PROPERTIES(SVGStyledTransformableElement)
    8282    REGISTER_PARENT_ANIMATED_PROPERTIES(SVGTests)
    8383END_REGISTER_ANIMATED_PROPERTIES
    8484
    8585inline SVGSVGElement::SVGSVGElement(const QualifiedName& tagName, Document* doc)
    86     : SVGStyledLocatableElement(tagName, doc)
     86    : SVGStyledTransformableElement(tagName, doc)
    8787    , m_x(LengthModeWidth)
    8888    , m_y(LengthModeHeight)
     
    118118        oldDocument->unregisterForPageCacheSuspensionCallbacks(this);
    119119    document()->registerForPageCacheSuspensionCallbacks(this);
    120     SVGStyledLocatableElement::didMoveToNewDocument(oldDocument);
     120    SVGStyledTransformableElement::didMoveToNewDocument(oldDocument);
    121121}
    122122
     
    276276               || SVGZoomAndPan::parseAttribute(this, name, value)) {
    277277    } else
    278         SVGStyledLocatableElement::parseAttribute(name, value);
     278        SVGStyledTransformableElement::parseAttribute(name, value);
    279279
    280280    reportAttributeParsingError(parseError, name, value);
     
    511511            timeContainer()->begin();
    512512    }
    513     return SVGStyledLocatableElement::insertedInto(rootParent);
     513    return SVGStyledTransformableElement::insertedInto(rootParent);
    514514}
    515515
     
    518518    if (rootParent->inDocument())
    519519        document()->accessSVGExtensions()->removeTimeContainer(this);
    520     SVGStyledLocatableElement::removedFrom(rootParent);
     520    SVGStyledTransformableElement::removedFrom(rootParent);
    521521}
    522522
  • trunk/Source/WebCore/svg/SVGSVGElement.h

    r136331 r140267  
    3030#include "SVGFitToViewBox.h"
    3131#include "SVGLangSpace.h"
    32 #include "SVGStyledLocatableElement.h"
     32#include "SVGStyledTransformableElement.h"
    3333#include "SVGTests.h"
    3434#include "SVGZoomAndPan.h"
     
    4343class SMILTimeContainer;
    4444
    45 class SVGSVGElement : public SVGStyledLocatableElement,
     45class SVGSVGElement : public SVGStyledTransformableElement,
    4646                      public SVGTests,
    4747                      public SVGLangSpace,
     
    5252    static PassRefPtr<SVGSVGElement> create(const QualifiedName&, Document*);
    5353
    54     using SVGStyledLocatableElement::ref;
    55     using SVGStyledLocatableElement::deref;
     54    using SVGStyledTransformableElement::ref;
     55    using SVGStyledTransformableElement::deref;
    5656
    5757    virtual bool isValid() const { return SVGTests::isValid(); }
  • trunk/Source/WebCore/svg/SVGSVGElement.idl

    r140265 r140267  
    3030                                            SVGLangSpace,
    3131                                            SVGExternalResourcesRequired,
    32                                             SVGLocatable,
     32                                            SVGTransformable,
    3333                                            SVGFitToViewBox,
    3434                                            SVGZoomAndPan {
Note: See TracChangeset for help on using the changeset viewer.