WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
First attempt
12129.diff (text/plain), 9.66 KB, created by
Rob Buis
on 2007-01-08 14:23:19 PST
(
hide
)
Description:
First attempt
Filename:
MIME Type:
Creator:
Rob Buis
Created:
2007-01-08 14:23:19 PST
Size:
9.66 KB
patch
obsolete
>Index: LayoutTests/ChangeLog >=================================================================== >--- LayoutTests/ChangeLog (revision 18677) >+++ LayoutTests/ChangeLog (working copy) >@@ -1,3 +1,16 @@ >+2007-01-08 Rob Buis <buis@kde.org> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Testcase for: >+ http://bugs.webkit.org/show_bug.cgi?id=12129 >+ repaint issue after setting viewBox attribute with ECMAScript >+ >+ * svg/custom/dynamic-viewBox-expected.checksum: Added. >+ * svg/custom/dynamic-viewBox-expected.png: Added. >+ * svg/custom/dynamic-viewBox-expected.txt: Added. >+ * svg/custom/dynamic-viewBox.svg: Added. >+ > 2007-01-08 Alexey Proskuryakov <ap@webkit.org> > > Reviewed by Darin. >@@ -21,6 +34,7 @@ > * fast/dom/node-item.html: Added. > Check that there is no Node:item or HTMLElement:item. > >+>>>>>>> .r18677 > 2007-01-08 Darin Adler <darin@apple.com> > > - added a W3C list style test that was cited in a bug >Index: LayoutTests/svg/custom/dynamic-viewBox-expected.checksum >=================================================================== >--- LayoutTests/svg/custom/dynamic-viewBox-expected.checksum (revision 0) >+++ LayoutTests/svg/custom/dynamic-viewBox-expected.checksum (revision 0) >@@ -0,0 +1 @@ >+db80600aedf2e9ab80189086acaa81ca >\ No newline at end of file >Index: LayoutTests/svg/custom/dynamic-viewBox-expected.txt >=================================================================== >--- LayoutTests/svg/custom/dynamic-viewBox-expected.txt (revision 0) >+++ LayoutTests/svg/custom/dynamic-viewBox-expected.txt (revision 0) >@@ -0,0 +1,4 @@ >+layer at (0,0) size 800x600 >+ RenderView at (0,0) size 800x600 >+ RenderSVGContainer {svg} at (0,0) size 200x200 >+ RenderPath {rect} at (0,0) size 200x200 [fill={[type=SOLID] [color=#008000]}] [data="M0.00,0.00L20.00,0.00L20.00,20.00L0.00,20.00"] >Index: LayoutTests/svg/custom/dynamic-viewBox.svg >=================================================================== >--- LayoutTests/svg/custom/dynamic-viewBox.svg (revision 0) >+++ LayoutTests/svg/custom/dynamic-viewBox.svg (revision 0) >@@ -0,0 +1,11 @@ >+<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> >+<svg onload="init()" width="200" height="200" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 400 400"> >+<script> >+<![CDATA[ >+function init() { >+ document.rootElement.setAttribute("viewBox", "0 0 20 20"); >+} >+]]> >+</script> >+<rect fill="green" width="20" height="20"/> >+</svg> >Index: WebCore/ChangeLog >=================================================================== >--- WebCore/ChangeLog (revision 18677) >+++ WebCore/ChangeLog (working copy) >@@ -1,3 +1,18 @@ >+2007-01-08 Rob Buis <buis@kde.org> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ http://bugs.webkit.org/show_bug.cgi?id=12129 >+ repaint issue after setting viewBox attribute with ECMAScript >+ >+ Make sure SVGSVGElement updates after setting viewBox from js. >+ >+ * ksvg2/svg/SVGFitToViewBox.cpp: >+ (WebCore::SVGFitToViewBox::parseViewBox): >+ * ksvg2/svg/SVGSVGElement.cpp: >+ (WebCore::SVGSVGElement::notifyAttributeChange): >+ * ksvg2/svg/SVGSVGElement.h: >+ > 2007-01-08 Darin Adler <darin@apple.com> > > Reviewed by Adam. >Index: WebCore/ksvg2/svg/SVGFitToViewBox.cpp >=================================================================== >--- WebCore/ksvg2/svg/SVGFitToViewBox.cpp (revision 18670) >+++ WebCore/ksvg2/svg/SVGFitToViewBox.cpp (working copy) >@@ -30,6 +30,7 @@ > #include "SVGNames.h" > #include "SVGParserUtilities.h" > #include "SVGPreserveAspectRatio.h" >+#include "SVGStyledElement.h" > #include "StringImpl.h" > > namespace WebCore { >@@ -72,6 +73,8 @@ void SVGFitToViewBox::parseViewBox(const > doc->accessSVGExtensions()->reportWarning("Problem parsing viewBox=\"" + str + "\""); > else > setViewBoxBaseValue(FloatRect(x, y, w, h)); >+ if (contextElement()) >+ static_cast<const SVGStyledElement*>(contextElement())->notifyAttributeChange(); > } > } > >Index: WebCore/ksvg2/svg/SVGSVGElement.cpp >=================================================================== >--- WebCore/ksvg2/svg/SVGSVGElement.cpp (revision 18670) >+++ WebCore/ksvg2/svg/SVGSVGElement.cpp (working copy) >@@ -422,6 +422,15 @@ void SVGSVGElement::attributeChanged(Att > SVGStyledElement::attributeChanged(attr, preserveDecls); > } > >+void SVGSVGElement::notifyAttributeChange() const >+{ >+ if (ownerDocument()->parsing()) >+ return; >+ >+ if (renderer()) >+ renderer()->setNeedsLayout(true); >+} >+ > } > > #endif // SVG_SUPPORT >Index: WebCore/ksvg2/svg/SVGSVGElement.h >=================================================================== >--- WebCore/ksvg2/svg/SVGSVGElement.h (revision 18670) >+++ WebCore/ksvg2/svg/SVGSVGElement.h (working copy) >@@ -124,6 +124,8 @@ namespace WebCore > > virtual void attributeChanged(Attribute*, bool preserveDecls = false); > >+ virtual void notifyAttributeChange() const; >+ > protected: > virtual const SVGElement* contextElement() const { return this; } > >Index: LayoutTests/svg/custom/dynamic-viewBox-expected.png >=================================================================== >Cannot display: file marked as a binary type. >svn:mime-type = application/octet-stream > >Property changes on: LayoutTests/svg/custom/dynamic-viewBox-expected.png >___________________________________________________________________ >Name: svn:mime-type > + application/octet-stream > > >iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAMe0lEQVR4nO3ZsRGAQAwEsX8ah85N >A4TMEiBVcImDHe91rVnAozmdBwDAm46vBwAAAP8hQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwA >AQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAj >QAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADI >CBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAA >MgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAA >gIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAA >ACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIE >AADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwA >AQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAj >QAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADI >CBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAA >MgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAA >gIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAA >ACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIE >AADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwA >AQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAj >QAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADI >CBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAA >MgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMntm5usRAADAP/iAAAAA >GQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAA >QEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgA >AJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQEC >AABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaA >AAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJAR >IAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABk >BAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAA >GQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAA >QEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgA >AJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQEC >AABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaA >AAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJAR >IAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABk >BAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAA >GQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAA >QEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgA >AJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQEC >AABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaA >AAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJAR >IAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABk >BAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAA >GQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAA >QEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgA >AJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQEC >AABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaA >AAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJAR >IAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABk >BAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAA >GQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAA >QEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgA >AJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQEC >AABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaA >AAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJAR >IAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABk >BAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAA >GQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJARIAAA >QEaAAAAAGQECAABkBAgAAJARIAAAQEaAAAAAGQECAABkBAgAAJC5ATdPDKdKWPnfAAAAAElFTkSu >QmCC >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 12129
:
12310
|
12326