[SVG2] Remove the 'viewTarget' property of SVGViewElement
https://bugs.webkit.org/show_bug.cgi?id=203217
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2019-10-22
Reviewed by Simon Fraser.
LayoutTests/imported/w3c:
* web-platform-tests/svg/historical-expected.txt:
Source/WebCore:
The interface of SVGViewElement is defined here:
https://www.w3.org/TR/SVG2/linking.html#InterfaceSVGViewElement.
* svg/SVGViewElement.cpp:
(WebCore::SVGViewElement::SVGViewElement):
(WebCore::SVGViewElement::parseAttribute):
* svg/SVGViewElement.h:
* svg/SVGViewElement.idl:
LayoutTests:
* svg/dom/SVGViewElement-viewTarget-expected.txt: Removed.
* svg/dom/SVGViewElement-viewTarget.html: Removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@251461 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index afda365..6ae0f36 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,13 @@
+2019-10-22 Said Abou-Hallawa <sabouhallawa@apple.com>
+
+ [SVG2] Remove the 'viewTarget' property of SVGViewElement
+ https://bugs.webkit.org/show_bug.cgi?id=203217
+
+ Reviewed by Simon Fraser.
+
+ * svg/dom/SVGViewElement-viewTarget-expected.txt: Removed.
+ * svg/dom/SVGViewElement-viewTarget.html: Removed.
+
2019-10-22 Charlie Turner <cturner@igalia.com>
media/W3C/video/networkState/networkState_during_progress.html is flaky
diff --git a/LayoutTests/imported/w3c/ChangeLog b/LayoutTests/imported/w3c/ChangeLog
index 929b3d1..35b64c6 100644
--- a/LayoutTests/imported/w3c/ChangeLog
+++ b/LayoutTests/imported/w3c/ChangeLog
@@ -1,3 +1,12 @@
+2019-10-22 Said Abou-Hallawa <sabouhallawa@apple.com>
+
+ [SVG2] Remove the 'viewTarget' property of SVGViewElement
+ https://bugs.webkit.org/show_bug.cgi?id=203217
+
+ Reviewed by Simon Fraser.
+
+ * web-platform-tests/svg/historical-expected.txt:
+
2019-10-22 Peng Liu <peng.liu6@apple.com>
Cannot run some WPT cases manually
diff --git a/LayoutTests/imported/w3c/web-platform-tests/svg/historical-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/svg/historical-expected.txt
index 4b80366..79e29aa 100644
--- a/LayoutTests/imported/w3c/web-platform-tests/svg/historical-expected.txt
+++ b/LayoutTests/imported/w3c/web-platform-tests/svg/historical-expected.txt
@@ -35,7 +35,7 @@
FAIL SVGSVGElement.prototype.screenPixelToMillimeterY must be removed assert_false: expected false got true
FAIL SVGSVGElement.prototype.useCurrentView must be removed assert_false: expected false got true
FAIL SVGSVGElement.prototype.viewport must be removed assert_false: expected false got true
-FAIL SVGViewElement.prototype.viewTarget must be removed assert_false: expected false got true
+PASS SVGViewElement.prototype.viewTarget must be removed
PASS SVGPathElement.prototype.getPointAtLength must be moved to SVGGeometryElement.prototype
PASS SVGPathElement.prototype.getTotalLength must be moved to SVGGeometryElement.prototype
PASS SVGPathElement.prototype.pathLength must be moved to SVGGeometryElement.prototype
diff --git a/LayoutTests/svg/dom/SVGViewElement-viewTarget-expected.txt b/LayoutTests/svg/dom/SVGViewElement-viewTarget-expected.txt
deleted file mode 100644
index 916ce29..0000000
--- a/LayoutTests/svg/dom/SVGViewElement-viewTarget-expected.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-This test checks the SVGStringList API - utilizing the viewTarget property of SVGViewElement
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-
-Check initial viewTarget value
-PASS viewElement.viewTarget.toString() is "[object SVGStringList]"
-PASS viewElement.viewTarget.numberOfItems is 1
-PASS viewElement.viewTarget.getItem(0) is "rect-view"
-
-Check the uniqueness of viewTarget per SVGViewElement
-PASS viewElement.viewTarget is viewTarget
-PASS viewTarget.getItem(0) is "rect-view"
-
-Check modifying viewTarget
-PASS viewTarget.replaceItem('circle-view', 0) is "circle-view"
-PASS viewElement.viewTarget.getItem(0) is "circle-view"
-PASS viewElement.getAttribute('viewTarget') is "circle-view"
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
diff --git a/LayoutTests/svg/dom/SVGViewElement-viewTarget.html b/LayoutTests/svg/dom/SVGViewElement-viewTarget.html
deleted file mode 100644
index 0333529..0000000
--- a/LayoutTests/svg/dom/SVGViewElement-viewTarget.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<html>
-<head>
-<script src="../../resources/js-test-pre.js"></script>
-</head>
-<body>
-<p id="description"></p>
-<div id="console"></div>
-<script>
-description("This test checks the SVGStringList API - utilizing the viewTarget property of SVGViewElement");
-
-var viewElement = document.createElementNS("http://www.w3.org/2000/svg", "view");
-viewElement.setAttribute("viewTarget", "rect-view");
-
-debug("");
-debug("Check initial viewTarget value");
-shouldBeEqualToString("viewElement.viewTarget.toString()", "[object SVGStringList]");
-shouldBe("viewElement.viewTarget.numberOfItems", "1");
-shouldBeEqualToString("viewElement.viewTarget.getItem(0)", "rect-view");
-
-var viewTarget = viewElement.viewTarget;
-debug("");
-debug("Check the uniqueness of viewTarget per SVGViewElement");
-shouldBe("viewElement.viewTarget", "viewTarget");
-shouldBeEqualToString("viewTarget.getItem(0)", "rect-view");
-
-debug("");
-debug("Check modifying viewTarget");
-shouldBeEqualToString("viewTarget.replaceItem('circle-view', 0)", "circle-view");
-shouldBeEqualToString("viewElement.viewTarget.getItem(0)", "circle-view");
-shouldBeEqualToString("viewElement.getAttribute('viewTarget')", "circle-view");
-
-successfullyParsed = true;
-</script>
-<script src="../../resources/js-test-post.js"></script>
-</body>
-</html>
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index ad0ef9d..345f61a 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -1,3 +1,19 @@
+2019-10-22 Said Abou-Hallawa <sabouhallawa@apple.com>
+
+ [SVG2] Remove the 'viewTarget' property of SVGViewElement
+ https://bugs.webkit.org/show_bug.cgi?id=203217
+
+ Reviewed by Simon Fraser.
+
+ The interface of SVGViewElement is defined here:
+ https://www.w3.org/TR/SVG2/linking.html#InterfaceSVGViewElement.
+
+ * svg/SVGViewElement.cpp:
+ (WebCore::SVGViewElement::SVGViewElement):
+ (WebCore::SVGViewElement::parseAttribute):
+ * svg/SVGViewElement.h:
+ * svg/SVGViewElement.idl:
+
2019-10-22 Charlie Turner <cturner@igalia.com>
media/W3C/video/networkState/networkState_during_progress.html is flaky
diff --git a/Source/WebCore/svg/SVGViewElement.cpp b/Source/WebCore/svg/SVGViewElement.cpp
index 83eada3..22abee9 100644
--- a/Source/WebCore/svg/SVGViewElement.cpp
+++ b/Source/WebCore/svg/SVGViewElement.cpp
@@ -37,11 +37,6 @@
, SVGFitToViewBox(this)
{
ASSERT(hasTagName(SVGNames::viewTag));
-
- static std::once_flag onceFlag;
- std::call_once(onceFlag, [] {
- PropertyRegistry::registerProperty<SVGNames::viewTargetAttr, &SVGViewElement::m_viewTarget>();
- });
}
Ref<SVGViewElement> SVGViewElement::create(const QualifiedName& tagName, Document& document)
@@ -51,11 +46,6 @@
void SVGViewElement::parseAttribute(const QualifiedName& name, const AtomString& value)
{
- if (name == SVGNames::viewTargetAttr) {
- m_viewTarget->reset(value);
- return;
- }
-
SVGElement::parseAttribute(name, value);
SVGFitToViewBox::parseAttribute(name, value);
SVGZoomAndPan::parseAttribute(name, value);
diff --git a/Source/WebCore/svg/SVGViewElement.h b/Source/WebCore/svg/SVGViewElement.h
index 8721853..bcd6c18 100644
--- a/Source/WebCore/svg/SVGViewElement.h
+++ b/Source/WebCore/svg/SVGViewElement.h
@@ -37,8 +37,6 @@
using SVGElement::ref;
using SVGElement::deref;
- Ref<SVGStringList> viewTarget() { return m_viewTarget.copyRef(); }
-
const SVGSVGElement* targetElement() const { return m_targetElement.get(); }
void setTargetElement(const SVGSVGElement& targetElement) { m_targetElement = makeWeakPtr(targetElement); }
void resetTargetElement() { m_targetElement = nullptr; }
@@ -55,7 +53,6 @@
bool rendererIsNeeded(const RenderStyle&) final { return false; }
PropertyRegistry m_propertyRegistry { *this };
- Ref<SVGStringList> m_viewTarget { SVGStringList::create(this) };
WeakPtr<SVGSVGElement> m_targetElement { nullptr };
};
diff --git a/Source/WebCore/svg/SVGViewElement.idl b/Source/WebCore/svg/SVGViewElement.idl
index eb32a47..9807f31 100644
--- a/Source/WebCore/svg/SVGViewElement.idl
+++ b/Source/WebCore/svg/SVGViewElement.idl
@@ -24,7 +24,6 @@
*/
interface SVGViewElement : SVGElement {
- [SameObject] readonly attribute SVGStringList viewTarget;
};
SVGViewElement implements SVGFitToViewBox;