<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[168674] trunk</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/168674">168674</a></dd>
<dt>Author</dt> <dd>krit@webkit.org</dd>
<dt>Date</dt> <dd>2014-05-12 23:04:58 -0700 (Mon, 12 May 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>SVG root element accepts background color but fails to repaint it
https://bugs.webkit.org/show_bug.cgi?id=63153

Reviewed by Dean Jackson.

Source/WebCore:
This is back ported from Blink. Don't know the exact commit though.
The patch checks if the SVGSVGElement is an outermost root element.
If it is, mark the whole element for repaint.

Test: svg/custom/svg-root-background.html

* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::calculateHasBoxDecorations):
(WebCore::RenderBoxModelObject::updateFromStyle):
* rendering/RenderBoxModelObject.h:
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::RenderSVGRoot):
(WebCore::RenderSVGRoot::layout):
(WebCore::RenderSVGRoot::paintReplaced):
(WebCore::RenderSVGRoot::clippedOverflowRectForRepaint):
    This is a simple optimization by taking the necessary parts
    from RenderReplaced and SVGRenderSupport.
* rendering/svg/RenderSVGRoot.h:

LayoutTests:
Check that background color updates if the size of an outermost
root SVG element changes.

* svg/custom/svg-root-background-expected.png: Added.
* svg/custom/svg-root-background-expected.txt: Added.
* svg/custom/svg-root-background.html: Added.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsplatformmachttptestsmiscslowloadingimageinpatternexpectedtxt">trunk/LayoutTests/platform/mac/http/tests/misc/slow-loading-image-in-pattern-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacsvgcustomcirclemoveinvalidationexpectedtxt">trunk/LayoutTests/platform/mac/svg/custom/circle-move-invalidation-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacsvgcustommousemoveonsvgcontainerexpectedtxt">trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-container-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacsvgcustommousemoveonsvgcontainerstandaloneexpectedtxt">trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacsvgcustommousemoveonsvgrootexpectedtxt">trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-root-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacsvgcustommousemoveonsvgrootstandaloneexpectedtxt">trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacsvgcustompatternuserSpaceOnUseuserToBaseTransformexpectedtxt">trunk/LayoutTests/platform/mac/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacsvgcustomsvgfloatborderpaddingexpectedtxt">trunk/LayoutTests/platform/mac/svg/custom/svg-float-border-padding-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacsvghixiemixed010expectedtxt">trunk/LayoutTests/platform/mac/svg/hixie/mixed/010-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacsvgtextsmallfontsinhtml5expectedtxt">trunk/LayoutTests/platform/mac/svg/text/small-fonts-in-html5-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacsvgzoomtextzoomsvgfloatborderpaddingexpectedtxt">trunk/LayoutTests/platform/mac/svg/zoom/text/zoom-svg-float-border-padding-expected.txt</a></li>
<li><a href="#trunkLayoutTestssvganimationsanimateviewportoverflow2expectedtxt">trunk/LayoutTests/svg/animations/animate-viewport-overflow-2-expected.txt</a></li>
<li><a href="#trunkLayoutTestssvganimationsanimateviewportoverflowexpectedtxt">trunk/LayoutTests/svg/animations/animate-viewport-overflow-expected.txt</a></li>
<li><a href="#trunkLayoutTestssvgcustomgradientstrokewidthexpectedtxt">trunk/LayoutTests/svg/custom/gradient-stroke-width-expected.txt</a></li>
<li><a href="#trunkLayoutTestssvgcustomrepaintmovingsvganddivexpectedtxt">trunk/LayoutTests/svg/custom/repaint-moving-svg-and-div-expected.txt</a></li>
<li><a href="#trunkLayoutTestssvgcustomviewportupdate2expectedtxt">trunk/LayoutTests/svg/custom/viewport-update2-expected.txt</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderBoxModelObjectcpp">trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderBoxModelObjecth">trunk/Source/WebCore/rendering/RenderBoxModelObject.h</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGRootcpp">trunk/Source/WebCore/rendering/svg/RenderSVGRoot.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGRooth">trunk/Source/WebCore/rendering/svg/RenderSVGRoot.h</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li>trunk/LayoutTests/platform/mac/svg/animations/</li>
<li><a href="#trunkLayoutTestsplatformmacsvganimationsanimateviewportoverflow2expectedpng">trunk/LayoutTests/platform/mac/svg/animations/animate-viewport-overflow-2-expected.png</a></li>
<li><a href="#trunkLayoutTestsplatformmacsvganimationsanimateviewportoverflowexpectedpng">trunk/LayoutTests/platform/mac/svg/animations/animate-viewport-overflow-expected.png</a></li>
<li><a href="#trunkLayoutTestssvgcustomsvgrootbackgroundexpectedpng">trunk/LayoutTests/svg/custom/svg-root-background-expected.png</a></li>
<li><a href="#trunkLayoutTestssvgcustomsvgrootbackgroundexpectedtxt">trunk/LayoutTests/svg/custom/svg-root-background-expected.txt</a></li>
<li><a href="#trunkLayoutTestssvgcustomsvgrootbackgroundhtml">trunk/LayoutTests/svg/custom/svg-root-background.html</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/ChangeLog        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -1,3 +1,17 @@
</span><ins>+2014-05-12  Dirk Schulze  &lt;krit@webkit.org&gt;
+
+        SVG root element accepts background color but fails to repaint it
+        https://bugs.webkit.org/show_bug.cgi?id=63153
+
+        Reviewed by Dean Jackson.
+
+        Check that background color updates if the size of an outermost
+        root SVG element changes.
+
+        * svg/custom/svg-root-background-expected.png: Added.
+        * svg/custom/svg-root-background-expected.txt: Added.
+        * svg/custom/svg-root-background.html: Added.
+
</ins><span class="cx"> 2014-05-12  Jeffrey Pfau  &lt;jpfau@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Unreviewed, fix mismatched test expectation.
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmachttptestsmiscslowloadingimageinpatternexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/http/tests/misc/slow-loading-image-in-pattern-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/http/tests/misc/slow-loading-image-in-pattern-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/platform/mac/http/tests/misc/slow-loading-image-in-pattern-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -14,5 +14,5 @@
</span><span class="cx">   RenderSVGRoot {svg} at (10,50) size 406x306
</span><span class="cx">     RenderSVGHiddenContainer {defs} at (0,0) size 0x0
</span><span class="cx">       RenderSVGResourcePattern {pattern} [id=&quot;pattern&quot;] [patternUnits=userSpaceOnUse] [patternContentUnits=userSpaceOnUse]
</span><del>-        RenderSVGImage {image} at (13,53) size 403x303
-    RenderSVGRect {rect} at (13,53) size 400x300 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=0.00] [y=0.00] [width=400.00] [height=300.00]
</del><ins>+        RenderSVGImage {image} at (10,50) size 406x306
+    RenderSVGRect {rect} at (10,50) size 406x306 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=0.00] [y=0.00] [width=400.00] [height=300.00]
</ins></span></pre></div>
<a id="trunkLayoutTestsplatformmacsvganimationsanimateviewportoverflow2expectedpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/platform/mac/svg/animations/animate-viewport-overflow-2-expected.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/platform/mac/svg/animations/animate-viewport-overflow-2-expected.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestsplatformmacsvganimationsanimateviewportoverflowexpectedpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/platform/mac/svg/animations/animate-viewport-overflow-expected.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/platform/mac/svg/animations/animate-viewport-overflow-expected.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestsplatformmacsvgcustomcirclemoveinvalidationexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/svg/custom/circle-move-invalidation-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/svg/custom/circle-move-invalidation-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/platform/mac/svg/custom/circle-move-invalidation-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -4,8 +4,8 @@
</span><span class="cx">   RenderBlock {html} at (0,0) size 800x356
</span><span class="cx">     RenderBody {body} at (8,8) size 784x340
</span><span class="cx">       RenderBlock (anonymous) at (0,0) size 784x306
</span><del>-        RenderSVGRoot {svg} at (195,195) size 78x78
-          RenderSVGEllipse {circle} at (196,196) size 76x76 [fill={[type=SOLID] [color=#FF0000]}] [cx=300.00] [cy=300.00] [r=50.00]
</del><ins>+        RenderSVGRoot {svg} at (8,8) size 302x306
+          RenderSVGEllipse {circle} at (8,8) size 302x306 [fill={[type=SOLID] [color=#FF0000]}] [cx=300.00] [cy=300.00] [r=50.00]
</ins><span class="cx">         RenderText {#text} at (302,288) size 4x18
</span><span class="cx">           text run at (302,288) width 4: &quot; &quot;
</span><span class="cx">         RenderBR {br} at (306,288) size 0x18
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacsvgcustommousemoveonsvgcontainerexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-container-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-container-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-container-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -3,9 +3,9 @@
</span><span class="cx"> layer at (0,0) size 800x410
</span><span class="cx">   RenderBlock {html} at (0,0) size 800x410
</span><span class="cx">     RenderBody {body} at (0,0) size 800x410
</span><del>-      RenderSVGRoot {svg} at (45,33) size 361x373
-        RenderSVGContainer {g} at (303,303) size 100x100
-          RenderSVGEllipse {circle} at (303,303) size 100x100 [fill={[type=SOLID] [color=#008000]}] [cx=350.00] [cy=350.00] [r=50.00]
</del><ins>+      RenderSVGRoot {svg} at (0,0) size 406x410
+        RenderSVGContainer {g} at (0,0) size 406x410
+          RenderSVGEllipse {circle} at (0,0) size 406x410 [fill={[type=SOLID] [color=#008000]}] [cx=350.00] [cy=350.00] [r=50.00]
</ins><span class="cx">         RenderSVGText {text} at (48,36) size 304x18 contains 1 chunk(s)
</span><span class="cx">           RenderSVGInlineText {#text} at (0,0) size 303x18
</span><span class="cx">             chunk 1 (middle anchor) text run 1 at (48.50,50.00) startOffset 0 endOffset 49 width 303.00: &quot;The circle should stay in the bottom-right corner&quot;
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacsvgcustommousemoveonsvgcontainerstandaloneexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -1,9 +1,9 @@
</span><span class="cx"> layer at (0,0) size 800x600
</span><span class="cx">   RenderView at (0,0) size 800x600
</span><span class="cx"> layer at (0,0) size 406x406
</span><del>-  RenderSVGRoot {svg} at (45,33) size 361x373
-    RenderSVGContainer {g} at (303,303) size 100x100
-      RenderSVGEllipse {circle} at (303,303) size 100x100 [fill={[type=SOLID] [color=#008000]}] [cx=350.00] [cy=350.00] [r=50.00]
</del><ins>+  RenderSVGRoot {svg} at (0,0) size 406x406
+    RenderSVGContainer {g} at (0,0) size 406x406
+      RenderSVGEllipse {circle} at (0,0) size 406x406 [fill={[type=SOLID] [color=#008000]}] [cx=350.00] [cy=350.00] [r=50.00]
</ins><span class="cx">     RenderSVGText {text} at (48,36) size 304x18 contains 1 chunk(s)
</span><span class="cx">       RenderSVGInlineText {#text} at (0,0) size 303x18
</span><span class="cx">         chunk 1 (middle anchor) text run 1 at (48.50,50.00) startOffset 0 endOffset 49 width 303.00: &quot;The circle should stay in the bottom-right corner&quot;
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacsvgcustommousemoveonsvgrootexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-root-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-root-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-root-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -3,8 +3,8 @@
</span><span class="cx"> layer at (0,0) size 800x410
</span><span class="cx">   RenderBlock {html} at (0,0) size 800x410
</span><span class="cx">     RenderBody {body} at (0,0) size 800x410
</span><del>-      RenderSVGRoot {svg} at (90,33) size 226x223
-        RenderSVGEllipse {circle} at (150,150) size 100x100 [fill={[type=SOLID] [color=#008000]}] [cx=197.00] [cy=197.00] [r=50.00]
</del><ins>+      RenderSVGRoot {svg} at (0,0) size 406x410
+        RenderSVGEllipse {circle} at (0,0) size 406x410 [fill={[type=SOLID] [color=#008000]}] [cx=197.00] [cy=197.00] [r=50.00]
</ins><span class="cx">         RenderSVGText {text} at (93,36) size 214x18 contains 1 chunk(s)
</span><span class="cx">           RenderSVGInlineText {#text} at (0,0) size 214x18
</span><span class="cx">             chunk 1 (middle anchor) text run 1 at (93.00,50.00) startOffset 0 endOffset 34 width 214.00: &quot;The circle should be in the middle&quot;
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacsvgcustommousemoveonsvgrootstandaloneexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -1,8 +1,8 @@
</span><span class="cx"> layer at (0,0) size 800x600
</span><span class="cx">   RenderView at (0,0) size 800x600
</span><span class="cx"> layer at (0,0) size 406x406
</span><del>-  RenderSVGRoot {svg} at (90,33) size 226x223
-    RenderSVGEllipse {circle} at (150,150) size 100x100 [fill={[type=SOLID] [color=#008000]}] [cx=197.00] [cy=197.00] [r=50.00]
</del><ins>+  RenderSVGRoot {svg} at (0,0) size 406x406
+    RenderSVGEllipse {circle} at (0,0) size 406x406 [fill={[type=SOLID] [color=#008000]}] [cx=197.00] [cy=197.00] [r=50.00]
</ins><span class="cx">     RenderSVGText {text} at (93,36) size 214x18 contains 1 chunk(s)
</span><span class="cx">       RenderSVGInlineText {#text} at (0,0) size 214x18
</span><span class="cx">         chunk 1 (middle anchor) text run 1 at (93.00,50.00) startOffset 0 endOffset 34 width 214.00: &quot;The circle should be in the middle&quot;
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacsvgcustompatternuserSpaceOnUseuserToBaseTransformexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/platform/mac/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -7,36 +7,36 @@
</span><span class="cx">         text run at (0,0) width 762: &quot;There should be no red displayed on the screen, and the patterns should not change when the browser window is resized.&quot;
</span><span class="cx">       RenderBR {br} at (762,0) size 0x18
</span><span class="cx">       RenderBR {br} at (0,18) size 0x18
</span><del>-      RenderSVGRoot {svg} at (8,44) size 202x203
-        RenderSVGContainer {g} at (9,45) size 200x200
-          RenderSVGRect {rect} at (9,145) size 100x50 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=100.00] [width=100.00] [height=50.00]
-          RenderSVGRect {rect} at (109,45) size 100x50 [fill={[type=SOLID] [color=#FF0000]}] [x=100.00] [y=0.00] [width=100.00] [height=50.00]
-          RenderSVGRect {rect} at (9,145) size 100x100 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=0.00] [y=100.00] [width=100.00] [height=100.00]
-          RenderSVGRect {rect} at (109,45) size 100x100 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=100.00] [y=0.00] [width=100.00] [height=100.00]
</del><ins>+      RenderSVGRoot {svg} at (8,44) size 202x306
+        RenderSVGContainer {g} at (8,44) size 202x306
+          RenderSVGRect {rect} at (8,44) size 202x306 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=100.00] [width=100.00] [height=50.00]
+          RenderSVGRect {rect} at (8,44) size 202x306 [fill={[type=SOLID] [color=#FF0000]}] [x=100.00] [y=0.00] [width=100.00] [height=50.00]
+          RenderSVGRect {rect} at (8,44) size 202x306 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=0.00] [y=100.00] [width=100.00] [height=100.00]
+          RenderSVGRect {rect} at (8,44) size 202x306 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=100.00] [y=0.00] [width=100.00] [height=100.00]
</ins><span class="cx">       RenderText {#text} at (202,324) size 4x18
</span><span class="cx">         text run at (202,324) width 4: &quot; &quot;
</span><del>-      RenderSVGRoot {svg} at (214,44) size 202x287
</del><ins>+      RenderSVGRoot {svg} at (214,44) size 202x306
</ins><span class="cx">         RenderSVGText {text} at (5,266) size 81x18 contains 1 chunk(s)
</span><span class="cx">           RenderSVGInlineText {#text} at (0,0) size 81x18
</span><span class="cx">             chunk 1 text run 1 at (5.00,280.00) startOffset 0 endOffset 11 width 81.00: &quot;+Transforms&quot;
</span><del>-        RenderSVGContainer {g} at (215,145) size 100x100 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,100.00)}]
-          RenderSVGRect {rect} at (215,145) size 100x50 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=100.00] [height=50.00]
-          RenderSVGRect {rect} at (215,145) size 100x100 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
-        RenderSVGContainer {g} at (315,45) size 100x100 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,0.00)}]
-          RenderSVGRect {rect} at (315,45) size 100x50 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=100.00] [height=50.00]
-          RenderSVGRect {rect} at (315,45) size 100x100 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
</del><ins>+        RenderSVGContainer {g} at (214,44) size 202x306 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,100.00)}]
+          RenderSVGRect {rect} at (214,44) size 202x306 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=100.00] [height=50.00]
+          RenderSVGRect {rect} at (214,44) size 202x306 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
+        RenderSVGContainer {g} at (214,44) size 202x306 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,0.00)}]
+          RenderSVGRect {rect} at (214,44) size 202x306 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=100.00] [height=50.00]
+          RenderSVGRect {rect} at (214,44) size 202x306 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
</ins><span class="cx">         RenderSVGHiddenContainer {defs} at (0,0) size 0x0
</span><span class="cx">           RenderSVGResourcePattern {pattern} [id=&quot;pattern&quot;] [patternUnits=userSpaceOnUse] [patternContentUnits=userSpaceOnUse]
</span><del>-            RenderSVGRect {rect} at (215,45) size 100x25 [fill={[type=SOLID] [color=#008000]}] [x=0.00] [y=0.00] [width=100.00] [height=25.00]
-            RenderSVGRect {rect} at (215,70) size 100x25 [fill={[type=SOLID] [color=#0000FF]}] [x=0.00] [y=25.00] [width=100.00] [height=25.00]
</del><ins>+            RenderSVGRect {rect} at (214,44) size 202x306 [fill={[type=SOLID] [color=#008000]}] [x=0.00] [y=0.00] [width=100.00] [height=25.00]
+            RenderSVGRect {rect} at (214,44) size 202x306 [fill={[type=SOLID] [color=#0000FF]}] [x=0.00] [y=25.00] [width=100.00] [height=25.00]
</ins><span class="cx">       RenderText {#text} at (408,324) size 4x18
</span><span class="cx">         text run at (408,324) width 4: &quot; &quot;
</span><span class="cx">       RenderText {#text} at (0,0) size 0x0
</span><span class="cx"> layer at (420,44) size 202x302
</span><del>-  RenderSVGRoot {svg} at (420,44) size 202x287
</del><ins>+  RenderSVGRoot {svg} at (420,44) size 202x306
</ins><span class="cx">     RenderSVGText {text} at (5,266) size 169x18 contains 1 chunk(s)
</span><span class="cx">       RenderSVGInlineText {#text} at (0,0) size 169x18
</span><span class="cx">         chunk 1 text run 1 at (5.00,280.00) startOffset 0 endOffset 24 width 169.00: &quot;+Accelerated Compositing&quot;
</span><del>-    RenderSVGContainer {g} at (421,45) size 200x200
-      RenderSVGRect {rect} at (421,145) size 100x100 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=0.00] [y=100.00] [width=100.00] [height=100.00]
-      RenderSVGRect {rect} at (521,45) size 100x100 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=100.00] [y=0.00] [width=100.00] [height=100.00]
</del><ins>+    RenderSVGContainer {g} at (420,44) size 202x306
+      RenderSVGRect {rect} at (420,44) size 202x306 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=0.00] [y=100.00] [width=100.00] [height=100.00]
+      RenderSVGRect {rect} at (420,44) size 202x306 [fill={[type=PATTERN] [id=&quot;pattern&quot;]}] [x=100.00] [y=0.00] [width=100.00] [height=100.00]
</ins></span></pre></div>
<a id="trunkLayoutTestsplatformmacsvgcustomsvgfloatborderpaddingexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/svg/custom/svg-float-border-padding-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/svg/custom/svg-float-border-padding-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/platform/mac/svg/custom/svg-float-border-padding-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -11,7 +11,7 @@
</span><span class="cx">         RenderText {#text} at (0,0) size 354x18
</span><span class="cx">           text run at (0,0) width 354: &quot;There should be a red, white and blue pattern below this&quot;
</span><span class="cx">       RenderSVGRoot {svg} at (18,86) size 140x140
</span><del>-        RenderSVGRect {rect} at (38,106) size 100x100 [fill={[type=SOLID] [color=#0000FF]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
</del><ins>+        RenderSVGRect {rect} at (18,86) size 140x140 [fill={[type=SOLID] [color=#0000FF]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
</ins><span class="cx">       RenderBlock {p} at (0,228) size 784x18
</span><span class="cx">         RenderText {#text} at (0,0) size 353x18
</span><span class="cx">           text run at (0,0) width 353: &quot;There should be a red, white and blue pattern above this&quot;
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacsvghixiemixed010expectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/svg/hixie/mixed/010-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/svg/hixie/mixed/010-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/platform/mac/svg/hixie/mixed/010-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -7,7 +7,7 @@
</span><span class="cx">         RenderText {#text} at (0,0) size 238x18
</span><span class="cx">           text run at (0,0) width 238: &quot;There should be a green block below.&quot;
</span><span class="cx">       RenderBlock (anonymous) at (0,34) size 784x104
</span><del>-        RenderSVGRoot {svg} at (8,50) size 300x100
-          RenderSVGRect {rect} at (8,50) size 300x100 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=300.00] [height=100.00]
-          RenderSVGRect {rect} at (8,50) size 300x100 [fill={[type=SOLID] [color=#008000]}] [x=0.00] [y=0.00] [width=300.00] [height=100.00]
</del><ins>+        RenderSVGRoot {svg} at (8,50) size 300x104
+          RenderSVGRect {rect} at (8,50) size 300x104 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=300.00] [height=100.00]
+          RenderSVGRect {rect} at (8,50) size 300x104 [fill={[type=SOLID] [color=#008000]}] [x=0.00] [y=0.00] [width=300.00] [height=100.00]
</ins><span class="cx">         RenderText {#text} at (0,0) size 0x0
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacsvgtextsmallfontsinhtml5expectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/svg/text/small-fonts-in-html5-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/svg/text/small-fonts-in-html5-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/platform/mac/svg/text/small-fonts-in-html5-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -7,8 +7,8 @@
</span><span class="cx">         RenderText {#text} at (0,0) size 471x37
</span><span class="cx">           text run at (0,0) width 471: &quot;Small fonts in HTML5/inline SVG&quot;
</span><span class="cx">       RenderBlock (anonymous) at (0,58) size 784x507
</span><del>-        RenderSVGRoot {svg} at (157,259) size 104x31
-          RenderSVGContainer {g} at (159,261) size 100x27 [transform={m=((400.00,0.00)(0.00,400.00)) t=(0.00,0.00)}]
</del><ins>+        RenderSVGRoot {svg} at (8,79) size 502x507
+          RenderSVGContainer {g} at (8,79) size 502x507 [transform={m=((400.00,0.00)(0.00,400.00)) t=(0.00,0.00)}]
</ins><span class="cx">             RenderSVGText {text} at (0,0) size 1x1 contains 1 chunk(s)
</span><span class="cx">               RenderSVGInlineText {#text} at (0,0) size 1x1
</span><span class="cx">                 chunk 1 (middle anchor) text run 1 at (0.38,0.50) startOffset 0 endOffset 12 width 0.25: &quot;Test passed.&quot;
</span></span></pre></div>
<a id="trunkLayoutTestsplatformmacsvgzoomtextzoomsvgfloatborderpaddingexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/platform/mac/svg/zoom/text/zoom-svg-float-border-padding-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/svg/zoom/text/zoom-svg-float-border-padding-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/platform/mac/svg/zoom/text/zoom-svg-float-border-padding-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -12,7 +12,7 @@
</span><span class="cx">         RenderText {#text} at (0,0) size 524x26
</span><span class="cx">           text run at (0,0) width 524: &quot;There should be a red, white and blue pattern below this&quot;
</span><span class="cx">       RenderSVGRoot {svg} at (18,142) size 140x141
</span><del>-        RenderSVGRect {rect} at (38,162) size 100x101 [fill={[type=SOLID] [color=#0000FF]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
</del><ins>+        RenderSVGRect {rect} at (18,142) size 140x141 [fill={[type=SOLID] [color=#0000FF]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
</ins><span class="cx">       RenderBlock {p} at (0,284) size 769x27
</span><span class="cx">         RenderText {#text} at (0,0) size 523x26
</span><span class="cx">           text run at (0,0) width 523: &quot;There should be a red, white and blue pattern above this&quot;
</span></span></pre></div>
<a id="trunkLayoutTestssvganimationsanimateviewportoverflow2expectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/svg/animations/animate-viewport-overflow-2-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/svg/animations/animate-viewport-overflow-2-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/svg/animations/animate-viewport-overflow-2-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -5,6 +5,6 @@
</span><span class="cx">   RenderBlock {HTML} at (0,0) size 800x116
</span><span class="cx">     RenderBody {BODY} at (8,8) size 784x100
</span><span class="cx">       RenderBlock {DIV} at (0,0) size 100x100
</span><del>-        RenderSVGRoot {svg} at (8,208) size 100x100
-          RenderSVGRect {rect} at (8,208) size 100x100 [fill={[type=SOLID] [color=#0000FF]}] [x=0.00] [y=200.00] [width=100.00] [height=100.00]
</del><ins>+        RenderSVGRoot {svg} at (8,8) size 100x300
+          RenderSVGRect {rect} at (8,8) size 100x300 [fill={[type=SOLID] [color=#0000FF]}] [x=0.00] [y=200.00] [width=100.00] [height=100.00]
</ins><span class="cx">         RenderText {#text} at (0,0) size 0x0
</span></span></pre></div>
<a id="trunkLayoutTestssvganimationsanimateviewportoverflowexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/svg/animations/animate-viewport-overflow-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/svg/animations/animate-viewport-overflow-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/svg/animations/animate-viewport-overflow-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -5,7 +5,7 @@
</span><span class="cx">   RenderBlock {HTML} at (0,0) size 800x216
</span><span class="cx">     RenderBody {BODY} at (8,8) size 784x200
</span><span class="cx">       RenderBlock {DIV} at (0,0) size 100x100
</span><del>-        RenderSVGRoot {svg} at (8,208) size 100x100
-          RenderSVGRect {rect} at (8,208) size 100x100 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=200.00] [width=100.00] [height=100.00]
</del><ins>+        RenderSVGRoot {svg} at (8,8) size 100x300
+          RenderSVGRect {rect} at (8,8) size 100x300 [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=200.00] [width=100.00] [height=100.00]
</ins><span class="cx">         RenderText {#text} at (0,0) size 0x0
</span><span class="cx">       RenderBlock {DIV} at (0,100) size 100x100
</span></span></pre></div>
<a id="trunkLayoutTestssvgcustomgradientstrokewidthexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/svg/custom/gradient-stroke-width-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/svg/custom/gradient-stroke-width-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/svg/custom/gradient-stroke-width-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -1,7 +1,7 @@
</span><span class="cx"> layer at (0,0) size 800x600
</span><span class="cx">   RenderView at (0,0) size 800x600
</span><span class="cx"> layer at (0,0) size 200x500
</span><del>-  RenderSVGRoot {svg} at (32,32) size 123x123
</del><ins>+  RenderSVGRoot {svg} at (0,0) size 200x500
</ins><span class="cx">     RenderSVGHiddenContainer {defs} at (0,0) size 0x0
</span><span class="cx">       RenderSVGResourceLinearGradient {linearGradient} [id=&quot;black2white&quot;] [gradientUnits=objectBoundingBox] [start=(0,0)] [end=(1,0)]
</span><span class="cx">         RenderSVGGradientStop {stop} [offset=0.00] [color=#000000]
</span><span class="lines">@@ -11,5 +11,5 @@
</span><span class="cx">         RenderSVGGradientStop {stop} [offset=1.00] [color=#BD1F1845]
</span><span class="cx">       RenderSVGResourceRadialGradient {radialGradient} [id=&quot;red-radial-grad&quot;] [gradientUnits=objectBoundingBox] [center=(0.50,0.50)] [focal=(0.50,0.50)] [radius=0.50] [focalRadius=0.00]
</span><span class="cx">       RenderSVGResourceLinearGradient {linearGradient} [id=&quot;border-grad&quot;] [gradientUnits=objectBoundingBox] [start=(0.05,0.95)] [end=(0.95,0.05)]
</span><del>-    RenderSVGEllipse {circle} at (45,45) size 110x110 [stroke={[type=LINEAR-GRADIENT] [id=&quot;border-grad&quot;] [stroke width=10.00]}] [fill={[type=RADIAL-GRADIENT] [id=&quot;red-radial-grad&quot;]}] [cx=100.00] [cy=100.00] [r=50.00]
-    RenderSVGEllipse {circle} at (32,32) size 30x30 [stroke={[type=LINEAR-GRADIENT] [id=&quot;border-grad&quot;] [stroke width=10.00]}] [fill={[type=RADIAL-GRADIENT] [id=&quot;red-radial-grad&quot;]}] [cx=47.00] [cy=47.00] [r=10.00]
</del><ins>+    RenderSVGEllipse {circle} at (0,0) size 200x500 [stroke={[type=LINEAR-GRADIENT] [id=&quot;border-grad&quot;] [stroke width=10.00]}] [fill={[type=RADIAL-GRADIENT] [id=&quot;red-radial-grad&quot;]}] [cx=100.00] [cy=100.00] [r=50.00]
+    RenderSVGEllipse {circle} at (0,0) size 200x500 [stroke={[type=LINEAR-GRADIENT] [id=&quot;border-grad&quot;] [stroke width=10.00]}] [fill={[type=RADIAL-GRADIENT] [id=&quot;red-radial-grad&quot;]}] [cx=47.00] [cy=47.00] [r=10.00]
</ins></span></pre></div>
<a id="trunkLayoutTestssvgcustomrepaintmovingsvganddivexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/svg/custom/repaint-moving-svg-and-div-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/svg/custom/repaint-moving-svg-and-div-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/svg/custom/repaint-moving-svg-and-div-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -5,7 +5,7 @@
</span><span class="cx">     RenderBody {body} at (8,8) size 784x0
</span><span class="cx"> layer at (250,350) size 150x150
</span><span class="cx">   RenderSVGRoot {svg} at (250,350) size 150x150
</span><del>-    RenderSVGRect {rect} at (275,375) size 100x100 [fill={[type=SOLID] [color=#00FF00]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
</del><ins>+    RenderSVGRect {rect} at (250,350) size 150x150 [fill={[type=SOLID] [color=#00FF00]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
</ins><span class="cx"> layer at (550,350) size 150x150
</span><span class="cx">   RenderBlock (positioned) {div} at (550,350) size 150x150 [border: (5px solid #FF0000) (20px solid #FFFF00) (10px solid #008000) (15px solid #0000FF)]
</span><span class="cx">     RenderBlock {div} at (25,25) size 100x100 [bgcolor=#00FF00]
</span></span></pre></div>
<a id="trunkLayoutTestssvgcustomsvgrootbackgroundexpectedpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/svg/custom/svg-root-background-expected.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/svg/custom/svg-root-background-expected.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestssvgcustomsvgrootbackgroundexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/svg/custom/svg-root-background-expected.txt (0 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/svg/custom/svg-root-background-expected.txt                                (rev 0)
+++ trunk/LayoutTests/svg/custom/svg-root-background-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+layer at (8,8) size 200x200
+  RenderSVGRoot {svg} at (8,8) size 200x200
</ins></span></pre></div>
<a id="trunkLayoutTestssvgcustomsvgrootbackgroundhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/svg/custom/svg-root-background.html (0 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/svg/custom/svg-root-background.html                                (rev 0)
+++ trunk/LayoutTests/svg/custom/svg-root-background.html        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+&lt;html&gt;
+&lt;head&gt;
+&lt;script&gt;
+    if (window.testRunner)
+        testRunner.waitUntilDone();
+
+    function runTest() {
+        // This tests that changing the size of the outermost SVG updates the background of the SVG.
+        document.getElementById('svg').setAttribute('height','200');
+
+        if (window.testRunner)
+            testRunner.notifyDone();
+    }
+
+    window.addEventListener('load', function() {
+        setTimeout(runTest, 0);
+    }, false);
+&lt;/script&gt;
+&lt;body&gt;
+&lt;svg width=&quot;200&quot; height=&quot;0&quot; style=&quot;background-color: green; position: absolute;&quot; id=&quot;svg&quot;&gt;&lt;/svg&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestssvgcustomviewportupdate2expectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/svg/custom/viewport-update2-expected.txt (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/svg/custom/viewport-update2-expected.txt        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/LayoutTests/svg/custom/viewport-update2-expected.txt        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -3,4 +3,4 @@
</span><span class="cx"> layer at (0,0) size 110x110
</span><span class="cx">   RenderSVGRoot {svg} at (0,0) size 110x110
</span><span class="cx">     RenderSVGRect {rect} at (0,0) size 110x110 [fill={[type=SOLID] [color=#FF0000]}] [x=-100.00] [y=-100.00] [width=300.00] [height=300.00]
</span><del>-    RenderSVGRect {rect} at (5,5) size 100x100 [fill={[type=SOLID] [color=#008000]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
</del><ins>+    RenderSVGRect {rect} at (0,0) size 110x110 [fill={[type=SOLID] [color=#008000]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
</ins></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/Source/WebCore/ChangeLog        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -1,3 +1,29 @@
</span><ins>+2014-05-12  Dirk Schulze  &lt;krit@webkit.org&gt;
+
+        SVG root element accepts background color but fails to repaint it
+        https://bugs.webkit.org/show_bug.cgi?id=63153
+
+        Reviewed by Dean Jackson.
+
+        This is back ported from Blink. Don't know the exact commit though.
+        The patch checks if the SVGSVGElement is an outermost root element.
+        If it is, mark the whole element for repaint.
+
+        Test: svg/custom/svg-root-background.html
+
+        * rendering/RenderBoxModelObject.cpp:
+        (WebCore::RenderBoxModelObject::calculateHasBoxDecorations):
+        (WebCore::RenderBoxModelObject::updateFromStyle):
+        * rendering/RenderBoxModelObject.h:
+        * rendering/svg/RenderSVGRoot.cpp:
+        (WebCore::RenderSVGRoot::RenderSVGRoot):
+        (WebCore::RenderSVGRoot::layout):
+        (WebCore::RenderSVGRoot::paintReplaced):
+        (WebCore::RenderSVGRoot::clippedOverflowRectForRepaint):
+            This is a simple optimization by taking the necessary parts
+            from RenderReplaced and SVGRenderSupport.
+        * rendering/svg/RenderSVGRoot.h:
+
</ins><span class="cx"> 2014-05-12  Simon Fraser  &lt;simon.fraser@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [iOS] Fixed items are sometimes clipped after rubber-banding
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderBoxModelObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -190,6 +190,11 @@
</span><span class="cx">     RenderLayerModelObject::willBeDestroyed();
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+bool RenderBoxModelObject::hasBoxDecorationStyle() const
+{
+    return hasBackground() || style().hasBorder() || style().hasAppearance() || style().boxShadow();
+}
+
</ins><span class="cx"> void RenderBoxModelObject::updateFromStyle()
</span><span class="cx"> {
</span><span class="cx">     RenderLayerModelObject::updateFromStyle();
</span><span class="lines">@@ -197,7 +202,7 @@
</span><span class="cx">     // Set the appropriate bits for a box model object.  Since all bits are cleared in styleWillChange,
</span><span class="cx">     // we only check for bits that could possibly be set to true.
</span><span class="cx">     const RenderStyle&amp; styleToUse = style();
</span><del>-    setHasBoxDecorations(hasBackground() || styleToUse.hasBorder() || styleToUse.hasAppearance() || styleToUse.boxShadow());
</del><ins>+    setHasBoxDecorations(hasBoxDecorationStyle());
</ins><span class="cx">     setInline(styleToUse.isDisplayInlineType());
</span><span class="cx">     setPositionState(styleToUse.position());
</span><span class="cx">     setHorizontalWritingMode(styleToUse.isHorizontalWritingMode());
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderBoxModelObjecth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderBoxModelObject.h (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderBoxModelObject.h        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/Source/WebCore/rendering/RenderBoxModelObject.h        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -250,6 +250,7 @@
</span><span class="cx"> 
</span><span class="cx">     LayoutPoint adjustedPositionRelativeToOffsetParent(const LayoutPoint&amp;) const;
</span><span class="cx"> 
</span><ins>+    bool hasBoxDecorationStyle() const;
</ins><span class="cx">     void calculateBackgroundImageGeometry(const RenderLayerModelObject* paintContainer, const FillLayer*, const LayoutRect&amp; paintRect, BackgroundImageGeometry&amp;, RenderElement* = 0) const;
</span><span class="cx">     bool borderObscuresBackgroundEdge(const FloatSize&amp; contextScale) const;
</span><span class="cx">     bool borderObscuresBackground() const;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGRootcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGRoot.cpp (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGRoot.cpp        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGRoot.cpp        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -32,6 +32,7 @@
</span><span class="cx"> #include &quot;LayoutRepainter.h&quot;
</span><span class="cx"> #include &quot;Page.h&quot;
</span><span class="cx"> #include &quot;RenderIterator.h&quot;
</span><ins>+#include &quot;RenderLayer.h&quot;
</ins><span class="cx"> #include &quot;RenderNamedFlowFragment.h&quot;
</span><span class="cx"> #include &quot;RenderSVGResource.h&quot;
</span><span class="cx"> #include &quot;RenderSVGResourceContainer.h&quot;
</span><span class="lines">@@ -58,6 +59,7 @@
</span><span class="cx">     , m_isLayoutSizeChanged(false)
</span><span class="cx">     , m_needsBoundariesOrTransformUpdate(true)
</span><span class="cx">     , m_hasSVGShadow(false)
</span><ins>+    , m_hasBoxDecorations(false)
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -203,6 +205,8 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     updateLayerTransform();
</span><ins>+    m_hasBoxDecorations = isRoot() ? hasBoxDecorationStyle() : hasBoxDecorations();
+    invalidateBackgroundObscurationStatus();
</ins><span class="cx"> 
</span><span class="cx">     repainter.repaintAfterLayout();
</span><span class="cx"> 
</span><span class="lines">@@ -358,6 +362,13 @@
</span><span class="cx">     if (shouldApplyViewportClip())
</span><span class="cx">         repaintRect.intersect(pixelSnappedBorderBoxRect());
</span><span class="cx"> 
</span><ins>+    if (m_hasBoxDecorations || hasRenderOverflow()) {
+        // The selectionRect can project outside of the overflowRect, so take their union
+        // for repainting to avoid selection painting glitches.
+        LayoutRect decoratedRepaintRect = unionRect(localSelectionRect(false), visualOverflowRect());
+        repaintRect.unite(decoratedRepaintRect);
+    }
+
</ins><span class="cx">     LayoutRect rect = enclosingIntRect(repaintRect);
</span><span class="cx">     RenderReplaced::computeRectForRepaint(repaintContainer, rect, fixed);
</span><span class="cx">     repaintRect = rect;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGRooth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGRoot.h (168673 => 168674)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGRoot.h        2014-05-13 05:00:21 UTC (rev 168673)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGRoot.h        2014-05-13 06:04:58 UTC (rev 168674)
</span><span class="lines">@@ -119,6 +119,7 @@
</span><span class="cx">     bool m_isLayoutSizeChanged : 1;
</span><span class="cx">     bool m_needsBoundariesOrTransformUpdate : 1;
</span><span class="cx">     bool m_hasSVGShadow : 1;
</span><ins>+    bool m_hasBoxDecorations : 1;
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> RENDER_OBJECT_TYPE_CASTS(RenderSVGRoot, isSVGRoot())
</span></span></pre>
</div>
</div>

</body>
</html>