Changeset 110676 in webkit


Ignore:
Timestamp:
Mar 14, 2012 1:52:35 AM (12 years ago)
Author:
reni@webkit.org
Message:

External <use> xlink:href references do not work
https://bugs.webkit.org/show_bug.cgi?id=12499

Reviewed by Nikolas Zimmermann.

Source/WebCore:

This is a follow-up patch after r108785.
In this patch we bind the previously introduced CachedSVGDocument class
into the caching mechanism of SVGUseElement. The mode how external resources
are handled is similar to the processing of internal ones. We build the instance
and shadow tree the same way but we have to keep in mind that the requested resources
maybe not loaded yet. We can check it with cachedDocumentIsStillLoading() function.

SVGURIReference::targetElementFromIRIString() also need to be extended. The baseURI
computation needs to take the referenced documents URL into account, instead of the current documents.

The patch affects a lot of tests which have external resources especially in svg/batik. Because
of the size of that test refactor they will be commited in a follow-up patch.

Tests: svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t.svg

svg/W3C-SVG-1.2-Tiny/struct-use-recursion-02-t.svg
svg/W3C-SVG-1.2-Tiny/struct-use-recursion-03-t.svg
svg/custom/use-extern-href.svg
svg/custom/use-referencing-an-image-expected.svg
svg/custom/use-referencing-an-image.svg
svg/custom/use-referencing-indirectly-itself-expected.svg
svg/custom/use-referencing-indirectly-itself.svg
svg/custom/use-referencing-itself-expected.svg
svg/custom/use-referencing-itself.svg
svg/dynamic-updates/SVGUseElement-dom-href1-attr.html
svg/dynamic-updates/SVGUseElement-dom-href2-attr.html
svg/dynamic-updates/SVGUseElement-svgdom-href1-prop.html
svg/dynamic-updates/SVGUseElement-svgdom-href2-prop.html

  • loader/cache/CachedResourceLoader.cpp:

(WebCore):
(WebCore::CachedResourceLoader::requestSVGDocument):

  • loader/cache/CachedResourceLoader.h:

(WebCore):
(CachedResourceLoader):

  • page/ContentSecurityPolicy.h:
  • platform/KURL.cpp:

(WebCore::equalIgnoringFragmentIdentifier):

  • platform/network/chromium/ResourceRequest.h:
  • svg/SVGURIReference.cpp:

(WebCore::urlFromIRIStringWithFragmentIdentifier):
(WebCore):
(WebCore::SVGURIReference::targetElementFromIRIString):

  • svg/SVGURIReference.h:

(SVGURIReference):
(WebCore::SVGURIReference::isExternalURIReference):

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::SVGUseElement):
(WebCore::SVGUseElement::~SVGUseElement):
(WebCore):
(WebCore::SVGUseElement::referencedDocument):
(WebCore::SVGUseElement::externalDocument):
(WebCore::SVGUseElement::svgAttributeChanged):
(WebCore::dumpInstanceTree):
(WebCore::SVGUseElement::buildPendingResource):
(WebCore::SVGUseElement::buildShadowAndInstanceTree):
(WebCore::SVGUseElement::hasCycleUseReferencing):
(WebCore::SVGUseElement::expandUseElementsInShadowTree):
(WebCore::SVGUseElement::expandSymbolElementsInShadowTree):
(WebCore::SVGUseElement::notifyFinished):
(WebCore::SVGUseElement::cachedDocumentIsStillLoading):
(WebCore::SVGUseElement::instanceTreeIsLoading):

  • svg/SVGUseElement.h:

(WebCore):
(SVGUseElement):

LayoutTests:

Adding tests to check the new functionality of SVGUseElement what can use
sources from external URIs too. New tests in this patch cover the corner cases
of this feature: referencing resources directly and indirectly, changing
the referenced URI from an internal to an external one, handling
security issues like self referencing, self referencing across document, etc.
Furthermore the patch infer some rebaseline in svg/batik directory because
they use external resources.

  • platform/chromium/test_expectations.txt:
  • platform/mac/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t-expected.png: Added.
  • platform/mac/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t-expected.txt: Added.
  • platform/mac/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-02-t-expected.png: Added.
  • platform/mac/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-02-t-expected.txt: Added.
  • platform/mac/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-03-t-expected.png: Added.
  • platform/mac/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-03-t-expected.txt: Added.
  • platform/mac/svg/batik/filters/feTile-expected.png:
  • platform/mac/svg/batik/filters/feTile-expected.txt:
  • platform/mac/svg/batik/filters/filterRegions-expected.png:
  • platform/mac/svg/batik/filters/filterRegions-expected.txt:
  • platform/mac/svg/batik/masking/maskRegions-expected.png:
  • platform/mac/svg/batik/masking/maskRegions-expected.txt:
  • platform/mac/svg/batik/paints/gradientLimit-expected.png:
  • platform/mac/svg/batik/paints/gradientLimit-expected.txt:
  • platform/mac/svg/batik/paints/patternPreserveAspectRatioA-expected.png:
  • platform/mac/svg/batik/paints/patternPreserveAspectRatioA-expected.txt:
  • platform/mac/svg/batik/paints/patternRegionA-expected.png:
  • platform/mac/svg/batik/paints/patternRegionA-expected.txt:
  • platform/mac/svg/batik/paints/patternRegions-expected.png:
  • platform/mac/svg/batik/paints/patternRegions-expected.txt:
  • platform/mac/svg/batik/paints/patternRegions-positioned-objects-expected.png:
  • platform/mac/svg/batik/paints/patternRegions-positioned-objects-expected.txt:
  • platform/mac/svg/batik/text/longTextOnPath-expected.png:
  • platform/mac/svg/batik/text/longTextOnPath-expected.txt:
  • platform/mac/svg/batik/text/smallFonts-expected.png:
  • platform/mac/svg/batik/text/smallFonts-expected.txt:
  • platform/mac/svg/batik/text/textAnchor-expected.png:
  • platform/mac/svg/batik/text/textAnchor-expected.txt:
  • platform/mac/svg/batik/text/textDecoration-expected.png:
  • platform/mac/svg/batik/text/textDecoration-expected.txt:
  • platform/mac/svg/batik/text/textEffect-expected.png:
  • platform/mac/svg/batik/text/textEffect-expected.txt:
  • platform/mac/svg/batik/text/textEffect2-expected.png:
  • platform/mac/svg/batik/text/textEffect2-expected.txt:
  • platform/mac/svg/batik/text/textEffect3-expected.png:
  • platform/mac/svg/batik/text/textEffect3-expected.txt:
  • platform/mac/svg/batik/text/textFeatures-expected.png:
  • platform/mac/svg/batik/text/textFeatures-expected.txt:
  • platform/mac/svg/batik/text/textLayout-expected.png:
  • platform/mac/svg/batik/text/textLayout-expected.txt:
  • platform/mac/svg/batik/text/textLayout2-expected.png:
  • platform/mac/svg/batik/text/textLayout2-expected.txt:
  • platform/mac/svg/batik/text/textLength-expected.png:
  • platform/mac/svg/batik/text/textLength-expected.txt:
  • platform/mac/svg/batik/text/textOnPath-expected.png:
  • platform/mac/svg/batik/text/textOnPath-expected.txt:
  • platform/mac/svg/batik/text/textOnPathSpaces-expected.png:
  • platform/mac/svg/batik/text/textOnPathSpaces-expected.txt:
  • platform/mac/svg/batik/text/textPosition-expected.png:
  • platform/mac/svg/batik/text/textPosition-expected.txt:
  • platform/mac/svg/batik/text/textPosition2-expected.png:
  • platform/mac/svg/batik/text/textPosition2-expected.txt:
  • platform/mac/svg/batik/text/textProperties-expected.png:
  • platform/mac/svg/batik/text/textProperties-expected.txt:
  • platform/mac/svg/batik/text/textProperties2-expected.png:
  • platform/mac/svg/batik/text/textProperties2-expected.txt:
  • platform/mac/svg/batik/text/textStyles-expected.png:
  • platform/mac/svg/batik/text/textStyles-expected.txt:
  • platform/mac/svg/batik/text/verticalText-expected.png:
  • platform/mac/svg/batik/text/verticalText-expected.txt:
  • platform/mac/svg/batik/text/verticalTextOnPath-expected.png:
  • platform/mac/svg/batik/text/verticalTextOnPath-expected.txt:
  • platform/mac/svg/custom/use-extern-href-expected.png: Added.
  • platform/mac/svg/custom/use-extern-href-expected.txt: Added.
  • platform/mac/svg/dynamic-updates/SVGUseElement-dom-href1-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGUseElement-dom-href2-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGUseElement-svgdom-href1-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGUseElement-svgdom-href2-prop-expected.png: Added.
  • platform/mac/svg/hixie/error/014-expected.txt:
  • platform/mac/svg/hixie/use/002-expected.png:
  • platform/mac/svg/hixie/use/002-expected.txt:
  • svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t.svg: Added.
  • svg/W3C-SVG-1.2-Tiny/struct-use-recursion-02-t.svg: Added.
  • svg/W3C-SVG-1.2-Tiny/struct-use-recursion-03-t.svg: Added.
  • svg/batik/filters/filterRegions.svg:
  • svg/batik/text/textProperties.svg:
  • svg/batik/text/textProperties2.svg:
  • svg/batik/text/textStyles.svg:
  • svg/custom/resources/rgb.svg:
  • svg/custom/use-extern-href.svg: Added.
  • svg/custom/use-referencing-an-image-expected.svg: Added.
  • svg/custom/use-referencing-an-image.svg: Added.
  • svg/custom/use-referencing-indirectly-itself-expected.svg: Added.
  • svg/custom/use-referencing-indirectly-itself.svg: Added.
  • svg/custom/use-referencing-itself-expected.svg: Added.
  • svg/custom/use-referencing-itself.svg: Added.
  • svg/dynamic-updates/SVGUseElement-dom-href1-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGUseElement-dom-href1-attr.html: Added.
  • svg/dynamic-updates/SVGUseElement-dom-href2-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGUseElement-dom-href2-attr.html: Added.
  • svg/dynamic-updates/SVGUseElement-svgdom-href1-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGUseElement-svgdom-href1-prop.html: Added.
  • svg/dynamic-updates/SVGUseElement-svgdom-href2-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGUseElement-svgdom-href2-prop.html: Added.
  • svg/dynamic-updates/script-tests/SVGUseElement-dom-href1-attr.js: Added.

(repaintTest):

  • svg/dynamic-updates/script-tests/SVGUseElement-dom-href2-attr.js: Added.

(repaintTest):

  • svg/dynamic-updates/script-tests/SVGUseElement-svgdom-href1-prop.js: Added.

(repaintTest):

  • svg/dynamic-updates/script-tests/SVGUseElement-svgdom-href2-prop.js: Added.

(repaintTest):

Location:
trunk
Files:
36 added
73 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r110675 r110676  
     12012-03-14  Renata Hodovan  <reni@webkit.org>
     2
     3        External <use> xlink:href references do not work
     4        https://bugs.webkit.org/show_bug.cgi?id=12499
     5
     6        Reviewed by Nikolas Zimmermann.
     7
     8        Adding tests to check the new functionality of SVGUseElement what can use
     9        sources from external URIs too. New tests in this patch cover the corner cases
     10        of this feature: referencing resources directly and indirectly, changing
     11        the referenced URI from an internal to an external one, handling
     12        security issues like self referencing, self referencing across document, etc.
     13        Furthermore the patch infer some rebaseline in svg/batik directory because
     14        they use external resources.
     15
     16        * platform/chromium/test_expectations.txt:
     17        * platform/mac/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t-expected.png: Added.
     18        * platform/mac/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t-expected.txt: Added.
     19        * platform/mac/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-02-t-expected.png: Added.
     20        * platform/mac/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-02-t-expected.txt: Added.
     21        * platform/mac/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-03-t-expected.png: Added.
     22        * platform/mac/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-03-t-expected.txt: Added.
     23        * platform/mac/svg/batik/filters/feTile-expected.png:
     24        * platform/mac/svg/batik/filters/feTile-expected.txt:
     25        * platform/mac/svg/batik/filters/filterRegions-expected.png:
     26        * platform/mac/svg/batik/filters/filterRegions-expected.txt:
     27        * platform/mac/svg/batik/masking/maskRegions-expected.png:
     28        * platform/mac/svg/batik/masking/maskRegions-expected.txt:
     29        * platform/mac/svg/batik/paints/gradientLimit-expected.png:
     30        * platform/mac/svg/batik/paints/gradientLimit-expected.txt:
     31        * platform/mac/svg/batik/paints/patternPreserveAspectRatioA-expected.png:
     32        * platform/mac/svg/batik/paints/patternPreserveAspectRatioA-expected.txt:
     33        * platform/mac/svg/batik/paints/patternRegionA-expected.png:
     34        * platform/mac/svg/batik/paints/patternRegionA-expected.txt:
     35        * platform/mac/svg/batik/paints/patternRegions-expected.png:
     36        * platform/mac/svg/batik/paints/patternRegions-expected.txt:
     37        * platform/mac/svg/batik/paints/patternRegions-positioned-objects-expected.png:
     38        * platform/mac/svg/batik/paints/patternRegions-positioned-objects-expected.txt:
     39        * platform/mac/svg/batik/text/longTextOnPath-expected.png:
     40        * platform/mac/svg/batik/text/longTextOnPath-expected.txt:
     41        * platform/mac/svg/batik/text/smallFonts-expected.png:
     42        * platform/mac/svg/batik/text/smallFonts-expected.txt:
     43        * platform/mac/svg/batik/text/textAnchor-expected.png:
     44        * platform/mac/svg/batik/text/textAnchor-expected.txt:
     45        * platform/mac/svg/batik/text/textDecoration-expected.png:
     46        * platform/mac/svg/batik/text/textDecoration-expected.txt:
     47        * platform/mac/svg/batik/text/textEffect-expected.png:
     48        * platform/mac/svg/batik/text/textEffect-expected.txt:
     49        * platform/mac/svg/batik/text/textEffect2-expected.png:
     50        * platform/mac/svg/batik/text/textEffect2-expected.txt:
     51        * platform/mac/svg/batik/text/textEffect3-expected.png:
     52        * platform/mac/svg/batik/text/textEffect3-expected.txt:
     53        * platform/mac/svg/batik/text/textFeatures-expected.png:
     54        * platform/mac/svg/batik/text/textFeatures-expected.txt:
     55        * platform/mac/svg/batik/text/textLayout-expected.png:
     56        * platform/mac/svg/batik/text/textLayout-expected.txt:
     57        * platform/mac/svg/batik/text/textLayout2-expected.png:
     58        * platform/mac/svg/batik/text/textLayout2-expected.txt:
     59        * platform/mac/svg/batik/text/textLength-expected.png:
     60        * platform/mac/svg/batik/text/textLength-expected.txt:
     61        * platform/mac/svg/batik/text/textOnPath-expected.png:
     62        * platform/mac/svg/batik/text/textOnPath-expected.txt:
     63        * platform/mac/svg/batik/text/textOnPathSpaces-expected.png:
     64        * platform/mac/svg/batik/text/textOnPathSpaces-expected.txt:
     65        * platform/mac/svg/batik/text/textPosition-expected.png:
     66        * platform/mac/svg/batik/text/textPosition-expected.txt:
     67        * platform/mac/svg/batik/text/textPosition2-expected.png:
     68        * platform/mac/svg/batik/text/textPosition2-expected.txt:
     69        * platform/mac/svg/batik/text/textProperties-expected.png:
     70        * platform/mac/svg/batik/text/textProperties-expected.txt:
     71        * platform/mac/svg/batik/text/textProperties2-expected.png:
     72        * platform/mac/svg/batik/text/textProperties2-expected.txt:
     73        * platform/mac/svg/batik/text/textStyles-expected.png:
     74        * platform/mac/svg/batik/text/textStyles-expected.txt:
     75        * platform/mac/svg/batik/text/verticalText-expected.png:
     76        * platform/mac/svg/batik/text/verticalText-expected.txt:
     77        * platform/mac/svg/batik/text/verticalTextOnPath-expected.png:
     78        * platform/mac/svg/batik/text/verticalTextOnPath-expected.txt:
     79        * platform/mac/svg/custom/use-extern-href-expected.png: Added.
     80        * platform/mac/svg/custom/use-extern-href-expected.txt: Added.
     81        * platform/mac/svg/dynamic-updates/SVGUseElement-dom-href1-attr-expected.png: Added.
     82        * platform/mac/svg/dynamic-updates/SVGUseElement-dom-href2-attr-expected.png: Added.
     83        * platform/mac/svg/dynamic-updates/SVGUseElement-svgdom-href1-prop-expected.png: Added.
     84        * platform/mac/svg/dynamic-updates/SVGUseElement-svgdom-href2-prop-expected.png: Added.
     85        * platform/mac/svg/hixie/error/014-expected.txt:
     86        * platform/mac/svg/hixie/use/002-expected.png:
     87        * platform/mac/svg/hixie/use/002-expected.txt:
     88        * svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t.svg: Added.
     89        * svg/W3C-SVG-1.2-Tiny/struct-use-recursion-02-t.svg: Added.
     90        * svg/W3C-SVG-1.2-Tiny/struct-use-recursion-03-t.svg: Added.
     91        * svg/batik/filters/filterRegions.svg:
     92        * svg/batik/text/textProperties.svg:
     93        * svg/batik/text/textProperties2.svg:
     94        * svg/batik/text/textStyles.svg:
     95        * svg/custom/resources/rgb.svg:
     96        * svg/custom/use-extern-href.svg: Added.
     97        * svg/custom/use-referencing-an-image-expected.svg: Added.
     98        * svg/custom/use-referencing-an-image.svg: Added.
     99        * svg/custom/use-referencing-indirectly-itself-expected.svg: Added.
     100        * svg/custom/use-referencing-indirectly-itself.svg: Added.
     101        * svg/custom/use-referencing-itself-expected.svg: Added.
     102        * svg/custom/use-referencing-itself.svg: Added.
     103        * svg/dynamic-updates/SVGUseElement-dom-href1-attr-expected.txt: Added.
     104        * svg/dynamic-updates/SVGUseElement-dom-href1-attr.html: Added.
     105        * svg/dynamic-updates/SVGUseElement-dom-href2-attr-expected.txt: Added.
     106        * svg/dynamic-updates/SVGUseElement-dom-href2-attr.html: Added.
     107        * svg/dynamic-updates/SVGUseElement-svgdom-href1-prop-expected.txt: Added.
     108        * svg/dynamic-updates/SVGUseElement-svgdom-href1-prop.html: Added.
     109        * svg/dynamic-updates/SVGUseElement-svgdom-href2-prop-expected.txt: Added.
     110        * svg/dynamic-updates/SVGUseElement-svgdom-href2-prop.html: Added.
     111        * svg/dynamic-updates/script-tests/SVGUseElement-dom-href1-attr.js: Added.
     112        (repaintTest):
     113        * svg/dynamic-updates/script-tests/SVGUseElement-dom-href2-attr.js: Added.
     114        (repaintTest):
     115        * svg/dynamic-updates/script-tests/SVGUseElement-svgdom-href1-prop.js: Added.
     116        (repaintTest):
     117        * svg/dynamic-updates/script-tests/SVGUseElement-svgdom-href2-prop.js: Added.
     118        (repaintTest):
     119
    11202012-03-14  Philippe Normand  <pnormand@igalia.com>
    2121
  • trunk/LayoutTests/platform/chromium/test_expectations.txt

    r110663 r110676  
    10411041BUGWK62974 MAC : svg/wicd/test-rightsizing-b.xhtml = IMAGE
    10421042BUGWK62974 MAC : svg/W3C-SVG-1.1/pservers-grad-08-b.svg = IMAGE
     1043
     1044// These tests will need rebaseline after landing 12499.
     1045BUGWK12499 LINUX : svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t.svg = IMAGE+TEXT IMAGE TEXT PASS
     1046BUGWK12499 LINUX : svg/W3C-SVG-1.2-Tiny/struct-use-recursion-02-t.svg = IMAGE+TEXT IMAGE TEXT PASS
     1047BUGWK12499 LINUX : svg/W3C-SVG-1.2-Tiny/struct-use-recursion-03-t.svg = IMAGE+TEXT IMAGE TEXT PASS
    10431048
    10441049// -----------------------------------------------------------------
  • trunk/LayoutTests/platform/mac/svg/batik/filters/feTile-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (0,25) size 384x454
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGContainer {g} at (0,25) size 384x354
    66      RenderSVGText {text} at (187,25) size 75x18 contains 1 chunk(s)
     
    9191        RenderSVGInlineText {#text} at (0,0) size 161x18
    9292          chunk 1 text run 1 at (20.00,475.00) startOffset 0 endOffset 26 width 161.00: "How it should look like..."
    93     RenderSVGContainer {use} at (0,0) size 0x0
     93    RenderSVGContainer {use} at (0,0) size 448x498
     94      RenderSVGContainer {g} at (0,0) size 448x498
     95        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     96        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     97          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     98            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     99            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     100            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/filters/filterRegions-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (0,25) size 450x475
     4  RenderSVGRoot {svg} at (0,0) size 450x500
    55    RenderSVGText {text} at (175,25) size 100x18 contains 1 chunk(s)
    66      RenderSVGInlineText {#text} at (0,0) size 100x18
     
    4141      RenderSVGResourceFilter {filter} [id="filterRegion_3_3"] [filterUnits=objectBoundingBox] [primitiveUnits=userSpaceOnUse]
    4242        [feFlood flood-color="#FF0000" flood-opacity="1.00"]
    43     RenderSVGContainer {g} at (0,58) size 450x442 [transform={m=((1.00,0.00)(0.00,1.00)) t=(30.00,50.00)}]
    44       RenderSVGContainer {g} at (259,118) size 122x83 [transform={m=((1.00,0.00)(0.00,1.00)) t=(240.00,95.00)}]
     43    RenderSVGContainer {g} at (0,64) size 450x436 [transform={m=((1.00,0.00)(0.00,1.00)) t=(30.00,50.00)}]
     44      RenderSVGContainer {g} at (259,124) size 122x77 [transform={m=((1.00,0.00)(0.00,1.00)) t=(240.00,95.00)}]
    4545        RenderSVGRect {rect} at (260,140) size 120x60 [fill={[type=SOLID] [color=#000000]}] [x=0.00] [y=0.00] [width=100.00] [height=50.00]
    4646          [filter="filterRegion_0"] RenderSVGResourceFilter {filter} at (-10,-5) size 120x60
    4747        RenderSVGRect {rect} at (259,139) size 122x62 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=-10.00] [y=-5.00] [width=120.00] [height=60.00]
    48         RenderSVGText {text} at (-11,-27) size 112x20 contains 1 chunk(s)
    49           RenderSVGInlineText {#text} at (0,0) size 112x20
    50             chunk 1 (middle anchor) text run 1 at (-11.00,-10.00) startOffset 0 endOffset 14 width 112.00: "filterRegion_0"
     48        RenderSVGText {text} at (10,-21) size 70x13 contains 1 chunk(s)
     49          RenderSVGInlineText {#text} at (0,0) size 70x13
     50            chunk 1 (middle anchor) text run 1 at (10.00,-10.00) startOffset 0 endOffset 14 width 70.00: "filterRegion_0"
    5151      RenderSVGRect {rect} at (50,80) size 50x40 [fill={[type=SOLID] [color=#000000]}] [x=0.00] [y=3000.00] [width=20000000.00] [height=25.00]
    5252        [filter="filterRegion_1"] RenderSVGResourceFilter {filter} at (20,30) size 50x40
    5353      RenderSVGRect {rect} at (49,79) size 52x42 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=20.00] [y=30.00] [width=50.00] [height=40.00]
    54       RenderSVGText {text} at (-11,8) size 112x20 contains 1 chunk(s)
    55         RenderSVGInlineText {#text} at (0,0) size 112x20
    56           chunk 1 (middle anchor) text run 1 at (-11.00,25.00) startOffset 0 endOffset 14 width 112.00: "filterRegion_1"
    57       RenderSVGContainer {g} at (119,58) size 112x63 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,0.00)}]
     54      RenderSVGText {text} at (10,14) size 70x13 contains 1 chunk(s)
     55        RenderSVGInlineText {#text} at (0,0) size 70x13
     56          chunk 1 (middle anchor) text run 1 at (10.00,25.00) startOffset 0 endOffset 14 width 70.00: "filterRegion_1"
     57      RenderSVGContainer {g} at (140,64) size 70x57 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,0.00)}]
    5858        RenderSVGRect {rect} at (150,80) size 50x40 [fill={[type=SOLID] [color=#000000]}] [x=0.00] [y=3000.00] [width=20000000.00] [height=25.00]
    5959          [filter="filterRegion_2"] RenderSVGResourceFilter {filter} at (20,30) size 50x40
    6060        RenderSVGRect {rect} at (154,84) size 47x37 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=25.00] [y=35.00] [width=45.00] [height=35.00]
    61         RenderSVGText {text} at (-11,8) size 112x20 contains 1 chunk(s)
    62           RenderSVGInlineText {#text} at (0,0) size 112x20
    63             chunk 1 (middle anchor) text run 1 at (-11.00,25.00) startOffset 0 endOffset 14 width 112.00: "filterRegion_2"
    64       RenderSVGContainer {g} at (219,58) size 112x62 [transform={m=((1.00,0.00)(0.00,1.00)) t=(200.00,0.00)}]
     61        RenderSVGText {text} at (10,14) size 70x13 contains 1 chunk(s)
     62          RenderSVGInlineText {#text} at (0,0) size 70x13
     63            chunk 1 (middle anchor) text run 1 at (10.00,25.00) startOffset 0 endOffset 14 width 70.00: "filterRegion_2"
     64      RenderSVGContainer {g} at (240,64) size 70x56 [transform={m=((1.00,0.00)(0.00,1.00)) t=(200.00,0.00)}]
    6565        RenderSVGRect {rect} at (250,80) size 50x40 [fill={[type=SOLID] [color=#000000]}] [x=0.00] [y=3000.00] [width=20000000.00] [height=25.00]
    6666          [filter="filterRegion_3"] RenderSVGResourceFilter {filter} at (20,30) size 50x40
    6767        RenderSVGRect {rect} at (249,79) size 52x22 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=20.00] [y=30.00] [width=50.00] [height=20.00]
    68         RenderSVGText {text} at (-11,8) size 112x20 contains 1 chunk(s)
    69           RenderSVGInlineText {#text} at (0,0) size 112x20
    70             chunk 1 (middle anchor) text run 1 at (-11.00,25.00) startOffset 0 endOffset 14 width 112.00: "filterRegion_3"
    71       RenderSVGContainer {g} at (319,58) size 112x63 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,0.00)}]
     68        RenderSVGText {text} at (10,14) size 70x13 contains 1 chunk(s)
     69          RenderSVGInlineText {#text} at (0,0) size 70x13
     70            chunk 1 (middle anchor) text run 1 at (10.00,25.00) startOffset 0 endOffset 14 width 70.00: "filterRegion_3"
     71      RenderSVGContainer {g} at (340,64) size 70x57 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,0.00)}]
    7272        RenderSVGRect {rect} at (350,80) size 50x40 [fill={[type=SOLID] [color=#000000]}] [x=0.00] [y=3000.00] [width=20000000.00] [height=25.00]
    7373          [filter="filterRegion_4"] RenderSVGResourceFilter {filter} at (20,30) size 50x40
    7474        RenderSVGRect {rect} at (349,79) size 27x42 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=20.00] [y=30.00] [width=25.00] [height=40.00]
    75         RenderSVGText {text} at (-11,8) size 112x20 contains 1 chunk(s)
    76           RenderSVGInlineText {#text} at (0,0) size 112x20
    77             chunk 1 (middle anchor) text run 1 at (-11.00,25.00) startOffset 0 endOffset 14 width 112.00: "filterRegion_4"
    78       RenderSVGContainer {g} at (19,133) size 112x62 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,75.00)}]
     75        RenderSVGText {text} at (10,14) size 70x13 contains 1 chunk(s)
     76          RenderSVGInlineText {#text} at (0,0) size 70x13
     77            chunk 1 (middle anchor) text run 1 at (10.00,25.00) startOffset 0 endOffset 14 width 70.00: "filterRegion_4"
     78      RenderSVGContainer {g} at (40,139) size 70x56 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,75.00)}]
    7979        RenderSVGRect {rect} at (50,155) size 50x40 [fill={[type=SOLID] [color=#000000]}] [x=0.00] [y=3000.00] [width=20000000.00] [height=25.00]
    8080          [filter="filterRegion_5"] RenderSVGResourceFilter {filter} at (20,30) size 50x40
    8181        RenderSVGRect {rect} at (49,154) size 52x22 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=20.00] [y=30.00] [width=50.00] [height=20.00]
    82         RenderSVGText {text} at (-11,8) size 112x20 contains 1 chunk(s)
    83           RenderSVGInlineText {#text} at (0,0) size 112x20
    84             chunk 1 (middle anchor) text run 1 at (-11.00,25.00) startOffset 0 endOffset 14 width 112.00: "filterRegion_5"
     82        RenderSVGText {text} at (10,14) size 70x13 contains 1 chunk(s)
     83          RenderSVGInlineText {#text} at (0,0) size 70x13
     84            chunk 1 (middle anchor) text run 1 at (10.00,25.00) startOffset 0 endOffset 14 width 70.00: "filterRegion_5"
    8585      RenderSVGContainer {g} at (150,155) size 50x40 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,75.00)}]
    8686        [filter="filterRegion_6"] RenderSVGResourceFilter {filter} at (20,30) size 50x40
    8787        RenderSVGRect {rect} at (0,0) size 0x0 [fill={[type=SOLID] [color=#000000]}] [x=0.00] [y=3000.00] [width=20000000.00] [height=25.00]
    88       RenderSVGContainer {g} at (119,133) size 112x63 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,75.00)}]
     88      RenderSVGContainer {g} at (140,139) size 70x57 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,75.00)}]
    8989        RenderSVGRect {rect} at (149,154) size 42x42 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=20.00] [y=30.00] [width=40.00] [height=40.00]
    90         RenderSVGText {text} at (-11,8) size 112x20 contains 1 chunk(s)
    91           RenderSVGInlineText {#text} at (0,0) size 112x20
    92             chunk 1 (middle anchor) text run 1 at (-11.00,25.00) startOffset 0 endOffset 14 width 112.00: "filterRegion_6"
    93       RenderSVGContainer {g} at (109,293) size 132x65 [transform={m=((1.00,0.00)(0.00,1.00)) t=(120.00,280.00)}]
     90        RenderSVGText {text} at (10,14) size 70x13 contains 1 chunk(s)
     91          RenderSVGInlineText {#text} at (0,0) size 70x13
     92            chunk 1 (middle anchor) text run 1 at (10.00,25.00) startOffset 0 endOffset 14 width 70.00: "filterRegion_6"
     93      RenderSVGContainer {g} at (134,299) size 82x59 [transform={m=((1.00,0.00)(0.00,1.00)) t=(120.00,280.00)}]
    9494        RenderSVGRect {rect} at (145,327) size 60x31 [fill={[type=SOLID] [color=#000000]}] [x=0.00] [y=0.00] [width=50.00] [height=25.00]
    9595          [filter="filterRegion_2_0"] RenderSVGResourceFilter {filter} at (-5,-2.50) size 60x30
    9696        RenderSVGRect {rect} at (144,327) size 62x31 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=-5.00] [y=-2.50] [width=60.00] [height=30.00]
    97         RenderSVGText {text} at (-41,-37) size 132x20 contains 1 chunk(s)
    98           RenderSVGInlineText {#text} at (0,0) size 132x20
    99             chunk 1 (middle anchor) text run 1 at (-41.00,-20.00) startOffset 0 endOffset 16 width 132.00: "filterRegion_2_0"
     97        RenderSVGText {text} at (-16,-31) size 82x13 contains 1 chunk(s)
     98          RenderSVGInlineText {#text} at (0,0) size 82x13
     99            chunk 1 (middle anchor) text run 1 at (-16.00,-20.00) startOffset 0 endOffset 16 width 82.00: "filterRegion_2_0"
    100100      RenderSVGContainer {g} at (0,160) size 450x340 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,160.00)}]
    101101        [filter="filterRegion_2_1"] RenderSVGResourceFilter {filter} at (-45,-50) size 540x600
    102102        RenderSVGRect {rect} at (50,240) size 50x40 [fill={[type=SOLID] [color=#000000]}] [x=20.00] [y=30.00] [width=50.00] [height=40.00]
    103       RenderSVGContainer {g} at (9,218) size 132x63 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,160.00)}]
     103      RenderSVGContainer {g} at (34,224) size 82x57 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,160.00)}]
    104104        RenderSVGRect {rect} at (49,239) size 52x42 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=20.00] [y=30.00] [width=50.00] [height=40.00]
    105         RenderSVGText {text} at (-21,8) size 132x20 contains 1 chunk(s)
    106           RenderSVGInlineText {#text} at (0,0) size 132x20
    107             chunk 1 (middle anchor) text run 1 at (-21.00,25.00) startOffset 0 endOffset 16 width 132.00: "filterRegion_2_1"
     105        RenderSVGText {text} at (4,14) size 82x13 contains 1 chunk(s)
     106          RenderSVGInlineText {#text} at (0,0) size 82x13
     107            chunk 1 (middle anchor) text run 1 at (4.00,25.00) startOffset 0 endOffset 16 width 82.00: "filterRegion_2_1"
    108108      RenderSVGContainer {g} at (85,160) size 365x340 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,160.00)}]
    109109        RenderSVGRect {rect} at (85,160) size 365x340 [fill={[type=SOLID] [color=#000000]}] [x=20.00] [y=30.00] [width=50.00] [height=40.00]
    110110          [filter="filterRegion_2_2"] RenderSVGResourceFilter {filter} at (-45,-50) size 540x600
    111       RenderSVGContainer {g} at (109,218) size 132x63 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,160.00)}]
     111      RenderSVGContainer {g} at (134,224) size 82x57 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,160.00)}]
    112112        RenderSVGRect {rect} at (149,239) size 52x42 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=20.00] [y=30.00] [width=50.00] [height=40.00]
    113         RenderSVGText {text} at (-21,8) size 132x20 contains 1 chunk(s)
    114           RenderSVGInlineText {#text} at (0,0) size 132x20
    115             chunk 1 (middle anchor) text run 1 at (-21.00,25.00) startOffset 0 endOffset 16 width 132.00: "filterRegion_2_2"
     113        RenderSVGText {text} at (4,14) size 82x13 contains 1 chunk(s)
     114          RenderSVGInlineText {#text} at (0,0) size 82x13
     115            chunk 1 (middle anchor) text run 1 at (4.00,25.00) startOffset 0 endOffset 16 width 82.00: "filterRegion_2_2"
    116116      RenderSVGContainer {g} at (185,160) size 265x340 [transform={m=((1.00,0.00)(0.00,1.00)) t=(200.00,160.00)}]
    117117        [filter="filterRegion_2_3"] RenderSVGResourceFilter {filter} at (-45,-50) size 540x600
    118118        RenderSVGRect {rect} at (250,240) size 50x40 [fill={[type=SOLID] [color=#000000]}] [x=20.00] [y=30.00] [width=50.00] [height=40.00]
    119       RenderSVGContainer {g} at (209,218) size 132x53 [transform={m=((1.00,0.00)(0.00,1.00)) t=(200.00,160.00)}]
     119      RenderSVGContainer {g} at (234,224) size 82x47 [transform={m=((1.00,0.00)(0.00,1.00)) t=(200.00,160.00)}]
    120120        RenderSVGRect {rect} at (262,259) size 26x12 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=32.50] [y=50.00] [width=25.00] [height=10.00]
    121         RenderSVGText {text} at (-21,8) size 132x20 contains 1 chunk(s)
    122           RenderSVGInlineText {#text} at (0,0) size 132x20
    123             chunk 1 (middle anchor) text run 1 at (-21.00,25.00) startOffset 0 endOffset 16 width 132.00: "filterRegion_2_3"
     121        RenderSVGText {text} at (4,14) size 82x13 contains 1 chunk(s)
     122          RenderSVGInlineText {#text} at (0,0) size 82x13
     123            chunk 1 (middle anchor) text run 1 at (4.00,25.00) startOffset 0 endOffset 16 width 82.00: "filterRegion_2_3"
    124124      RenderSVGContainer {g} at (285,160) size 165x340 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,160.00)}]
    125125        [filter="filterRegion_2_4"] RenderSVGResourceFilter {filter} at (-45,-50) size 540x600
    126126        RenderSVGRect {rect} at (350,240) size 50x40 [fill={[type=SOLID] [color=#000000]}] [x=20.00] [y=30.00] [width=50.00] [height=40.00]
    127       RenderSVGContainer {g} at (309,218) size 132x53 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,160.00)}]
     127      RenderSVGContainer {g} at (334,224) size 82x47 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,160.00)}]
    128128        RenderSVGRect {rect} at (362,259) size 26x12 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=32.50] [y=50.00] [width=25.00] [height=10.00]
    129         RenderSVGText {text} at (-21,8) size 132x20 contains 1 chunk(s)
    130           RenderSVGInlineText {#text} at (0,0) size 132x20
    131             chunk 1 (middle anchor) text run 1 at (-21.00,25.00) startOffset 0 endOffset 16 width 132.00: "filterRegion_2_4"
     129        RenderSVGText {text} at (4,14) size 82x13 contains 1 chunk(s)
     130          RenderSVGInlineText {#text} at (0,0) size 82x13
     131            chunk 1 (middle anchor) text run 1 at (4.00,25.00) startOffset 0 endOffset 16 width 82.00: "filterRegion_2_4"
    132132      RenderSVGContainer {g} at (50,325) size 50x40 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,245.00)}]
    133133        [filter="filterRegion_2_5"] RenderSVGResourceFilter {filter} at (20,30) size 50x40
    134134        RenderSVGRect {rect} at (50,325) size 50x40 [fill={[type=SOLID] [color=#000000]}] [x=20.00] [y=30.00] [width=50.00] [height=40.00]
    135       RenderSVGContainer {g} at (9,303) size 132x53 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,245.00)}]
     135      RenderSVGContainer {g} at (34,309) size 82x47 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,245.00)}]
    136136        RenderSVGRect {rect} at (49,344) size 52x12 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=20.00] [y=50.00] [width=50.00] [height=10.00]
    137         RenderSVGText {text} at (-21,8) size 132x20 contains 1 chunk(s)
    138           RenderSVGInlineText {#text} at (0,0) size 132x20
    139             chunk 1 (middle anchor) text run 1 at (-21.00,25.00) startOffset 0 endOffset 16 width 132.00: "filterRegion_2_5"
     137        RenderSVGText {text} at (4,14) size 82x13 contains 1 chunk(s)
     138          RenderSVGInlineText {#text} at (0,0) size 82x13
     139            chunk 1 (middle anchor) text run 1 at (4.00,25.00) startOffset 0 endOffset 16 width 82.00: "filterRegion_2_5"
    140140      RenderSVGContainer {g} at (0,335) size 450x165 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,330.00)}]
    141141        [filter="filterRegion_3_1"] RenderSVGResourceFilter {filter} at (-45,-45) size 540x540
    142142        RenderSVGRect {rect} at (30,380) size 420x120 [fill={[type=SOLID] [color=#000000]}] [x=0.00] [y=0.00] [width=450.00] [height=450.00]
    143       RenderSVGContainer {g} at (9,388) size 132x48 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,330.00)}]
     143      RenderSVGContainer {g} at (34,394) size 82x42 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,330.00)}]
    144144        RenderSVGRect {rect} at (49,409) size 22x27 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=20.00] [y=30.00] [width=20.00] [height=25.00]
    145         RenderSVGText {text} at (-21,8) size 132x20 contains 1 chunk(s)
    146           RenderSVGInlineText {#text} at (0,0) size 132x20
    147             chunk 1 (middle anchor) text run 1 at (-21.00,25.00) startOffset 0 endOffset 16 width 132.00: "filterRegion_3_1"
     145        RenderSVGText {text} at (4,14) size 82x13 contains 1 chunk(s)
     146          RenderSVGInlineText {#text} at (0,0) size 82x13
     147            chunk 1 (middle anchor) text run 1 at (4.00,25.00) startOffset 0 endOffset 16 width 82.00: "filterRegion_3_1"
    148148      RenderSVGContainer {g} at (346,375) size 48x60 [transform={m=((1.00,0.00)(0.00,1.00)) t=(320.00,330.00)}]
    149149        [filter="filterRegion_3_0"] RenderSVGResourceFilter {filter} at (-4,-5) size 48x60
    150150        RenderSVGRect {rect} at (350,380) size 40x50 [fill={[type=SOLID] [color=#000000]}] [x=0.00] [y=0.00] [width=40.00] [height=50.00]
    151       RenderSVGContainer {g} at (329,374) size 121x62 [transform={m=((1.00,0.00)(0.00,1.00)) t=(320.00,330.00)}]
     151      RenderSVGContainer {g} at (345,374) size 91x62 [transform={m=((1.00,0.00)(0.00,1.00)) t=(320.00,330.00)}]
    152152        RenderSVGRect {rect} at (345,374) size 50x62 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=-4.00] [y=-5.00] [width=48.00] [height=60.00]
    153         RenderSVGText {text} at (-21,8) size 132x20 contains 1 chunk(s)
    154           RenderSVGInlineText {#text} at (0,0) size 132x20
    155             chunk 1 (middle anchor) text run 1 at (-21.00,25.00) startOffset 0 endOffset 16 width 132.00: "filterRegion_3_0"
     153        RenderSVGText {text} at (4,14) size 82x13 contains 1 chunk(s)
     154          RenderSVGInlineText {#text} at (0,0) size 82x13
     155            chunk 1 (middle anchor) text run 1 at (4.00,25.00) startOffset 0 endOffset 16 width 82.00: "filterRegion_3_0"
    156156      RenderSVGContainer {g} at (130,380) size 100x80 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,330.00)}]
    157157        [filter="filterRegion_3_2"] RenderSVGResourceFilter {filter} at (0,0) size 100x80
    158158        RenderSVGRect {rect} at (180,420) size 50x40 [fill={[type=SOLID] [color=#000000]}] [x=50.00] [y=40.00] [width=50.00] [height=40.00]
    159       RenderSVGContainer {g} at (109,379) size 132x82 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,330.00)}]
     159      RenderSVGContainer {g} at (129,379) size 102x82 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,330.00)}]
    160160        RenderSVGRect {rect} at (129,379) size 102x82 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=0.00] [y=0.00] [width=100.00] [height=80.00]
    161         RenderSVGText {text} at (-21,8) size 132x20 contains 1 chunk(s)
    162           RenderSVGInlineText {#text} at (0,0) size 132x20
    163             chunk 1 (middle anchor) text run 1 at (-21.00,25.00) startOffset 0 endOffset 16 width 132.00: "filterRegion_3_2"
     161        RenderSVGText {text} at (4,14) size 82x13 contains 1 chunk(s)
     162          RenderSVGInlineText {#text} at (0,0) size 82x13
     163            chunk 1 (middle anchor) text run 1 at (4.00,25.00) startOffset 0 endOffset 16 width 82.00: "filterRegion_3_2"
    164164      RenderSVGContainer {g} at (255,400) size 38x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(200.00,330.00)}]
    165165        [filter="filterRegion_3_3"] RenderSVGResourceFilter {filter} at (25,20) size 37.50x30
    166166        RenderSVGRect {rect} at (280,420) size 50x40 [fill={[type=SOLID] [color=#000000]}] [x=50.00] [y=40.00] [width=50.00] [height=40.00]
    167       RenderSVGContainer {g} at (209,388) size 132x43 [transform={m=((1.00,0.00)(0.00,1.00)) t=(200.00,330.00)}]
     167      RenderSVGContainer {g} at (234,394) size 82x37 [transform={m=((1.00,0.00)(0.00,1.00)) t=(200.00,330.00)}]
    168168        RenderSVGRect {rect} at (254,399) size 39x32 [stroke={[type=SOLID] [color=#000000] [opacity=0.50]}] [x=25.00] [y=20.00] [width=37.50] [height=30.00]
    169         RenderSVGText {text} at (-21,8) size 132x20 contains 1 chunk(s)
    170           RenderSVGInlineText {#text} at (0,0) size 132x20
    171             chunk 1 (middle anchor) text run 1 at (-21.00,25.00) startOffset 0 endOffset 16 width 132.00: "filterRegion_3_3"
    172     RenderSVGContainer {use} at (0,0) size 0x0
     169        RenderSVGText {text} at (4,14) size 82x13 contains 1 chunk(s)
     170          RenderSVGInlineText {#text} at (0,0) size 82x13
     171            chunk 1 (middle anchor) text run 1 at (4.00,25.00) startOffset 0 endOffset 16 width 82.00: "filterRegion_3_3"
     172    RenderSVGContainer {use} at (0,0) size 448x498
     173      RenderSVGContainer {g} at (0,0) size 448x498
     174        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     175        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     176          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     177            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     178            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     179            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/masking/maskRegions-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (90,35) size 265x369
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGContainer {g} at (90,35) size 265x369
    66      RenderSVGText {text} at (174,35) size 102x18 contains 1 chunk(s)
     
    6666          RenderSVGInlineText {#text} at (0,0) size 51x18
    6767            chunk 1 (middle anchor) text run 1 at (24.50,-3.00) startOffset 0 endOffset 6 width 51.00: "Mask 4"
    68     RenderSVGContainer {use} at (0,0) size 0x0
     68    RenderSVGContainer {use} at (0,0) size 448x498
     69      RenderSVGContainer {g} at (0,0) size 448x498
     70        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     71        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     72          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     73            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     74            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     75            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/paints/gradientLimit-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (13,30) size 433x224
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGText {text} at (158,30) size 134x18 contains 1 chunk(s)
    66      RenderSVGInlineText {#text} at (0,0) size 134x18
     
    7777          RenderSVGInlineText {#text} at (0,0) size 119x18
    7878            chunk 1 (middle anchor) text run 1 at (15.50,150.00) startOffset 0 endOffset 16 width 119.00: "<radialGradient>"
    79     RenderSVGContainer {use} at (0,0) size 0x0
     79    RenderSVGContainer {use} at (0,0) size 448x498
     80      RenderSVGContainer {g} at (0,0) size 448x498
     81        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     82        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     83          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     84            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     85            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     86            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/paints/patternPreserveAspectRatioA-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (49,15) size 342x466
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGText {text} at (118,15) size 214x18 contains 1 chunk(s)
    66      RenderSVGInlineText {#text} at (0,0) size 214x18
     
    865865          RenderSVGContainer {use} at (294,444) size 92x32 [transform={m=((1.00,0.00)(0.00,1.00)) t=(200.00,0.00)}] [start marker=startEndMarker] [end marker=startEndMarker]
    866866            RenderSVGRect {rect} at (294,444) size 92x32 [transform={m=((1.00,0.00)(0.00,1.00)) t=(45.00,5.00)}] [stroke={[type=SOLID] [color=#000000]}] [fill={[type=PATTERN] [id="noneNone"]}] [start marker=startEndMarker] [end marker=startEndMarker] [x=0.00] [y=0.00] [width=90.00] [height=30.00]
    867     RenderSVGContainer {use} at (0,0) size 0x0
     867    RenderSVGContainer {use} at (0,0) size 448x498
     868      RenderSVGContainer {g} at (0,0) size 448x498
     869        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     870        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     871          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     872            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     873            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     874            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/paints/patternRegionA-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (24,35) size 426x426
     4  RenderSVGRoot {svg} at (0,0) size 450x498
    55    RenderSVGText {text} at (109,35) size 231x18 contains 1 chunk(s)
    66      RenderSVGInlineText {#text} at (0,0) size 231x18
     
    197197          RenderSVGRect {rect} at (254,339) size 102x52 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=PATTERN] [id="patternWiderHigherRegion"]}] [x=0.00] [y=0.00] [width=100.00] [height=50.00]
    198198          RenderSVGRect {rect} at (254,339) size 42x42 [stroke={[type=SOLID] [color=#FFFFFF]}] [fill={[type=SOLID] [color=#000000] [opacity=0.12]}] [x=0.00] [y=0.00] [width=40.00] [height=40.00]
    199     RenderSVGContainer {use} at (0,0) size 0x0
     199    RenderSVGContainer {use} at (0,0) size 448x498
     200      RenderSVGContainer {g} at (0,0) size 448x498
     201        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     202        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     203          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     204            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     205            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     206            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/paints/patternRegions-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (14,35) size 410x366
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGText {text} at (105,35) size 240x18 contains 1 chunk(s)
    66      RenderSVGInlineText {#text} at (0,0) size 240x18
     
    159159              RenderSVGInlineText {#text} at (0,0) size 68x12
    160160                chunk 1 text run 1 at (0.00,10.00) startOffset 0 endOffset 16 width 68.00: "overflow=visible"
    161     RenderSVGContainer {use} at (0,0) size 0x0
     161    RenderSVGContainer {use} at (0,0) size 448x498
     162      RenderSVGContainer {g} at (0,0) size 448x498
     163        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     164        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     165          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     166            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     167            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     168            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/paints/patternRegions-positioned-objects-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (14,35) size 410x366
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGText {text} at (105,35) size 240x18 contains 1 chunk(s)
    66      RenderSVGInlineText {#text} at (0,0) size 240x18
     
    168168                RenderSVGInlineText {#text} at (0,0) size 68x12
    169169                  chunk 1 text run 1 at (0.00,10.00) startOffset 0 endOffset 16 width 68.00: "overflow=visible"
    170     RenderSVGContainer {use} at (0,0) size 0x0
     170    RenderSVGContainer {use} at (0,0) size 448x498
     171      RenderSVGContainer {g} at (0,0) size 448x498
     172        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     173        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     174          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     175            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     176            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     177            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/longTextOnPath-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (20,25) size 407x450
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGContainer {g} at (20,25) size 407x450
    66      RenderSVGText {text} at (98,25) size 254x18 contains 1 chunk(s)
     
    660660            chunk 1 text run 70 at (289.50,390.00) startOffset 69 endOffset 70 width 5.00: "."
    661661        RenderSVGInlineText {#text} at (0,0) size 0x0
    662     RenderSVGContainer {use} at (0,0) size 0x0
     662    RenderSVGContainer {use} at (0,0) size 448x498
     663      RenderSVGContainer {g} at (0,0) size 448x498
     664        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     665        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     666          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     667            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     668            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     669            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/smallFonts-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (0,0) size 400x500
     4  RenderSVGRoot {svg} at (0,0) size 448x500
    55    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
    66      RenderSVGResourceFilter {filter} [id="blur"] [filterUnits=userSpaceOnUse] [primitiveUnits=userSpaceOnUse]
     
    170170                  chunk 1 text run 7 at (2.28,0.45) startOffset 6 endOffset 7 width 0.16: "h"
    171171            RenderSVGInlineText {#text} at (0,0) size 0x0
    172     RenderSVGContainer {use} at (0,0) size 0x0 [transform={m=((0.02,0.00)(0.00,0.02)) t=(0.00,0.00)}]
     172    RenderSVGContainer {use} at (0,0) size 448x498 [transform={m=((0.02,0.00)(0.00,0.02)) t=(0.00,0.00)}]
     173      RenderSVGContainer {g} at (0,0) size 448x498
     174        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     175        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     176          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     177            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     178            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     179            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textAnchor-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (48,25) size 347x433
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGText {text} at (144,25) size 162x18 contains 1 chunk(s)
    66      RenderSVGInlineText {#text} at (0,0) size 162x18
     
    161161                chunk 1 (end anchor) text run 1 at (204.00,30.00) startOffset 0 endOffset 18 width 116.00: "another text chunk"
    162162            RenderSVGInlineText {#text} at (0,0) size 0x0
    163     RenderSVGContainer {use} at (0,0) size 0x0
     163    RenderSVGContainer {use} at (0,0) size 448x498
     164      RenderSVGContainer {g} at (0,0) size 448x498
     165        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     166        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     167          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     168            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     169            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     170            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textDecoration-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (49,25) size 329x440
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
    66      RenderSVGResourcePattern {pattern} [id="svgPattern"] [patternUnits=userSpaceOnUse] [patternContentUnits=userSpaceOnUse]
     
    9696            RenderSVGInlineText {#text} at (154,0) size 49x23
    9797              chunk 1 text run 1 at (204.00,460.00) startOffset 0 endOffset 6 width 49.00: "ations"
    98     RenderSVGContainer {use} at (0,0) size 0x0
     98    RenderSVGContainer {use} at (0,0) size 448x498
     99      RenderSVGContainer {g} at (0,0) size 448x498
     100        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     101        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     102          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     103            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     104            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     105            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textEffect-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (28,15) size 395x388
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGContainer {g} at (28,15) size 395x388
    66      RenderSVGText {text} at (136,15) size 177x18 contains 1 chunk(s)
     
    5050        RenderSVGInlineText {#text} at (0,0) size 55x14
    5151          chunk 1 (middle anchor) text run 1 at (302.50,400.00) startOffset 0 endOffset 10 width 55.00: "(SVG font)"
    52     RenderSVGContainer {use} at (0,0) size 0x0
     52    RenderSVGContainer {use} at (0,0) size 448x498
     53      RenderSVGContainer {g} at (0,0) size 448x498
     54        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     55        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     56          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     57            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     58            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     59            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textEffect2-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (100,15) size 265x290
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGContainer {g} at (100,15) size 265x290
    66      RenderSVGText {text} at (158,15) size 133x18 contains 1 chunk(s)
     
    3333        RenderSVGInlineText {#text} at (0,0) size 55x14
    3434          chunk 1 text run 1 at (300.00,300.00) startOffset 0 endOffset 10 width 55.00: "(SVG font)"
    35     RenderSVGContainer {use} at (0,0) size 0x0
     35    RenderSVGContainer {use} at (0,0) size 448x498
     36      RenderSVGContainer {g} at (0,0) size 448x498
     37        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     38        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     39          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     40            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     41            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     42            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textEffect3-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (39,15) size 387x388
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGContainer {g} at (39,15) size 387x388
    66      RenderSVGText {text} at (99,15) size 251x18 contains 1 chunk(s)
     
    126126        RenderSVGInlineText {#text} at (0,0) size 55x14
    127127          chunk 1 (middle anchor) text run 1 at (302.50,400.00) startOffset 0 endOffset 10 width 55.00: "(SVG font)"
    128     RenderSVGContainer {use} at (0,0) size 0x0
     128    RenderSVGContainer {use} at (0,0) size 448x498
     129      RenderSVGContainer {g} at (0,0) size 448x498
     130        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     131        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     132          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     133            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     134            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     135            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textFeatures-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (45,36) size 405x453
     4  RenderSVGRoot {svg} at (0,0) size 450x498
    55    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
    66      RenderSVGResourceFilter {filter} [id="blur"] [filterUnits=userSpaceOnUse] [primitiveUnits=userSpaceOnUse]
     
    154154            RenderSVGInlineText {#text} at (0,0) size 129x46
    155155              chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 6 width 129.00: "Shadow"
    156     RenderSVGContainer {use} at (0,0) size 0x0
     156    RenderSVGContainer {use} at (0,0) size 448x498
     157      RenderSVGContainer {g} at (0,0) size 448x498
     158        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     159        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     160          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     161            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     162            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     163            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textLayout-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (40,36) size 370x421
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
    66      RenderSVGText {text} at (0,-14) size 44x18 contains 1 chunk(s)
     
    239239          RenderSVGInlineText {#text} at (0,0) size 239x9
    240240            chunk 1 text run 1 at (40.00,455.00) startOffset 0 endOffset 66 width 239.00: "textLength=\"350\" lengthAdjust=\"spacingAndGlyphs\" word-spacing=\"-5\""
    241     RenderSVGContainer {use} at (0,0) size 0x0
     241    RenderSVGContainer {use} at (0,0) size 448x498
     242      RenderSVGContainer {g} at (0,0) size 448x498
     243        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     244        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     245          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     246            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     247            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     248            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textLayout2-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (90,36) size 250x436
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
    66      RenderSVGText {text} at (0,-14) size 44x18 contains 1 chunk(s)
     
    129129          chunk 1 (middle anchor) text run 18 at (274.00,465.00) startOffset 17 endOffset 18 width 8.00: "h"
    130130          chunk 1 (middle anchor) text run 19 at (282.00,465.00) startOffset 18 endOffset 19 width 6.00: "s"
    131     RenderSVGContainer {use} at (0,0) size 0x0
     131    RenderSVGContainer {use} at (0,0) size 448x498
     132      RenderSVGContainer {g} at (0,0) size 448x498
     133        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     134        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     135          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     136            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     137            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     138            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textLength-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (49,5) size 352x489
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGText {text} at (144,5) size 162x18 contains 1 chunk(s)
    66      RenderSVGInlineText {#text} at (0,0) size 162x18
     
    162162            RenderSVGInlineText {#text} at (0,28) size 76x14
    163163              chunk 1 text run 1 at (160.00,68.80) startOffset 0 endOffset 15 width 76.00: "font-size=\"100\""
    164     RenderSVGContainer {use} at (0,0) size 0x0
     164    RenderSVGContainer {use} at (0,0) size 448x498
     165      RenderSVGContainer {g} at (0,0) size 448x498
     166        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     167        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     168          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     169            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     170            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     171            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textOnPath-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (9,25) size 430x418
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGContainer {g} at (9,25) size 430x418
    66      RenderSVGText {text} at (160,25) size 130x18 contains 1 chunk(s)
     
    349349          RenderSVGInlineText {#text} at (0,0) size 98x12
    350350            chunk 1 text run 1 at (15.00,40.00) startOffset 0 endOffset 26 width 98.00: "text before/after textPath"
    351     RenderSVGContainer {use} at (0,0) size 0x0
     351    RenderSVGContainer {use} at (0,0) size 448x498
     352      RenderSVGContainer {g} at (0,0) size 448x498
     353        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     354        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     355          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     356            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     357            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     358            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textOnPathSpaces-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (2,25) size 435x418
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGContainer {g} at (2,25) size 435x418
    66      RenderSVGText {text} at (95,25) size 259x18 contains 1 chunk(s)
     
    252252          RenderSVGInlineText {#text} at (0,0) size 84x12
    253253            chunk 1 text run 1 at (35.00,90.00) startOffset 0 endOffset 18 width 84.00: "\"spacingAndGlyphs\""
    254     RenderSVGContainer {use} at (0,0) size 0x0
     254    RenderSVGContainer {use} at (0,0) size 448x498
     255      RenderSVGContainer {g} at (0,0) size 448x498
     256        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     257        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     258          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     259            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     260            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     261            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textPosition-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (50,15) size 399x388
     4  RenderSVGRoot {svg} at (0,0) size 449x498
    55    RenderSVGText {text} at (178,15) size 93x18 contains 1 chunk(s)
    66      RenderSVGInlineText {#text} at (0,0) size 93x18
     
    136136        RenderSVGInlineText {#text} at (0,0) size 114x12
    137137          chunk 1 text run 1 at (240.00,400.00) startOffset 0 endOffset 22 width 114.00: "Empty Preceeding tspan"
    138     RenderSVGContainer {use} at (0,0) size 0x0
     138    RenderSVGContainer {use} at (0,0) size 448x498
     139      RenderSVGContainer {g} at (0,0) size 448x498
     140        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     141        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     142          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     143            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     144            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     145            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textPosition2-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (50,15) size 399x339
     4  RenderSVGRoot {svg} at (0,0) size 449x498
    55    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
    66    RenderSVGText {text} at (172,15) size 106x18 contains 1 chunk(s)
     
    113113          RenderSVGInlineText {#text} at (33,11) size 158x12
    114114            chunk 1 text run 1 at (273.00,351.00) startOffset 0 endOffset 34 width 158.00: "y=\"320\" style=\"letter-spacing:10\">"
    115     RenderSVGContainer {use} at (0,0) size 0x0
     115    RenderSVGContainer {use} at (0,0) size 448x498
     116      RenderSVGContainer {g} at (0,0) size 448x498
     117        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     118        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     119          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     120            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     121            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     122            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textProperties-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (0,36) size 430x434
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
    66      RenderSVGResourceFilter {filter} [id="gaussianBlur"] [filterUnits=userSpaceOnUse] [primitiveUnits=userSpaceOnUse]
     
    159159        RenderSVGInlineText {#text} at (0,0) size 148x18
    160160          chunk 1 (middle anchor) text run 1 at (226.00,465.00) startOffset 0 endOffset 22 width 148.00: "stroke-linecap=\"round\""
    161     RenderSVGContainer {use} at (0,0) size 0x0
     161    RenderSVGContainer {use} at (0,0) size 448x498
     162      RenderSVGContainer {g} at (0,0) size 448x498
     163        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     164        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     165          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     166            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     167            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     168            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textProperties2-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (12,26) size 438x307
     4  RenderSVGRoot {svg} at (0,0) size 450x498
    55    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
    66    RenderSVGContainer {g} at (12,26) size 438x307
     
    139139          RenderSVGInlineText {#text} at (33,0) size 67x19
    140140            chunk 1 text run 1 at (53.60,230.00) startOffset 0 endOffset 11 width 66.40: "finish text"
    141     RenderSVGContainer {use} at (0,0) size 0x0
     141    RenderSVGContainer {use} at (0,0) size 448x498
     142      RenderSVGContainer {g} at (0,0) size 448x498
     143        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     144        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     145          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     146            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     147            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     148            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/textStyles-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (0,36) size 450x397
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
    66      RenderSVGText {text} at (-22,-14) size 44x18 contains 1 chunk(s)
    77        RenderSVGInlineText {#text} at (0,0) size 44x18
    88          chunk 1 (middle anchor) text run 1 at (-22.00,0.00) startOffset 0 endOffset 6 width 44.00: "sample"
    9     RenderSVGContainer {g} at (0,36) size 450x397
     9    RenderSVGContainer {g} at (32,36) size 382x392
    1010      RenderSVGText {text} at (135,36) size 180x17 contains 1 chunk(s)
    1111        RenderSVGInlineText {#text} at (0,0) size 180x17
     
    1414        RenderSVGInlineText {#text} at (0,0) size 82x12
    1515          chunk 1 (middle anchor) text run 1 at (184.00,75.00) startOffset 0 endOffset 19 width 82.00: "Standard Font Faces"
    16       RenderSVGContainer {g} at (0,82) size 252x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,110.00)}]
     16      RenderSVGContainer {g} at (40,82) size 120x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,110.00)}]
    1717        RenderSVGContainer {use} at (58,82) size 84x36
    1818          RenderSVGText {text} at (-42,-28) size 84x35 contains 1 chunk(s)
    1919            RenderSVGInlineText {#text} at (0,0) size 84x35
    2020              chunk 1 (middle anchor) text run 1 at (-42.00,0.00) startOffset 0 endOffset 6 width 84.00: "sample"
    21         RenderSVGText {text} at (-152,-13) size 304x35 contains 1 chunk(s)
    22           RenderSVGInlineText {#text} at (0,0) size 304x35
    23             chunk 1 (middle anchor) text run 1 at (-152.00,15.00) startOffset 0 endOffset 24 width 304.00: "SansSerif, normal weight"
    24       RenderSVGContainer {g} at (133,82) size 184x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(225.00,110.00)}]
     21        RenderSVGText {text} at (-60,4) size 120x14 contains 1 chunk(s)
     22          RenderSVGInlineText {#text} at (0,0) size 120x14
     23            chunk 1 (middle anchor) text run 1 at (-60.00,15.00) startOffset 0 endOffset 24 width 120.00: "SansSerif, normal weight"
     24      RenderSVGContainer {g} at (180,82) size 90x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(225.00,110.00)}]
    2525        RenderSVGContainer {use} at (180,82) size 90x36
    2626          RenderSVGText {text} at (-45,-28) size 90x35 contains 1 chunk(s)
    2727            RenderSVGInlineText {#text} at (0,0) size 90x35
    2828              chunk 1 (middle anchor) text run 1 at (-45.00,0.00) startOffset 0 endOffset 6 width 90.00: "sample"
    29         RenderSVGText {text} at (-92,-13) size 184x35 contains 1 chunk(s)
    30           RenderSVGInlineText {#text} at (0,0) size 184x35
    31             chunk 1 (middle anchor) text run 1 at (-92.00,15.00) startOffset 0 endOffset 15 width 184.00: "SansSerif, bold"
    32       RenderSVGContainer {g} at (240,82) size 210x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,110.00)}]
     29        RenderSVGText {text} at (-37,4) size 73x14 contains 1 chunk(s)
     30          RenderSVGInlineText {#text} at (0,0) size 73x14
     31            chunk 1 (middle anchor) text run 1 at (-36.50,15.00) startOffset 0 endOffset 15 width 73.00: "SansSerif, bold"
     32      RenderSVGContainer {g} at (306,82) size 88x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,110.00)}]
    3333        RenderSVGContainer {use} at (307,82) size 86x36
    3434          RenderSVGText {text} at (-43,-28) size 85x35 contains 1 chunk(s)
    3535            RenderSVGInlineText {#text} at (0,0) size 85x35
    3636              chunk 1 (middle anchor) text run 1 at (-42.50,0.00) startOffset 0 endOffset 6 width 85.00: "sample"
    37         RenderSVGText {text} at (-110,-13) size 220x35 contains 1 chunk(s)
    38           RenderSVGInlineText {#text} at (0,0) size 220x35
    39             chunk 1 (middle anchor) text run 1 at (-110.00,15.00) startOffset 0 endOffset 18 width 220.00: "SansSerif, oblique"
    40       RenderSVGContainer {g} at (0,132) size 224x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,160.00)}]
     37        RenderSVGText {text} at (-44,4) size 87x14 contains 1 chunk(s)
     38          RenderSVGInlineText {#text} at (0,0) size 87x14
     39            chunk 1 (middle anchor) text run 1 at (-43.50,15.00) startOffset 0 endOffset 18 width 87.00: "SansSerif, oblique"
     40      RenderSVGContainer {g} at (51,132) size 98x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,160.00)}]
    4141        RenderSVGContainer {use} at (58,132) size 84x36
    4242          RenderSVGText {text} at (-42,-28) size 84x35 contains 1 chunk(s)
    4343            RenderSVGInlineText {#text} at (0,0) size 84x35
    4444              chunk 1 (middle anchor) text run 1 at (-42.00,0.00) startOffset 0 endOffset 6 width 84.00: "sample"
    45         RenderSVGText {text} at (-124,-13) size 247x35 contains 1 chunk(s)
    46           RenderSVGInlineText {#text} at (0,0) size 247x35
    47             chunk 1 (middle anchor) text run 1 at (-123.50,15.00) startOffset 0 endOffset 20 width 247.00: "Serif, normal weight"
    48       RenderSVGContainer {g} at (161,132) size 128x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(225.00,160.00)}]
     45        RenderSVGText {text} at (-49,4) size 97x14 contains 1 chunk(s)
     46          RenderSVGInlineText {#text} at (0,0) size 97x14
     47            chunk 1 (middle anchor) text run 1 at (-48.50,15.00) startOffset 0 endOffset 20 width 97.00: "Serif, normal weight"
     48      RenderSVGContainer {g} at (180,132) size 90x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(225.00,160.00)}]
    4949        RenderSVGContainer {use} at (180,132) size 90x36
    5050          RenderSVGText {text} at (-45,-28) size 90x35 contains 1 chunk(s)
    5151            RenderSVGInlineText {#text} at (0,0) size 90x35
    5252              chunk 1 (middle anchor) text run 1 at (-45.00,0.00) startOffset 0 endOffset 6 width 90.00: "sample"
    53         RenderSVGText {text} at (-64,-13) size 127x35 contains 1 chunk(s)
    54           RenderSVGInlineText {#text} at (0,0) size 127x35
    55             chunk 1 (middle anchor) text run 1 at (-63.50,15.00) startOffset 0 endOffset 11 width 127.00: "Serif, bold"
    56       RenderSVGContainer {g} at (268,132) size 164x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,160.00)}]
     53        RenderSVGText {text} at (-25,4) size 50x14 contains 1 chunk(s)
     54          RenderSVGInlineText {#text} at (0,0) size 50x14
     55            chunk 1 (middle anchor) text run 1 at (-25.00,15.00) startOffset 0 endOffset 11 width 50.00: "Serif, bold"
     56      RenderSVGContainer {g} at (307,132) size 86x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,160.00)}]
    5757        RenderSVGContainer {use} at (307,132) size 86x36
    5858          RenderSVGText {text} at (-43,-28) size 85x35 contains 1 chunk(s)
    5959            RenderSVGInlineText {#text} at (0,0) size 85x35
    6060              chunk 1 (middle anchor) text run 1 at (-42.50,0.00) startOffset 0 endOffset 6 width 85.00: "sample"
    61         RenderSVGText {text} at (-82,-13) size 163x35 contains 1 chunk(s)
    62           RenderSVGInlineText {#text} at (0,0) size 163x35
    63             chunk 1 (middle anchor) text run 1 at (-81.50,15.00) startOffset 0 endOffset 14 width 163.00: "Serif, oblique"
    64       RenderSVGContainer {g} at (0,182) size 271x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,210.00)}]
     61        RenderSVGText {text} at (-32,4) size 64x14 contains 1 chunk(s)
     62          RenderSVGInlineText {#text} at (0,0) size 64x14
     63            chunk 1 (middle anchor) text run 1 at (-32.00,15.00) startOffset 0 endOffset 14 width 64.00: "Serif, oblique"
     64      RenderSVGContainer {g} at (32,182) size 136x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,210.00)}]
    6565        RenderSVGContainer {use} at (58,182) size 84x36
    6666          RenderSVGText {text} at (-42,-28) size 84x35 contains 1 chunk(s)
    6767            RenderSVGInlineText {#text} at (0,0) size 84x35
    6868              chunk 1 (middle anchor) text run 1 at (-42.00,0.00) startOffset 0 endOffset 6 width 84.00: "sample"
    69         RenderSVGText {text} at (-171,-13) size 342x35 contains 1 chunk(s)
    70           RenderSVGInlineText {#text} at (0,0) size 342x35
    71             chunk 1 (middle anchor) text run 1 at (-171.00,15.00) startOffset 0 endOffset 25 width 342.00: "Monospaced, normal weight"
    72       RenderSVGContainer {g} at (114,182) size 222x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(225.00,210.00)}]
     69        RenderSVGText {text} at (-68,4) size 135x14 contains 1 chunk(s)
     70          RenderSVGInlineText {#text} at (0,0) size 135x14
     71            chunk 1 (middle anchor) text run 1 at (-67.50,15.00) startOffset 0 endOffset 25 width 135.00: "Monospaced, normal weight"
     72      RenderSVGContainer {g} at (180,182) size 90x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(225.00,210.00)}]
    7373        RenderSVGContainer {use} at (180,182) size 90x36
    7474          RenderSVGText {text} at (-45,-28) size 90x35 contains 1 chunk(s)
    7575            RenderSVGInlineText {#text} at (0,0) size 90x35
    7676              chunk 1 (middle anchor) text run 1 at (-45.00,0.00) startOffset 0 endOffset 6 width 90.00: "sample"
    77         RenderSVGText {text} at (-111,-13) size 222x35 contains 1 chunk(s)
    78           RenderSVGInlineText {#text} at (0,0) size 222x35
    79             chunk 1 (middle anchor) text run 1 at (-111.00,15.00) startOffset 0 endOffset 16 width 222.00: "Monospaced, bold"
    80       RenderSVGContainer {g} at (221,182) size 229x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,210.00)}]
     77        RenderSVGText {text} at (-44,4) size 88x14 contains 1 chunk(s)
     78          RenderSVGInlineText {#text} at (0,0) size 88x14
     79            chunk 1 (middle anchor) text run 1 at (-44.00,15.00) startOffset 0 endOffset 16 width 88.00: "Monospaced, bold"
     80      RenderSVGContainer {g} at (299,182) size 102x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,210.00)}]
    8181        RenderSVGContainer {use} at (307,182) size 86x36
    8282          RenderSVGText {text} at (-43,-28) size 85x35 contains 1 chunk(s)
    8383            RenderSVGInlineText {#text} at (0,0) size 85x35
    8484              chunk 1 (middle anchor) text run 1 at (-42.50,0.00) startOffset 0 endOffset 6 width 85.00: "sample"
    85         RenderSVGText {text} at (-129,-13) size 258x35 contains 1 chunk(s)
    86           RenderSVGInlineText {#text} at (0,0) size 258x35
    87             chunk 1 (middle anchor) text run 1 at (-129.00,15.00) startOffset 0 endOffset 19 width 258.00: "Monospaced, oblique"
    88       RenderSVGContainer {g} at (49,232) size 102x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,260.00)}]
     85        RenderSVGText {text} at (-51,4) size 102x14 contains 1 chunk(s)
     86          RenderSVGInlineText {#text} at (0,0) size 102x14
     87            chunk 1 (middle anchor) text run 1 at (-51.00,15.00) startOffset 0 endOffset 19 width 102.00: "Monospaced, oblique"
     88      RenderSVGContainer {g} at (58,232) size 84x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,260.00)}]
    8989        RenderSVGContainer {use} at (58,232) size 84x36
    9090          RenderSVGText {text} at (-42,-28) size 84x35 contains 1 chunk(s)
    9191            RenderSVGInlineText {#text} at (0,0) size 84x35
    9292              chunk 1 (middle anchor) text run 1 at (-42.00,0.00) startOffset 0 endOffset 6 width 84.00: "sample"
    93         RenderSVGText {text} at (-51,-13) size 102x35 contains 1 chunk(s)
    94           RenderSVGInlineText {#text} at (0,0) size 102x35
    95             chunk 1 (middle anchor) text run 1 at (-51.00,15.00) startOffset 0 endOffset 9 width 102.00: "(default)"
    96       RenderSVGContainer {g} at (97,232) size 256x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(225.00,260.00)}]
     93        RenderSVGText {text} at (-20,4) size 40x14 contains 1 chunk(s)
     94          RenderSVGInlineText {#text} at (0,0) size 40x14
     95            chunk 1 (middle anchor) text run 1 at (-20.00,15.00) startOffset 0 endOffset 9 width 40.00: "(default)"
     96      RenderSVGContainer {g} at (175,232) size 100x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(225.00,260.00)}]
    9797        RenderSVGContainer {use} at (182,232) size 86x36
    9898          RenderSVGText {text} at (-43,-28) size 86x35 contains 1 chunk(s)
    9999            RenderSVGInlineText {#text} at (0,0) size 86x35
    100100              chunk 1 (middle anchor) text run 1 at (-43.00,0.00) startOffset 0 endOffset 6 width 86.00: "sample"
    101         RenderSVGText {text} at (-128,-13) size 256x35 contains 1 chunk(s)
    102           RenderSVGInlineText {#text} at (0,0) size 256x35
    103             chunk 1 (middle anchor) text run 1 at (-128.00,15.00) startOffset 0 endOffset 22 width 256.00: "default, bold, oblique"
    104       RenderSVGContainer {g} at (196,231) size 254x52 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,260.00)}]
     101        RenderSVGText {text} at (-50,4) size 100x14 contains 1 chunk(s)
     102          RenderSVGInlineText {#text} at (0,0) size 100x14
     103            chunk 1 (middle anchor) text run 1 at (-50.00,15.00) startOffset 0 endOffset 22 width 100.00: "default, bold, oblique"
     104      RenderSVGContainer {g} at (289,231) size 122x47 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,260.00)}]
    105105        RenderSVGContainer {use} at (307,231) size 86x38
    106106          RenderSVGText {text} at (-42,-28) size 84x35 contains 1 chunk(s)
    107107            RenderSVGInlineText {#text} at (0,0) size 84x35
    108108              chunk 1 (middle anchor) text run 1 at (-42.00,0.00) startOffset 0 endOffset 6 width 84.00: "sample"
    109         RenderSVGText {text} at (-154,-13) size 308x35 contains 1 chunk(s)
    110           RenderSVGInlineText {#text} at (0,0) size 308x35
    111             chunk 1 (middle anchor) text run 1 at (-154.00,15.00) startOffset 0 endOffset 25 width 308.00: "stroke-width=1, fill=none"
     109        RenderSVGText {text} at (-61,4) size 122x14 contains 1 chunk(s)
     110          RenderSVGInlineText {#text} at (0,0) size 122x14
     111            chunk 1 (middle anchor) text run 1 at (-61.00,15.00) startOffset 0 endOffset 25 width 122.00: "stroke-width=1, fill=none"
    112112      RenderSVGText {text} at (181,300) size 88x12 contains 1 chunk(s)
    113113        RenderSVGInlineText {#text} at (0,0) size 88x12
     
    116116        RenderSVGInlineText {#text} at (0,0) size 193x12
    117117          chunk 1 (middle anchor) text run 1 at (128.50,325.00) startOffset 0 endOffset 49 width 193.00: "(Not all typefaces are available on all systems.)"
    118       RenderSVGContainer {g} at (58,332) size 84x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,360.00)}]
     118      RenderSVGContainer {g} at (58,332) size 84x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,360.00)}]
    119119        RenderSVGContainer {use} at (58,332) size 84x36
    120120          RenderSVGText {text} at (-42,-28) size 84x35 contains 1 chunk(s)
    121121            RenderSVGInlineText {#text} at (0,0) size 84x35
    122122              chunk 1 (middle anchor) text run 1 at (-42.00,0.00) startOffset 0 endOffset 6 width 84.00: "sample"
    123         RenderSVGText {text} at (-37,-13) size 74x35 contains 1 chunk(s)
    124           RenderSVGInlineText {#text} at (0,0) size 74x35
    125             chunk 1 (middle anchor) text run 1 at (-37.00,15.00) startOffset 0 endOffset 5 width 74.00: "Times"
    126       RenderSVGContainer {g} at (171,329) size 108x54 [transform={m=((1.00,0.00)(0.00,1.00)) t=(225.00,360.00)}]
     123        RenderSVGText {text} at (-15,4) size 29x14 contains 1 chunk(s)
     124          RenderSVGInlineText {#text} at (0,0) size 29x14
     125            chunk 1 (middle anchor) text run 1 at (-14.50,15.00) startOffset 0 endOffset 5 width 29.00: "Times"
     126      RenderSVGContainer {g} at (171,329) size 108x49 [transform={m=((1.00,0.00)(0.00,1.00)) t=(225.00,360.00)}]
    127127        RenderSVGContainer {use} at (171,329) size 108x38
    128128          RenderSVGText {text} at (-54,-31) size 108x37 contains 1 chunk(s)
    129129            RenderSVGInlineText {#text} at (0,0) size 108x37
    130130              chunk 1 (middle anchor) text run 1 at (-54.00,0.00) startOffset 0 endOffset 6 width 108.00: "sample"
    131         RenderSVGText {text} at (-51,-13) size 101x35 contains 1 chunk(s)
    132           RenderSVGInlineText {#text} at (0,0) size 101x35
    133             chunk 1 (middle anchor) text run 1 at (-50.50,15.00) startOffset 0 endOffset 7 width 101.00: "Verdana"
    134       RenderSVGContainer {g} at (293,331) size 114x52 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,360.00)}]
     131        RenderSVGText {text} at (-20,4) size 40x14 contains 1 chunk(s)
     132          RenderSVGInlineText {#text} at (0,0) size 40x14
     133            chunk 1 (middle anchor) text run 1 at (-20.00,15.00) startOffset 0 endOffset 7 width 40.00: "Verdana"
     134      RenderSVGContainer {g} at (301,331) size 98x47 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,360.00)}]
    135135        RenderSVGContainer {use} at (301,331) size 98x36
    136136          RenderSVGText {text} at (-49,-29) size 98x35 contains 1 chunk(s)
    137137            RenderSVGInlineText {#text} at (0,0) size 98x35
    138138              chunk 1 (middle anchor) text run 1 at (-49.00,0.00) startOffset 0 endOffset 6 width 98.00: "sample"
    139         RenderSVGText {text} at (-57,-13) size 113x35 contains 1 chunk(s)
    140           RenderSVGInlineText {#text} at (0,0) size 113x35
    141             chunk 1 (middle anchor) text run 1 at (-56.50,15.00) startOffset 0 endOffset 9 width 113.00: "Helvetica"
    142       RenderSVGContainer {g} at (0,382) size 208x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,410.00)}]
     139        RenderSVGText {text} at (-22,4) size 44x14 contains 1 chunk(s)
     140          RenderSVGInlineText {#text} at (0,0) size 44x14
     141            chunk 1 (middle anchor) text run 1 at (-22.00,15.00) startOffset 0 endOffset 9 width 44.00: "Helvetica"
     142      RenderSVGContainer {g} at (51,382) size 98x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,410.00)}]
    143143        RenderSVGText {text} at (-49,-28) size 98x34 contains 1 chunk(s)
    144144          RenderSVGInline {tref} at (0,0) size 98x34
    145145            RenderSVGInlineText {#text} at (0,0) size 98x34
    146146              chunk 1 (middle anchor) text run 1 at (-49.00,0.00) startOffset 0 endOffset 6 width 98.00: "sample"
    147         RenderSVGText {text} at (-108,-13) size 216x35 contains 1 chunk(s)
    148           RenderSVGInlineText {#text} at (0,0) size 216x35
    149             chunk 1 (middle anchor) text run 1 at (-108.00,15.00) startOffset 0 endOffset 18 width 216.00: "Arial (underlined)"
    150       RenderSVGContainer {g} at (179,379) size 92x54 [transform={m=((1.00,0.00)(0.00,1.00)) t=(225.00,410.00)}]
     147        RenderSVGText {text} at (-43,4) size 85x14 contains 1 chunk(s)
     148          RenderSVGInlineText {#text} at (0,0) size 85x14
     149            chunk 1 (middle anchor) text run 1 at (-42.50,15.00) startOffset 0 endOffset 18 width 85.00: "Arial (underlined)"
     150      RenderSVGContainer {g} at (179,379) size 92x49 [transform={m=((1.00,0.00)(0.00,1.00)) t=(225.00,410.00)}]
    151151        RenderSVGContainer {use} at (179,379) size 92x38
    152152          RenderSVGText {text} at (-46,-31) size 91x37 contains 1 chunk(s)
    153153            RenderSVGInlineText {#text} at (0,0) size 91x37
    154154              chunk 1 (middle anchor) text run 1 at (-45.50,0.00) startOffset 0 endOffset 6 width 91.00: "sample"
    155         RenderSVGText {text} at (-41,-13) size 82x35 contains 1 chunk(s)
    156           RenderSVGInlineText {#text} at (0,0) size 82x35
    157             chunk 1 (middle anchor) text run 1 at (-41.00,15.00) startOffset 0 endOffset 6 width 82.00: "Impact"
    158       RenderSVGContainer {g} at (189,382) size 261x51 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,410.00)}]
     155        RenderSVGText {text} at (-16,4) size 32x14 contains 1 chunk(s)
     156          RenderSVGInlineText {#text} at (0,0) size 32x14
     157            chunk 1 (middle anchor) text run 1 at (-16.00,15.00) startOffset 0 endOffset 6 width 32.00: "Impact"
     158      RenderSVGContainer {g} at (286,382) size 128x46 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,410.00)}]
    159159        RenderSVGText {text} at (-42,-28) size 84x35 contains 1 chunk(s)
    160160          RenderSVGInline {tref} at (0,0) size 84x35
    161161            RenderSVGInlineText {#text} at (0,0) size 84x35
    162162              chunk 1 (middle anchor) text run 1 at (-42.00,0.00) startOffset 0 endOffset 6 width 84.00: "sample"
    163         RenderSVGText {text} at (-161,-13) size 321x35 contains 1 chunk(s)
    164           RenderSVGInlineText {#text} at (0,0) size 321x35
    165             chunk 1 (middle anchor) text run 1 at (-160.50,15.00) startOffset 0 endOffset 25 width 321.00: "AvantGarde (line-through)"
    166     RenderSVGContainer {use} at (0,0) size 0x0
     163        RenderSVGText {text} at (-64,4) size 127x14 contains 1 chunk(s)
     164          RenderSVGInlineText {#text} at (0,0) size 127x14
     165            chunk 1 (middle anchor) text run 1 at (-63.50,15.00) startOffset 0 endOffset 25 width 127.00: "AvantGarde (line-through)"
     166    RenderSVGContainer {use} at (0,0) size 448x498
     167      RenderSVGContainer {g} at (0,0) size 448x498
     168        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     169        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     170          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     171            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     172            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     173            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/verticalText-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (20,25) size 410x470
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
    66      RenderSVGPath {path} at (14,0) size 317x45 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF]}] [data="M 100 200 C 200 100 300 0 400 100 C 500 200 600 300 700 200 C 800 100 900 0 1000 100 C 1100 200 1200 300 1300 200 C 1400 100 1500 0 1600 100 C 1700 200 1800 300 1900 200 C 2000 100 2100 0 2200 100"]
     
    268268              chunk 1 (vertical) text run 25 at (298.36,17.42) startOffset 24 endOffset 25 height 14.00: "\x{50CF}"
    269269          RenderSVGInlineText {#text} at (0,0) size 0x0
    270     RenderSVGContainer {use} at (0,0) size 0x0
     270    RenderSVGContainer {use} at (0,0) size 448x498
     271      RenderSVGContainer {g} at (0,0) size 448x498
     272        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     273        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     274          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     275            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     276            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     277            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/batik/text/verticalTextOnPath-expected.txt

    r109097 r110676  
    22  RenderView at (0,0) size 800x600
    33layer at (0,0) size 450x500
    4   RenderSVGRoot {svg} at (9,25) size 438x458
     4  RenderSVGRoot {svg} at (0,0) size 448x498
    55    RenderSVGContainer {g} at (9,25) size 438x458
    66      RenderSVGText {text} at (134,25) size 182x18 contains 1 chunk(s)
     
    390390          RenderSVGInlineText {#text} at (0,0) size 100x12
    391391            chunk 1 text run 1 at (0.00,110.00) startOffset 0 endOffset 24 width 100.00: "glyph-orientation=\"auto\""
    392     RenderSVGContainer {use} at (0,0) size 0x0
     392    RenderSVGContainer {use} at (0,0) size 448x498
     393      RenderSVGContainer {g} at (0,0) size 448x498
     394        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
     395        RenderSVGContainer {g} at (418,466) size 28x30 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
     396          RenderSVGViewportContainer {svg} at (418,466) size 28x30
     397            RenderSVGPath {path} at (418,468) size 14x19 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
     398            RenderSVGPath {path} at (432,466) size 14x17 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
     399            RenderSVGPath {path} at (425,484) size 16x12 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
  • trunk/LayoutTests/platform/mac/svg/hixie/error/014-expected.txt

    r109097 r110676  
    44  RenderSVGRoot {svg} at (0,0) size 200x200
    55    RenderSVGRect {rect} at (0,0) size 200x200 [fill={[type=SOLID] [color=#008000]}] [x=0.00] [y=0.00] [width=200.00] [height=200.00]
    6     RenderSVGContainer {use} at (0,0) size 0x0
     6    RenderSVGContainer {use} at (0,0) size 200x200
     7      RenderSVGContainer {g} at (0,0) size 200x200
     8        RenderSVGRect {rect} at (0,0) size 200x200 [fill={[type=SOLID] [color=#008000]}] [x=0.00] [y=0.00] [width=200.00] [height=200.00]
  • trunk/LayoutTests/platform/mac/svg/hixie/use/002-expected.txt

    r109097 r110676  
    44  RenderSVGRoot {svg} at (0,0) size 200x200
    55    RenderSVGRect {rect} at (0,0) size 200x200 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=200.00] [height=200.00]
    6     RenderSVGContainer {use} at (0,0) size 0x0
     6    RenderSVGContainer {use} at (0,0) size 200x200
     7      RenderSVGContainer {g} at (0,0) size 200x200
     8        RenderSVGRect {rect} at (0,0) size 200x200 [fill={[type=SOLID] [color=#008000]}] [x=0.00] [y=0.00] [width=200.00] [height=200.00]
  • trunk/LayoutTests/svg/batik/filters/filterRegions.svg

    r28763 r110676  
    5353                fill: black;
    5454                font-family: Verdana;
    55                 font-size: 10;
     55                font-size: 10px;
    5656                text-anchor: middle;
    5757            }
  • trunk/LayoutTests/svg/batik/text/textProperties.svg

    r28763 r110676  
    3838
    3939     <style type="text/css"><![CDATA[
    40        .Caption { font-size: 8; font-family: dialog; font-weight: normal;
     40       .Caption { font-size: 8px; font-family: dialog; font-weight: normal;
    4141                  font-style: normal; stroke: none; stroke-width: 0;
    4242                  fill: black } ]]>
  • trunk/LayoutTests/svg/batik/text/textProperties2.svg

    r28763 r110676  
    5050
    5151    <g id="testContent">
    52         <text class="title" x="50%" y="40" font-size="15" >
     52        <text class="title" x="50%" y="40" font-size="15px" >
    5353            Text display and visibility.</text>
    5454
  • trunk/LayoutTests/svg/batik/text/textStyles.svg

    r28763 r110676  
    2424<!--                                                                           -->
    2525<!-- @author bill.haneman@ireland.sun.com                                      -->
    26 <!-- @version $Id: textStyles.svg,v 1.5 2004/08/18 07:12:23 vhardy Exp $                                                             -->
     26<!-- @version $Id: textStyles.svg,v 1.5 2004/08/18 07:12:23 vhardy Exp $       -->
    2727<!-- ========================================================================= -->
    2828<?xml-stylesheet type="text/css" href="../resources/test.css" ?>
     
    3636    <defs>
    3737     <style type="text/css"><![CDATA[
    38        .Caption { font-size: 8; font-family: dialog; font-weight: normal;
     38       .Caption { font-size: 12px; font-family: dialog; font-weight: normal;
    3939                  font-style: normal; stroke: none; stroke-width: 0;
    4040                  fill: black } ]]>
     
    125125        <g transform="translate(100, 110)" class="SansSerifPlain">
    126126            <use xlink:href="#sample"/>
    127             <text y="15" class="Caption">SansSerif, normal weight</text>
     127            <text font-size="15" y="15" class="Caption">SansSerif, normal weight</text>
    128128        </g>
    129129
    130130        <g transform="translate(225, 110)" class="SansSerifBold">
    131131            <use xlink:href="#sample"/>
    132             <text y="15" class="Caption">SansSerif, bold</text>
     132            <text font-size="15"  y="15" class="Caption">SansSerif, bold</text>
    133133        </g>
    134134
    135135        <g transform="translate(350, 110)" class="SansSerifOblique">
    136136            <use xlink:href="#sample"/>
    137             <text y="15" class="Caption">SansSerif, oblique</text>
     137            <text  font-size="15" y="15" class="Caption">SansSerif, oblique</text>
    138138        </g>
    139139
  • trunk/LayoutTests/svg/custom/resources/rgb.svg

    r80516 r110676  
    1 <svg width="192" height="64" xmlns="http://www.w3.org/2000/svg">
    2   <rect x="0" y="0" width="64" height="64" fill="#c00"/>
    3   <rect x="64" y="0" width="64" height="64" fill="#090"/>
    4   <rect x="128" y="0" width="64" height="64" fill="#00f"/>
     1<svg id="svg-root" width="192" height="64" xmlns="http://www.w3.org/2000/svg">
     2  <g id="RGB">
     3    <rect id="R" x="0" y="0" width="64" height="64" fill="#c00"/>
     4    <rect id="G" x="64" y="0" width="64" height="64" fill="#090"/>
     5    <rect id="B" x="128" y="0" width="64" height="64" fill="#00f"/>
     6  </g>
    57</svg>
  • trunk/Source/WebCore/ChangeLog

    r110673 r110676  
     12012-03-14  Renata Hodovan  <reni@webkit.org>
     2
     3        External <use> xlink:href references do not work
     4        https://bugs.webkit.org/show_bug.cgi?id=12499
     5
     6        Reviewed by Nikolas Zimmermann.
     7
     8        This is a follow-up patch after r108785.
     9        In this patch we bind the previously introduced CachedSVGDocument class
     10        into the caching mechanism of SVGUseElement. The mode how external resources
     11        are handled is similar to the processing of internal ones. We build the instance
     12        and shadow tree the same way but we have to keep in mind that the requested resources
     13        maybe not loaded yet. We can check it with cachedDocumentIsStillLoading() function.
     14
     15        SVGURIReference::targetElementFromIRIString() also need to be extended. The baseURI
     16        computation needs to take the referenced documents URL into account, instead of the current documents.
     17
     18        The patch affects a lot of tests which have external resources especially in svg/batik. Because
     19        of the size of that test refactor they will be commited in a follow-up patch.
     20
     21        Tests: svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t.svg
     22               svg/W3C-SVG-1.2-Tiny/struct-use-recursion-02-t.svg
     23               svg/W3C-SVG-1.2-Tiny/struct-use-recursion-03-t.svg
     24               svg/custom/use-extern-href.svg
     25               svg/custom/use-referencing-an-image-expected.svg
     26               svg/custom/use-referencing-an-image.svg
     27               svg/custom/use-referencing-indirectly-itself-expected.svg
     28               svg/custom/use-referencing-indirectly-itself.svg
     29               svg/custom/use-referencing-itself-expected.svg
     30               svg/custom/use-referencing-itself.svg
     31               svg/dynamic-updates/SVGUseElement-dom-href1-attr.html
     32               svg/dynamic-updates/SVGUseElement-dom-href2-attr.html
     33               svg/dynamic-updates/SVGUseElement-svgdom-href1-prop.html
     34               svg/dynamic-updates/SVGUseElement-svgdom-href2-prop.html
     35
     36        * loader/cache/CachedResourceLoader.cpp:
     37        (WebCore):
     38        (WebCore::CachedResourceLoader::requestSVGDocument):
     39        * loader/cache/CachedResourceLoader.h:
     40        (WebCore):
     41        (CachedResourceLoader):
     42        * page/ContentSecurityPolicy.h:
     43        * platform/KURL.cpp:
     44        (WebCore::equalIgnoringFragmentIdentifier):
     45        * platform/network/chromium/ResourceRequest.h:
     46        * svg/SVGURIReference.cpp:
     47        (WebCore::urlFromIRIStringWithFragmentIdentifier):
     48        (WebCore):
     49        (WebCore::SVGURIReference::targetElementFromIRIString):
     50        * svg/SVGURIReference.h:
     51        (SVGURIReference):
     52        (WebCore::SVGURIReference::isExternalURIReference):
     53        * svg/SVGUseElement.cpp:
     54        (WebCore::SVGUseElement::SVGUseElement):
     55        (WebCore::SVGUseElement::~SVGUseElement):
     56        (WebCore):
     57        (WebCore::SVGUseElement::referencedDocument):
     58        (WebCore::SVGUseElement::externalDocument):
     59        (WebCore::SVGUseElement::svgAttributeChanged):
     60        (WebCore::dumpInstanceTree):
     61        (WebCore::SVGUseElement::buildPendingResource):
     62        (WebCore::SVGUseElement::buildShadowAndInstanceTree):
     63        (WebCore::SVGUseElement::hasCycleUseReferencing):
     64        (WebCore::SVGUseElement::expandUseElementsInShadowTree):
     65        (WebCore::SVGUseElement::expandSymbolElementsInShadowTree):
     66        (WebCore::SVGUseElement::notifyFinished):
     67        (WebCore::SVGUseElement::cachedDocumentIsStillLoading):
     68        (WebCore::SVGUseElement::instanceTreeIsLoading):
     69        * svg/SVGUseElement.h:
     70        (WebCore):
     71        (SVGUseElement):
     72
    1732012-03-14  Peter Rybin  <peter.rybin@gmail.com>
    274
  • trunk/Source/WebCore/loader/cache/CachedResourceLoader.cpp

    r110608 r110676  
    228228{
    229229    return static_cast<CachedXSLStyleSheet*>(requestResource(CachedResource::XSLStyleSheet, request, String(), defaultCachedResourceOptions()));
     230}
     231#endif
     232
     233#if ENABLE(SVG)
     234CachedSVGDocument* CachedResourceLoader::requestSVGDocument(ResourceRequest& request)
     235{
     236    return static_cast<CachedSVGDocument*>(requestResource(CachedResource::SVGDocumentResource, request, request.url(), defaultCachedResourceOptions()));
    230237}
    231238#endif
  • trunk/Source/WebCore/loader/cache/CachedResourceLoader.h

    r100416 r110676  
    4141
    4242class CachedCSSStyleSheet;
     43class CachedSVGDocument;
    4344class CachedFont;
    4445class CachedImage;
     
    7071    CachedRawResource* requestRawResource(ResourceRequest&, const ResourceLoaderOptions&);
    7172
     73#if ENABLE(SVG)
     74    CachedSVGDocument* requestSVGDocument(ResourceRequest&);
     75#endif
    7276#if ENABLE(XSLT)
    7377    CachedXSLStyleSheet* requestXSLStyleSheet(ResourceRequest&);
  • trunk/Source/WebCore/svg/SVGURIReference.cpp

    • Property svn:executable set to *
    r106769 r110676  
    6363}
    6464
    65 Element* SVGURIReference::targetElementFromIRIString(const String& iri, Document* document, String* fragmentIdentifier)
     65static inline KURL urlFromIRIStringWithFragmentIdentifier(const String& url, Document* document, String& fragmentIdentifier)
    6666{
    67     String id = fragmentIdentifierFromIRIString(iri, document);
     67    ASSERT(document);
     68    size_t startOfFragmentIdentifier = url.find('#');
     69    if (startOfFragmentIdentifier == notFound)
     70        return KURL();
     71
     72    // Exclude the '#' character when determining the fragmentIdentifier.
     73    fragmentIdentifier = url.substring(startOfFragmentIdentifier + 1);
     74    if (startOfFragmentIdentifier) {
     75        KURL base(document->baseURI(), url.substring(0, startOfFragmentIdentifier));
     76        return KURL(base, url.substring(startOfFragmentIdentifier));
     77    }
     78
     79    return KURL(document->baseURI(), url.substring(startOfFragmentIdentifier));
     80}
     81
     82Element* SVGURIReference::targetElementFromIRIString(const String& iri, Document* document, String* fragmentIdentifier, Document* externalDocument)
     83{
     84    // If there's no fragment identifier contained within the IRI string, we can't lookup an element.
     85    String id;
     86    KURL url = urlFromIRIStringWithFragmentIdentifier(iri, document, id);
     87    if (url == KURL())
     88        return 0;
     89
     90    // If we're requesting an external resources, and externalDocument is non-zero, the load already succeeded.
     91    // Go ahead and check if the externalDocuments URL matches the expected URL, that we resolved using the
     92    // host document before in urlFromIRIStringWithFragmentIdentifier(). For internal resources, the same
     93    // assumption must hold true, just with the host documents URL, not the external documents URL.
     94    if (!equalIgnoringFragmentIdentifier(url, externalDocument ? externalDocument->url() : document->url()))
     95        return 0;
     96
    6897    if (fragmentIdentifier)
    6998        *fragmentIdentifier = id;
    70     // FIXME: Handle external references (Bug 65344).
     99
     100    if (id.isEmpty())
     101        return 0;
     102
     103    if (externalDocument)
     104        return externalDocument->getElementById(id);
     105    if (isExternalURIReference(iri, document))
     106        return 0; // Non-existing external resource
     107
    71108    return document->getElementById(id);
    72109}
  • trunk/Source/WebCore/svg/SVGURIReference.h

    • Property svn:executable set to *
    r106769 r110676  
    4141
    4242    static String fragmentIdentifierFromIRIString(const String&, Document*);
    43     static Element* targetElementFromIRIString(const String&, Document*, String* = 0);
     43    static Element* targetElementFromIRIString(const String&, Document*, String* = 0, Document* = 0);
     44
     45    static inline bool isExternalURIReference(const String& uri, Document* baseDocument)
     46    {
     47        if (uri.startsWith("#"))
     48            return false;
     49
     50        size_t startOfFragmentIdentifier = uri.find('#');
     51        // If the target document is the base document but its path is given in format href="thisDocument.svg#targetTag"
     52        // then we should handle it as internal.
     53        if (uri.substring(0, startOfFragmentIdentifier) != baseDocument->url().lastPathComponent())
     54            return true;
     55        return false;
     56    }
    4457
    4558protected:
  • trunk/Source/WebCore/svg/SVGUseElement.cpp

    • Property svn:executable set to *
    r109333 r110676  
    44 * Copyright (C) Research In Motion Limited 2009-2010. All rights reserved.
    55 * Copyright (C) 2011 Torch Mobile (Beijing) Co. Ltd. All rights reserved.
     6 * Copyright (C) 2012 University of Szeged
     7 * Copyright (C) 2012 Renata Hodovan <reni@webkit.org>
    68 *
    79 * This library is free software; you can redistribute it and/or
     
    2729
    2830#include "Attribute.h"
     31#include "CachedResourceLoader.h"
    2932#include "CSSStyleSelector.h"
    3033#include "Document.h"
     
    8891    ASSERT(hasTagName(SVGNames::useTag));
    8992    registerAnimatedPropertiesForSVGUseElement();
    90    
     93
    9194    setHasCustomWillOrDidRecalcStyle();
    9295}
     
    98101    use->ensureShadowRoot();
    99102    return use.release();
     103}
     104
     105SVGUseElement::~SVGUseElement()
     106{
     107    if (m_cachedDocument)
     108        m_cachedDocument->removeClient(this);
    100109}
    101110
     
    117126    return 0;
    118127}
    119  
     128
    120129bool SVGUseElement::isSupportedAttribute(const QualifiedName& attrName)
    121130{
     
    180189}
    181190
     191Document* SVGUseElement::referencedDocument() const
     192{
     193    if (!isExternalURIReference(href(), document()))
     194        return document();
     195    return externalDocument();
     196}
     197
     198Document* SVGUseElement::externalDocument() const
     199{
     200    if (m_cachedDocument && m_cachedDocument->isLoaded()) {
     201        ASSERT(m_cachedDocument->document());
     202        return m_cachedDocument->document();
     203    }
     204    return 0;
     205}
     206
    182207void SVGUseElement::svgAttributeChanged(const QualifiedName& attrName)
    183208{
     
    203228        return;
    204229
     230    if (SVGURIReference::isKnownAttribute(attrName)) {
     231        bool isExternalReference = isExternalURIReference(href(), document());
     232        if (isExternalReference) {
     233            KURL url = document()->completeURL(href());
     234            if (url.hasFragmentIdentifier()) {
     235                ResourceRequest request(url.string());
     236                m_cachedDocument = document()->cachedResourceLoader()->requestSVGDocument(request);
     237                if (m_cachedDocument)
     238                    m_cachedDocument->addClient(this);
     239            }
     240        }
     241
     242        if (m_cachedDocument && !isExternalReference) {
     243            m_cachedDocument->removeClient(this);
     244            m_cachedDocument = 0;
     245        }
     246        buildPendingResource();
     247        return;
     248    }
     249
    205250    if (!renderer)
    206251        return;
    207 
    208     if (SVGURIReference::isKnownAttribute(attrName)) {
    209         buildPendingResource();
    210         return;
    211     }
    212252
    213253    if (SVGLangSpace::isKnownAttribute(attrName)
     
    232272    SVGElement* element = targetInstance->correspondingElement();
    233273    ASSERT(element);
     274
     275    if (element->hasTagName(SVGNames::useTag)) {
     276        if (static_cast<SVGUseElement*>(element)->cachedDocumentIsStillLoading())
     277            return;
     278    }
    234279
    235280    SVGElement* shadowTreeElement = targetInstance->shadowTreeElement();
     
    347392void SVGUseElement::buildPendingResource()
    348393{
     394    if (!referencedDocument())
     395        return;
    349396    clearResourceReferences();
    350397    if (!inDocument())
     
    352399
    353400    String id;
    354     Element* target = SVGURIReference::targetElementFromIRIString(href(), document(), &id);
     401    Element* target = SVGURIReference::targetElementFromIRIString(href(), document(), &id, externalDocument());
    355402    if (!target) {
    356403        if (hasPendingResources() || id.isEmpty())
     
    358405
    359406        ASSERT(!hasPendingResources());
    360         document()->accessSVGExtensions()->addPendingResource(id, this);
     407        referencedDocument()->accessSVGExtensions()->addPendingResource(id, this);
    361408        ASSERT(hasPendingResources());
    362409        return;
     
    385432    // The instance tree is accesable from JavaScript, and has to
    386433    // expose a 1:1 copy of the referenced tree, whereas internally we need
    387     // to alter the tree for correct "use-on-symbol", "use-on-svg" support. 
    388  
     434    // to alter the tree for correct "use-on-symbol", "use-on-svg" support.
     435
    389436    // Build instance tree. Create root SVGElementInstance object for the first sub-tree node.
    390437    //
     
    397444    bool foundProblem = false;
    398445    buildInstanceTree(target, m_targetElementInstance.get(), foundProblem);
     446
     447    if (instanceTreeIsLoading(m_targetElementInstance.get()))
     448        return;
    399449
    400450    // SVG specification does not say a word about <use> & cycles. My view on this is: just ignore it!
     
    567617bool SVGUseElement::hasCycleUseReferencing(SVGUseElement* use, SVGElementInstance* targetInstance, SVGElement*& newTarget)
    568618{
    569     Element* targetElement = SVGURIReference::targetElementFromIRIString(use->href(), document());
     619    Element* targetElement = SVGURIReference::targetElementFromIRIString(use->href(), referencedDocument());
    570620    newTarget = 0;
    571621    if (targetElement && targetElement->isSVGElement())
     
    579629        return true;
    580630
     631    AtomicString targetId = newTarget->getIdAttribute();
    581632    SVGElementInstance* instance = targetInstance->parentNode();
    582633    while (instance) {
     
    584635
    585636        // FIXME: This should probably be using getIdAttribute instead of idForStyleResolution.
    586         if (element->hasID() && element->idForStyleResolution() == newTarget->getIdAttribute())
     637        if (element->hasID() && element->idForStyleResolution() == targetId && element->document() == newTarget->document())
    587638            return true;
    588    
     639
    589640        instance = instance->parentNode();
    590641    }
     
    637688    if (element->hasTagName(SVGNames::useTag)) {
    638689        SVGUseElement* use = static_cast<SVGUseElement*>(element);
    639 
    640         Element* targetElement = SVGURIReference::targetElementFromIRIString(use->href(), document());
     690        ASSERT(!use->cachedDocumentIsStillLoading());
     691
     692        Element* targetElement = SVGURIReference::targetElementFromIRIString(use->href(), referencedDocument());
    641693        SVGElement* target = 0;
    642694        if (targetElement && targetElement->isSVGElement())
     
    645697        // Don't ASSERT(target) here, it may be "pending", too.
    646698        // Setup sub-shadow tree root node
    647         RefPtr<SVGGElement> cloneParent = SVGGElement::create(SVGNames::gTag, document());
     699        RefPtr<SVGGElement> cloneParent = SVGGElement::create(SVGNames::gTag, referencedDocument());
    648700        use->cloneChildNodes(cloneParent.get());
    649701
     
    669721
    670722        // Replace <use> with referenced content.
    671         ASSERT(use->parentNode()); 
     723        ASSERT(use->parentNode());
    672724        use->parentNode()->replaceChild(cloneParent.release(), use);
    673725
     
    692744        // the generated 'svg'. If attributes width and/or height are not specified, the generated
    693745        // 'svg' element will use values of 100% for these attributes.
    694         RefPtr<SVGSVGElement> svgElement = SVGSVGElement::create(SVGNames::svgTag, document());
     746        RefPtr<SVGSVGElement> svgElement = SVGSVGElement::create(SVGNames::svgTag, referencedDocument());
    695747
    696748        // Transfer all attributes from <symbol> to the new <svg> element
    697749        svgElement->setAttributesFromElement(*toElement(element));
    698750
    699         // Only clone symbol children, and add them to the new <svg> element   
     751        // Only clone symbol children, and add them to the new <svg> element
    700752        for (Node* child = element->firstChild(); child; child = child->nextSibling()) {
    701753            RefPtr<Node> newChild = child->cloneNode(true);
    702754            svgElement->appendChild(newChild.release());
    703755        }
    704    
     756
    705757        // We don't walk the target tree element-by-element, and clone each element,
    706758        // but instead use cloneNode(deep=true). This is an optimization for the common
     
    853905}
    854906
     907void SVGUseElement::notifyFinished(CachedResource*)
     908{
     909    if (!inDocument())
     910        return;
     911
     912    invalidateShadowTree();
     913}
     914
     915bool SVGUseElement::cachedDocumentIsStillLoading()
     916{
     917    if (m_cachedDocument && m_cachedDocument->isLoading())
     918        return true;
     919    return false;
     920}
     921
     922bool SVGUseElement::instanceTreeIsLoading(SVGElementInstance* targetElementInstance)
     923{
     924    for (SVGElementInstance* instance = targetElementInstance->firstChild(); instance; instance = instance->nextSibling()) {
     925        if (SVGUseElement* use = instance->correspondingUseElement()) {
     926             if (use->cachedDocumentIsStillLoading())
     927                 return true;
     928        }
     929        if (instance->hasChildNodes())
     930            instanceTreeIsLoading(instance);
     931    }
     932    return false;
     933}
     934
    855935}
    856936
  • trunk/Source/WebCore/svg/SVGUseElement.h

    • Property svn:executable set to *
    r109097 r110676  
    2323
    2424#if ENABLE(SVG)
     25#include "CachedSVGDocument.h"
    2526#include "SVGAnimatedBoolean.h"
    2627#include "SVGAnimatedLength.h"
     
    3334namespace WebCore {
    3435
     36class CachedSVGDocument;
    3537class SVGElementInstance;
    3638
     
    3941                      public SVGLangSpace,
    4042                      public SVGExternalResourcesRequired,
    41                       public SVGURIReference {
     43                      public SVGURIReference,
     44                      public CachedSVGDocumentClient {
    4245public:
    4346    static PassRefPtr<SVGUseElement> create(const QualifiedName&, Document*);
     47    virtual ~SVGUseElement();
    4448
    4549    SVGElementInstance* instanceRoot();
     
    101105    END_DECLARE_ANIMATED_PROPERTIES
    102106
     107    bool cachedDocumentIsStillLoading();
     108    Document* externalDocument() const;
     109    bool instanceTreeIsLoading(SVGElementInstance*);
     110    virtual void notifyFinished(CachedResource*);
     111    Document* referencedDocument() const;
     112
    103113    // SVGTests
    104114    virtual void synchronizeRequiredFeatures() { SVGTests::synchronizeRequiredFeatures(this); }
     
    108118    bool m_needsShadowTreeRecreation;
    109119    RefPtr<SVGElementInstance> m_targetElementInstance;
     120    CachedResourceHandle<CachedSVGDocument> m_cachedDocument;
    110121};
    111122
Note: See TracChangeset for help on using the changeset viewer.