Commit decc3e86 authored by arko@motorola.com's avatar arko@motorola.com

Microdata: Implement PropertyNodeList interface.

https://bugs.webkit.org/show_bug.cgi?id=80269

Reviewed by Ryosuke Niwa.

Source/WebCore: 

Added support for PropertyNodeList interface. Currently HTMLPropertiesCollection.namedItem(name)
returns NodeList object. Made changes so that it will return PropertyNodeList object.

Implemented propertyNodeList.getValues() method. It returns an array of various values. Its
values are obtained from the "itemValue" DOM property of each of the elements represented by
the object, in tree order.

Spec: http://www.whatwg.org/specs/web-apps/current-work/multipage/common-dom-interfaces.html#propertynodelist

Tests: fast/dom/MicroData/nameditem-returns-propertynodelist.html
       fast/dom/MicroData/propertynodelist-getvalues-array-values-obtained-from-itemvalue-of-each-element.html
       fast/dom/MicroData/propertynodelist-getvalues-test.html
       fast/dom/MicroData/propertynodelist-test-add-remove-element.html

* CMakeLists.txt:
* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* UseJSC.cmake:
* UseV8.cmake:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/gobject/GNUmakefile.am:
* bindings/js/JSBindingsAllInOne.cpp:
* bindings/js/JSMicroDataItemValueCustom.cpp: Added.
(WebCore):
(WebCore::toJS): Added toJS() custom method. Returns Node if itemValue is node else returns String.
* bindings/v8/custom/V8MicroDataItemValueCustom.cpp: Added.
(WebCore):
(WebCore::toV8): Added toV8 custom code.
* dom/DynamicNodeList.cpp:
(WebCore::DynamicNodeListCacheBase::rootNode): Return document if owner node has itemref attribute specified.
(WebCore):
(WebCore::DynamicNodeListCacheBase::ownerNodeHasItemRefAttribute): Returns true if owner node has itemref attribute
specified with root type NodeListRootedAtDocumentIfOwnerHasItemrefAttr.
(WebCore::DynamicNodeListCacheBase::invalidateCache):
(WebCore::DynamicNodeList::itemWithName): Update itemrefElements cache if root type is
NodeListIsRootedAtDocumentIfOwnerHasItemrefAttr.
* dom/DynamicNodeList.h: Added m_hasItemRefElements in DynamicNodeListCacheBase to check if itemRefElmenets cache
is valid.
(WebCore::DynamicNodeListCacheBase::DynamicNodeListCacheBase):
(WebCore::DynamicNodeListCacheBase::isRootedAtDocument):
(DynamicNodeListCacheBase):
(WebCore::DynamicNodeListCacheBase::isItemRefElementsCacheValid):
(WebCore::DynamicNodeListCacheBase::setItemRefElementsCacheValid):
(WebCore::DynamicNodeListCacheBase::rootType): Returns cached root type.
(WebCore::DynamicNodeListCacheBase::shouldInvalidateTypeOnAttributeChange): Invalidate NodeListCache on itemref
attribute change.
* dom/Node.cpp:
(WebCore::Node::propertyNodeList):
* dom/Node.h:
(WebCore):
(Node):
* dom/PropertyNodeList.cpp: Added.
(WebCore):
(WebCore::PropertyNodeList::PropertyNodeList):
(WebCore::PropertyNodeList::~PropertyNodeList):
(WebCore::PropertyNodeList::elementIsPropertyOfRefElement): Checks if the testElement is a property of Microdata
item.
(WebCore::PropertyNodeList::updateRefElements):
(WebCore::PropertyNodeList::nodeMatches):
(WebCore::PropertyNodeList::getValues): Returns PropertyValueArray whose values are obtained from the
itemValue DOM property of each of the elements represented by the object, in tree order.
* dom/PropertyNodeList.h: Added.
(WebCore):
(PropertyNodeList):
(WebCore::PropertyNodeList::create):
* dom/PropertyNodeList.idl: Added.
* html/HTMLCollection.cpp:
(WebCore::DynamicNodeListCacheBase::itemCommon): Update itemrefElements cache if its a NodeListCollectionType with
root type NodeListIsRootedAtDocumentIfOwnerHasItemrefAttr.
* html/HTMLElement.cpp:
(WebCore::HTMLElement::properties):
(WebCore):
(WebCore::HTMLElement::getItemRefElements): Returns the ItemRefElements list of given element. Added this
method to share the code between HTMLPropertiesCollection and PropertyNodeList to update itemRefElements.
* html/HTMLElement.h:
(HTMLElement):
* html/HTMLPropertiesCollection.cpp:
(WebCore::HTMLPropertiesCollection::HTMLPropertiesCollection):
(WebCore::HTMLPropertiesCollection::updateRefElements):
(WebCore::HTMLPropertiesCollection::updateNameCache):
(WebCore::HTMLPropertiesCollection::namedItem): Return PropertyNodeList object instead of NodeList.
(WebCore::HTMLPropertiesCollection::hasNamedItem): Return true if it finds an item with given
name in the properties collection.
* html/HTMLPropertiesCollection.h: Removed m_hasItemRefElements member variable, now DynamicNodeListCacheBase
has isItemRefElementsCacheValid. Also removed m_hasPropertyNameCache, as DynamicNodeListCacheBase already has
hasNameCache() and setHasNameCache().
(WebCore):
(HTMLPropertiesCollection):
(WebCore::HTMLPropertiesCollection::invalidateCache):
(WebCore::HTMLPropertiesCollection::updatePropertyCache):
* html/HTMLPropertiesCollection.idl:
* html/MicroDataItemValue.idl: Added.
* page/DOMWindow.idl:

LayoutTests: 

Added test cases for PropertyNodeList interface and PropertyNodeList.getValues() method.
Spec: http://www.whatwg.org/specs/web-apps/current-work/multipage/common-dom-interfaces.html#propertynodelist

* fast/dom/MicroData/nameditem-returns-propertynodelist-expected.txt: Added.
* fast/dom/MicroData/nameditem-returns-propertynodelist.html: Added.
* fast/dom/MicroData/propertynodelist-getvalues-array-values-obtained-from-itemvalue-of-each-element-expected.txt: Added.
* fast/dom/MicroData/propertynodelist-getvalues-array-values-obtained-from-itemvalue-of-each-element.html: Added.
* fast/dom/MicroData/propertynodelist-getvalues-test-expected.txt: Added.
* fast/dom/MicroData/propertynodelist-getvalues-test.html: Added.
* fast/dom/MicroData/propertynodelist-test-add-remove-element-expected.txt: Added.
* fast/dom/MicroData/propertynodelist-test-add-remove-element.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123434 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent 729c9636
2012-07-24 Arko Saha <arko@motorola.com>
Microdata: Implement PropertyNodeList interface.
https://bugs.webkit.org/show_bug.cgi?id=80269
Reviewed by Ryosuke Niwa.
Added test cases for PropertyNodeList interface and PropertyNodeList.getValues() method.
Spec: http://www.whatwg.org/specs/web-apps/current-work/multipage/common-dom-interfaces.html#propertynodelist
* fast/dom/MicroData/nameditem-returns-propertynodelist-expected.txt: Added.
* fast/dom/MicroData/nameditem-returns-propertynodelist.html: Added.
* fast/dom/MicroData/propertynodelist-getvalues-array-values-obtained-from-itemvalue-of-each-element-expected.txt: Added.
* fast/dom/MicroData/propertynodelist-getvalues-array-values-obtained-from-itemvalue-of-each-element.html: Added.
* fast/dom/MicroData/propertynodelist-getvalues-test-expected.txt: Added.
* fast/dom/MicroData/propertynodelist-getvalues-test.html: Added.
* fast/dom/MicroData/propertynodelist-test-add-remove-element-expected.txt: Added.
* fast/dom/MicroData/propertynodelist-test-add-remove-element.html: Added.
2012-07-23 Balazs Ankes <bank@inf.u-szeged.hu>
[Qt] from platform/qt/fast/overflow to platform/qt/fast/xsl tests needs update after rebaseline and new testfonts
PropertiesCollection.namedItem(name) must return PropertyNodeList.
PASS element.properties.namedItem('foo') instanceof PropertyNodeList is true
PASS element.properties['foo'] instanceof PropertyNodeList is true
PropertyNodeList interface inherited from the NodeList interface.
PASS element.properties.namedItem('foo') instanceof NodeList is true
PASS element.properties['foo'] instanceof NodeList is true
PASS successfullyParsed is true
TEST COMPLETE
<!DOCTYPE html>
<html>
<head>
<script src="../../js/resources/js-test-pre.js"></script>
<script src="resources/microdata-common.js"></script>
</head>
<body>
<p>PropertiesCollection.namedItem(name) must return PropertyNodeList.</p>
<div itemscope id="microdataitem">
<div itemprop="foo"></div>
</div>
<div id="console"></div>
<script>
var element = document.getElementById("microdataitem");
shouldBeTrue("element.properties.namedItem('foo') instanceof PropertyNodeList");
shouldBeTrue("element.properties['foo'] instanceof PropertyNodeList");
debug("<br>PropertyNodeList interface inherited from the NodeList interface.")
shouldBeTrue("element.properties.namedItem('foo') instanceof NodeList");
shouldBeTrue("element.properties['foo'] instanceof NodeList");
</script>
<script src="../../js/resources/js-test-post.js"></script>
</body>
</html>
This test ensure that PropertyNodeList.getValues() array returns an array whose valuse are obtained from the itemValue DOM property of each of the elements represented by the object, in tree order.
property index 0, tag DIV
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 1, tag SPAN
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 2, tag META
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 3, tag AUDIO
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 4, tag EMBED
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 5, tag IFRAME
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 6, tag IMG
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 7, tag SOURCE
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 8, tag VIDEO
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 9, tag TRACK
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 10, tag A
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 11, tag AREA
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 12, tag LINK
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 13, tag P
PASS valuesArray[i] is propertyNodeList[i].itemValue
property index 14, tag SPAN
PASS valuesArray[i] is propertyNodeList[i].itemValue
PASS valuesArray.length is 15
PASS successfullyParsed is true
TEST COMPLETE
<!DOCTYPE html>
<html>
<head>
<script src="../../js/resources/js-test-pre.js"></script>
<script src="resources/microdata-common.js"></script>
</head>
<body>
<p>This test ensure that PropertyNodeList.getValues() array returns an array whose valuse are obtained from the itemValue DOM property of each of the elements represented by the object, in tree order.</p>
<div id="console"></div>
<div>
<div id="id1">
<div itemprop="foo">
<span itemprop="foo" itemscope></span>
</div>
<div itemscope itemref="id1" id="item">
<meta itemprop="foo" content="test" />
<audio itemprop="foo" src="audio.mp3"></audio>
<embed itemprop="foo" src="test.swf" />
<iframe itemprop="foo" src="test.html"></iframe>
<img itemprop="foo" src="test.jpg" />
<audio controls="controls">
<source itemprop="foo" src="song.mp3" type="audio/mp3" />
</audio>
<video itemprop="foo" src="video.mp4"></video>
<video src="video.mp4">
<track itemprop="foo" src="subtitles_en.vtt">
</video>
<a itemprop="foo" src="link.html"></a>
<map>
<area itemprop="foo" href="test.html" />
</map>
<link itemprop="foo" href="test.css" />
<p itemprop="foo">
<span itemprop="foo" itemscope>
<a itemprop="foo" src="test_anchor.html"></a>
</span>
</p>
</div>
</div>
<script>
var item = document.getElementById("item");
var propertyNodeList = item.properties.namedItem('foo');
var valuesArray = propertyNodeList.getValues();
for (var i = 0; i < propertyNodeList.length; i++) {
debug('property index ' + i + ', tag ' + propertyNodeList[i].tagName);
shouldBe("valuesArray[i]", "propertyNodeList[i].itemValue");
}
shouldBe("valuesArray.length", '15');
</script>
<script src="../../js/resources/js-test-post.js"></script>
</body>
</html>
PropertyNodeList.getValues() method test.
PropertyNodeList.getValues() method must return an array.
PASS element.properties.namedItem('foo').getValues() instanceof Array is true
PASS element.properties['foo'].getValues() instanceof Array is true
PASS successfullyParsed is true
TEST COMPLETE
<!DOCTYPE html>
<html>
<head>
<script src="../../js/resources/js-test-pre.js"></script>
<script src="resources/microdata-common.js"></script>
</head>
<body>
<p>PropertyNodeList.getValues() method test.</p>
<div itemscope id="item">
<div itemprop="foo"></div>
</div>
<div id="console"></div>
<script>
var element = document.getElementById('item');
debug("PropertyNodeList.getValues() method must return an array.");
shouldBeTrue("element.properties.namedItem('foo').getValues() instanceof Array");
shouldBeTrue("element.properties['foo'].getValues() instanceof Array");
</script>
<script src="../../js/resources/js-test-post.js"></script>
</body>
</html>
Microdata properties collection must update on adding or removing property.
PASS propertyNodeList.length == '1' is true
PASS propertyNodeList[0] == item.children[0] is true
Add a property to the item.
Created element of type: div
Set attribute: itemprop, value: foo
PASS propertyNodeList.length == 2 is true
PASS propertyNodeList[0] == item.children[0] is true
PASS propertyNodeList[1] == item.children[1] is true
Remove itemprop attribute of the first child.
PASS propertyNodeList.length == 1 is true
PASS propertyNodeList[0] == item.children[1] is true
Add itemprop attribute to the first child.
PASS propertyNodeList.length == 2 is true
PASS propertyNodeList[0] == item.children[0] is true
PASS propertyNodeList[1] == item.children[1] is true
Add itemref attribute.
PASS propertyNodeList.length == 3 is true
PASS propertyNodeList[0] == testElement is true
PASS propertyNodeList[1] == item.children[0] is true
PASS propertyNodeList[2] == item.children[1] is true
Remove itemref attribute.
PASS propertyNodeList.length == 2 is true
PASS propertyNodeList[0] == item.children[0] is true
PASS propertyNodeList[1] == item.children[1] is true
Add itemref attribute.
PASS propertyNodeList.length == 3 is true
PASS propertyNodeList[0] == testElement is true
PASS propertyNodeList[1] == item.children[0] is true
PASS propertyNodeList[2] == item.children[1] is true
PASS successfullyParsed is true
TEST COMPLETE
<!DOCTYPE html>
<html>
<head>
<script src="../../js/resources/js-test-pre.js"></script>
<script src="resources/microdata-common.js"></script>
</head>
<body>
<p>Microdata properties collection must update on adding or removing property.</p>
<div itemprop="foo" id="test">
</div>
<div itemscope id="microdata-item">
<p itemprop="foo"></p>
</div>
<div id="console"></div>
<script>
var item = document.getElementById('microdata-item');
var propertyNodeList = item.properties.namedItem('foo');
var testElement = document.getElementById('test');
shouldBeTrue("propertyNodeList.length == '1'");
shouldBeTrue("propertyNodeList[0] == item.children[0]");
debug('Add a property to the item.');
item.appendChild(createElement('div', {itemprop: 'foo'}));
shouldBeTrue("propertyNodeList.length == 2");
shouldBeTrue("propertyNodeList[0] == item.children[0]");
shouldBeTrue("propertyNodeList[1] == item.children[1]");
debug('Remove itemprop attribute of the first child.');
item.children[0].removeAttribute('itemprop');
shouldBeTrue("propertyNodeList.length == 1");
shouldBeTrue("propertyNodeList[0] == item.children[1]");
debug('Add itemprop attribute to the first child.');
item.children[0].setAttribute('itemprop', 'foo');
shouldBeTrue("propertyNodeList.length == 2");
shouldBeTrue("propertyNodeList[0] == item.children[0]");
shouldBeTrue("propertyNodeList[1] == item.children[1]");
debug('Add itemref attribute.');
item.setAttribute('itemref', 'test');
shouldBeTrue("propertyNodeList.length == 3");
shouldBeTrue("propertyNodeList[0] == testElement");
shouldBeTrue("propertyNodeList[1] == item.children[0]");
shouldBeTrue("propertyNodeList[2] == item.children[1]");
debug('Remove itemref attribute.');
item.removeAttribute('itemref');
shouldBeTrue("propertyNodeList.length == 2");
shouldBeTrue("propertyNodeList[0] == item.children[0]");
shouldBeTrue("propertyNodeList[1] == item.children[1]");
debug('Add itemref attribute.');
item.setAttribute('itemref', 'test');
shouldBeTrue("propertyNodeList.length == 3");
shouldBeTrue("propertyNodeList[0] == testElement");
shouldBeTrue("propertyNodeList[1] == item.children[0]");
shouldBeTrue("propertyNodeList[2] == item.children[1]");
</script>
<script src="../../js/resources/js-test-post.js"></script>
</body>
</html>
......@@ -354,6 +354,7 @@ SET(WebCore_IDL_FILES
dom/PopStateEvent.idl
dom/ProcessingInstruction.idl
dom/ProgressEvent.idl
dom/PropertyNodeList.idl
dom/RangeException.idl
dom/Range.idl
dom/RequestAnimationFrameCallback.idl
......@@ -464,6 +465,7 @@ SET(WebCore_IDL_FILES
html/ImageData.idl
html/MediaController.idl
html/MediaError.idl
html/MicroDataItemValue.idl
html/RadioNodeList.idl
html/TextMetrics.idl
html/TimeRanges.idl
......@@ -1131,6 +1133,7 @@ SET(WebCore_SOURCES
dom/PositionIterator.cpp
dom/ProcessingInstruction.cpp
dom/ProgressEvent.cpp
dom/PropertyNodeList.cpp
dom/QualifiedName.cpp
dom/Range.cpp
dom/RangeException.cpp
......
2012-07-24 Arko Saha <arko@motorola.com>
Microdata: Implement PropertyNodeList interface.
https://bugs.webkit.org/show_bug.cgi?id=80269
Reviewed by Ryosuke Niwa.
Added support for PropertyNodeList interface. Currently HTMLPropertiesCollection.namedItem(name)
returns NodeList object. Made changes so that it will return PropertyNodeList object.
Implemented propertyNodeList.getValues() method. It returns an array of various values. Its
values are obtained from the "itemValue" DOM property of each of the elements represented by
the object, in tree order.
Spec: http://www.whatwg.org/specs/web-apps/current-work/multipage/common-dom-interfaces.html#propertynodelist
Tests: fast/dom/MicroData/nameditem-returns-propertynodelist.html
fast/dom/MicroData/propertynodelist-getvalues-array-values-obtained-from-itemvalue-of-each-element.html
fast/dom/MicroData/propertynodelist-getvalues-test.html
fast/dom/MicroData/propertynodelist-test-add-remove-element.html
* CMakeLists.txt:
* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* UseJSC.cmake:
* UseV8.cmake:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/gobject/GNUmakefile.am:
* bindings/js/JSBindingsAllInOne.cpp:
* bindings/js/JSMicroDataItemValueCustom.cpp: Added.
(WebCore):
(WebCore::toJS): Added toJS() custom method. Returns Node if itemValue is node else returns String.
* bindings/v8/custom/V8MicroDataItemValueCustom.cpp: Added.
(WebCore):
(WebCore::toV8): Added toV8 custom code.
* dom/DynamicNodeList.cpp:
(WebCore::DynamicNodeListCacheBase::rootNode): Return document if owner node has itemref attribute specified.
(WebCore):
(WebCore::DynamicNodeListCacheBase::ownerNodeHasItemRefAttribute): Returns true if owner node has itemref attribute
specified with root type NodeListRootedAtDocumentIfOwnerHasItemrefAttr.
(WebCore::DynamicNodeListCacheBase::invalidateCache):
(WebCore::DynamicNodeList::itemWithName): Update itemrefElements cache if root type is
NodeListIsRootedAtDocumentIfOwnerHasItemrefAttr.
* dom/DynamicNodeList.h: Added m_hasItemRefElements in DynamicNodeListCacheBase to check if itemRefElmenets cache
is valid.
(WebCore::DynamicNodeListCacheBase::DynamicNodeListCacheBase):
(WebCore::DynamicNodeListCacheBase::isRootedAtDocument):
(DynamicNodeListCacheBase):
(WebCore::DynamicNodeListCacheBase::isItemRefElementsCacheValid):
(WebCore::DynamicNodeListCacheBase::setItemRefElementsCacheValid):
(WebCore::DynamicNodeListCacheBase::rootType): Returns cached root type.
(WebCore::DynamicNodeListCacheBase::shouldInvalidateTypeOnAttributeChange): Invalidate NodeListCache on itemref
attribute change.
* dom/Node.cpp:
(WebCore::Node::propertyNodeList):
* dom/Node.h:
(WebCore):
(Node):
* dom/PropertyNodeList.cpp: Added.
(WebCore):
(WebCore::PropertyNodeList::PropertyNodeList):
(WebCore::PropertyNodeList::~PropertyNodeList):
(WebCore::PropertyNodeList::elementIsPropertyOfRefElement): Checks if the testElement is a property of Microdata
item.
(WebCore::PropertyNodeList::updateRefElements):
(WebCore::PropertyNodeList::nodeMatches):
(WebCore::PropertyNodeList::getValues): Returns PropertyValueArray whose values are obtained from the
itemValue DOM property of each of the elements represented by the object, in tree order.
* dom/PropertyNodeList.h: Added.
(WebCore):
(PropertyNodeList):
(WebCore::PropertyNodeList::create):
* dom/PropertyNodeList.idl: Added.
* html/HTMLCollection.cpp:
(WebCore::DynamicNodeListCacheBase::itemCommon): Update itemrefElements cache if its a NodeListCollectionType with
root type NodeListIsRootedAtDocumentIfOwnerHasItemrefAttr.
* html/HTMLElement.cpp:
(WebCore::HTMLElement::properties):
(WebCore):
(WebCore::HTMLElement::getItemRefElements): Returns the ItemRefElements list of given element. Added this
method to share the code between HTMLPropertiesCollection and PropertyNodeList to update itemRefElements.
* html/HTMLElement.h:
(HTMLElement):
* html/HTMLPropertiesCollection.cpp:
(WebCore::HTMLPropertiesCollection::HTMLPropertiesCollection):
(WebCore::HTMLPropertiesCollection::updateRefElements):
(WebCore::HTMLPropertiesCollection::updateNameCache):
(WebCore::HTMLPropertiesCollection::namedItem): Return PropertyNodeList object instead of NodeList.
(WebCore::HTMLPropertiesCollection::hasNamedItem): Return true if it finds an item with given
name in the properties collection.
* html/HTMLPropertiesCollection.h: Removed m_hasItemRefElements member variable, now DynamicNodeListCacheBase
has isItemRefElementsCacheValid. Also removed m_hasPropertyNameCache, as DynamicNodeListCacheBase already has
hasNameCache() and setHasNameCache().
(WebCore):
(HTMLPropertiesCollection):
(WebCore::HTMLPropertiesCollection::invalidateCache):
(WebCore::HTMLPropertiesCollection::updatePropertyCache):
* html/HTMLPropertiesCollection.idl:
* html/MicroDataItemValue.idl: Added.
* page/DOMWindow.idl:
2012-07-24 Kentaro Hara <haraken@chromium.org>
[JSC] REGRESSION(r122912): CodeGeneratorJS.pm should not
......@@ -267,6 +267,7 @@
#include "JSPositionErrorCallback.cpp"
#include "JSProcessingInstruction.cpp"
#include "JSProgressEvent.cpp"
#include "JSPropertyNodeList.cpp"
#include "JSRadioNodeList.cpp"
#include "JSRange.cpp"
#include "JSRangeException.cpp"
......
......@@ -242,6 +242,8 @@ BINDING_IDLS = \
$(WebCore)/dom/PopStateEvent.idl \
$(WebCore)/dom/ProcessingInstruction.idl \
$(WebCore)/dom/ProgressEvent.idl \
$(WebCore)/dom/ProgressEvent.idl \
$(WebCore)/dom/PropertyNodeList.idl \
$(WebCore)/dom/Range.idl \
$(WebCore)/dom/RangeException.idl \
$(WebCore)/dom/RequestAnimationFrameCallback.idl \
......@@ -348,6 +350,7 @@ BINDING_IDLS = \
$(WebCore)/html/ImageData.idl \
$(WebCore)/html/MediaController.idl \
$(WebCore)/html/MediaError.idl \
$(WebCore)/html/MicroDataItemValue.idl \
$(WebCore)/html/RadioNodeList.idl \
$(WebCore)/html/TextMetrics.idl \
$(WebCore)/html/TimeRanges.idl \
......
......@@ -252,6 +252,7 @@ IDL_BINDINGS += \
$$PWD/dom/PopStateEvent.idl \
$$PWD/dom/ProcessingInstruction.idl \
$$PWD/dom/ProgressEvent.idl \
$$PWD/dom/PropertyNodeList.idl \
$$PWD/dom/RangeException.idl \
$$PWD/dom/Range.idl \
$$PWD/dom/RequestAnimationFrameCallback.idl \
......@@ -396,6 +397,7 @@ IDL_BINDINGS += \
$$PWD/html/ImageData.idl \
$$PWD/html/MediaController.idl \
$$PWD/html/MediaError.idl \
$$PWD/html/MicroDataItemValue.idl \
$$PWD/html/RadioNodeList.idl \
$$PWD/html/TextMetrics.idl \
$$PWD/html/TimeRanges.idl \
......
......@@ -405,6 +405,8 @@ webcore_built_sources += \
DerivedSources/WebCore/JSMessageEvent.h \
DerivedSources/WebCore/JSMessagePort.cpp \
DerivedSources/WebCore/JSMessagePort.h \
DerivedSources/WebCore/JSMicroDataItemValue.cpp \
DerivedSources/WebCore/JSMicroDataItemValue.h \
DerivedSources/WebCore/JSMouseEvent.cpp \
DerivedSources/WebCore/JSMouseEvent.h \
DerivedSources/WebCore/JSMutationCallback.cpp \
......@@ -477,6 +479,8 @@ webcore_built_sources += \
DerivedSources/WebCore/JSProcessingInstruction.h \
DerivedSources/WebCore/JSProgressEvent.cpp \
DerivedSources/WebCore/JSProgressEvent.h \
DerivedSources/WebCore/JSPropertyNodeList.cpp \
DerivedSources/WebCore/JSPropertyNodeList.h \
DerivedSources/WebCore/JSRadioNodeList.cpp \
DerivedSources/WebCore/JSRadioNodeList.h \
DerivedSources/WebCore/JSRange.cpp \
......@@ -795,6 +799,7 @@ dom_binding_idls += \
$(WebCore)/dom/PopStateEvent.idl \
$(WebCore)/dom/ProcessingInstruction.idl \
$(WebCore)/dom/ProgressEvent.idl \
$(WebCore)/dom/PropertyNodeList.idl \
$(WebCore)/dom/Range.idl \
$(WebCore)/dom/RangeException.idl \
$(WebCore)/dom/ShadowRoot.idl \
......@@ -900,6 +905,7 @@ dom_binding_idls += \
$(WebCore)/html/MediaError.idl \
$(WebCore)/html/MediaKeyError.idl \
$(WebCore)/html/MediaKeyEvent.idl \
$(WebCore)/html/MicroDataItemValue.idl \
$(WebCore)/html/RadioNodeList.idl \
$(WebCore)/html/TextMetrics.idl \
$(WebCore)/html/TimeRanges.idl \
......@@ -1485,6 +1491,7 @@ webcore_sources += \
Source/WebCore/bindings/js/JSMessageEventCustom.cpp \
Source/WebCore/bindings/js/JSMessagePortCustom.cpp \
Source/WebCore/bindings/js/JSMessagePortCustom.h \
Source/WebCore/bindings/js/JSMicroDataItemValueCustom.cpp \
Source/WebCore/bindings/js/JSMutationCallbackCustom.cpp \
Source/WebCore/bindings/js/JSMutationObserverCustom.cpp \
Source/WebCore/bindings/js/JSNamedNodeMapCustom.cpp \
......@@ -2016,6 +2023,8 @@ webcore_sources += \
Source/WebCore/dom/ProcessingInstruction.h \
Source/WebCore/dom/ProgressEvent.cpp \
Source/WebCore/dom/ProgressEvent.h \
Source/WebCore/dom/PropertyNodeList.cpp \
Source/WebCore/dom/PropertyNodeList.h \
Source/WebCore/dom/QualifiedName.cpp \
Source/WebCore/dom/QualifiedName.h \
Source/WebCore/dom/RangeBoundaryPoint.h \
......
......@@ -167,6 +167,7 @@ SOURCES += \
bindings/js/JSMessageEventCustom.cpp \
bindings/js/JSMessagePortCustom.cpp \
bindings/js/JSMessagePortCustom.h \
bindings/js/JSMicroDataItemValueCustom.cpp \
bindings/js/JSMutationCallbackCustom.cpp \
bindings/js/JSMutationObserverCustom.cpp \
bindings/js/JSNamedNodeMapCustom.cpp \
......@@ -440,6 +441,7 @@ SOURCES += \
dom/PositionIterator.cpp \
dom/ProcessingInstruction.cpp \
dom/ProgressEvent.cpp \
dom/PropertyNodeList.cpp \
dom/QualifiedName.cpp \
dom/Range.cpp \
dom/RangeException.cpp \
......@@ -1563,6 +1565,7 @@ HEADERS += \
dom/PositionIterator.h \
dom/ProcessingInstruction.h \
dom/ProgressEvent.h \
dom/PropertyNodeList.h \
dom/QualifiedName.h \
dom/Range.h \
dom/RegisteredEventListener.h \
......
......@@ -115,6 +115,7 @@ LIST(APPEND WebCore_SOURCES
bindings/js/JSMessageChannelCustom.cpp
bindings/js/JSMessageEventCustom.cpp
bindings/js/JSMessagePortCustom.cpp
bindings/js/JSMicroDataItemValueCustom.cpp
bindings/js/JSMutationCallbackCustom.cpp
bindings/js/JSMutationObserverCustom.cpp
bindings/js/JSNamedNodeMapCustom.cpp
......
......@@ -130,6 +130,7 @@ LIST(APPEND WebCore_SOURCES
bindings/v8/custom/V8MessageChannelConstructor.cpp
bindings/v8/custom/V8MessageEventCustom.cpp
bindings/v8/custom/V8MessagePortCustom.cpp
bindings/v8/custom/V8MicroDataItemValueCustom.cpp
bindings/v8/custom/V8MutationCallbackCustom.cpp
bindings/v8/custom/V8MutationObserverCustom.cpp
bindings/v8/custom/V8NamedNodeMapCustom.cpp
......
......@@ -991,6 +991,7 @@
'dom/PopStateEvent.idl',
'dom/ProcessingInstruction.idl',
'dom/ProgressEvent.idl',
'dom/PropertyNodeList.idl',
'dom/Range.idl',
'dom/RangeException.idl',
'dom/RequestAnimationFrameCallback.idl',
......@@ -1098,6 +1099,7 @@
'html/ImageData.idl',
'html/MediaController.idl',
'html/MediaError.idl',
'html/MicroDataItemValue.idl',
'html/MediaKeyError.idl',
'html/MediaKeyEvent.idl',
'html/RadioNodeList.idl',
......@@ -2039,6 +2041,7 @@
'bindings/js/JSMessageEventCustom.cpp',
'bindings/js/JSMessagePortCustom.cpp',
'bindings/js/JSMessagePortCustom.h',
'bindings/js/JSMicroDataItemValueCustom.cpp',
'bindings/js/JSMutationCallbackCustom.cpp',
'bindings/js/JSMutationObserverCustom.cpp',
'bindings/js/JSNamedNodeMapCustom.cpp',
......@@ -2350,6 +2353,7 @@
'bindings/v8/custom/V8MessageChannelConstructor.cpp',
'bindings/v8/custom/V8MessageEventCustom.cpp',
'bindings/v8/custom/V8MessagePortCustom.cpp',
'bindings/v8/custom/V8MicroDataItemValueCustom.cpp',
'bindings/v8/custom/V8MutationCallbackCustom.cpp',
'bindings/v8/custom/V8MutationObserverCustom.cpp',
'bindings/v8/custom/V8NamedNodeMapCustom.cpp',
......@@ -5242,6 +5246,8 @@
'dom/ProcessingInstruction.h',
'dom/ProgressEvent.cpp',
'dom/ProgressEvent.h',
'dom/PropertyNodeList.cpp',
'dom/PropertyNodeList.h',
'dom/QualifiedName.cpp',
'dom/Range.cpp',
'dom/RangeException.cpp',
......
......@@ -11309,6 +11309,62 @@
RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\JSMessagePort.h"
>
</File>
<File
RelativePath="$(ConfigurationBuildDir)\obj\$(ProjectName)\DerivedSources\JSMicroDataItemValue.cpp"
>
<FileConfiguration
Name="Debug|Win32"
ExcludedFromBuild="true"
>
<Tool
Name="VCCLCompilerTool"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
ExcludedFromBuild="true"
>
<Tool
Name="VCCLCompilerTool"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug_Cairo_CFLite|Win32"