summaryrefslogtreecommitdiffstats
path: root/webkit/port
diff options
context:
space:
mode:
authordarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-01-08 22:29:46 +0000
committerdarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-01-08 22:29:46 +0000
commitd211bb91ddb9f4bfef451fabcc6f2f7438009b5a (patch)
tree31824344590179d08f19911fd6c03606a91d672c /webkit/port
parentfdec9369f6856002db6bccdf1ebcebf7adbb89af (diff)
downloadchromium_src-d211bb91ddb9f4bfef451fabcc6f2f7438009b5a.zip
chromium_src-d211bb91ddb9f4bfef451fabcc6f2f7438009b5a.tar.gz
chromium_src-d211bb91ddb9f4bfef451fabcc6f2f7438009b5a.tar.bz2
WebKit merge 39660:39711, part 2. Covers webkit/ changes.
R=ojan Review URL: http://codereview.chromium.org/17284 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7767 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/port')
-rw-r--r--webkit/port/DerivedSources.make1
-rw-r--r--webkit/port/bindings/v8/v8_custom.cpp24
-rw-r--r--webkit/port/bindings/v8/v8_custom.h3
-rw-r--r--webkit/port/bindings/v8/v8_index.cpp1
-rw-r--r--webkit/port/bindings/v8/v8_index.h1
-rw-r--r--webkit/port/bindings/v8/v8_proxy.cpp1
6 files changed, 31 insertions, 0 deletions
diff --git a/webkit/port/DerivedSources.make b/webkit/port/DerivedSources.make
index cd1845f..b53fbf4 100644
--- a/webkit/port/DerivedSources.make
+++ b/webkit/port/DerivedSources.make
@@ -647,6 +647,7 @@ all : \
V8DOMImplementation.h \
V8DOMParser.h \
V8DOMSelection.h \
+ V8DOMStringList.h \
V8DOMWindow.h \
V8Database.h \
V8Document.h \
diff --git a/webkit/port/bindings/v8/v8_custom.cpp b/webkit/port/bindings/v8/v8_custom.cpp
index 5c75ea7..c1be432 100644
--- a/webkit/port/bindings/v8/v8_custom.cpp
+++ b/webkit/port/bindings/v8/v8_custom.cpp
@@ -55,6 +55,7 @@
#include "ClipboardEvent.h"
#include "Console.h"
#include "DOMParser.h"
+#include "DOMStringList.h"
#include "DOMWindow.h"
#include "Document.h"
#include "DocumentFragment.h"
@@ -800,6 +801,29 @@ CALLBACK_FUNC_DECL(HTMLOptionsCollectionAdd) {
}
+INDEXED_PROPERTY_GETTER(DOMStringList) {
+ INC_STATS("DOM.DOMStringList.IndexedPropertyGetter");
+ DOMStringList* imp =
+ V8Proxy::DOMWrapperToNative<DOMStringList>(info.Holder());
+ return v8String(imp->item(index));
+}
+
+
+CALLBACK_FUNC_DECL(DOMStringListItem) {
+ INC_STATS("DOM.DOMStringListItem()");
+ if (args.Length() == 0)
+ return v8::Null();
+ uint32_t index = args[0]->Uint32Value();
+
+ DOMStringList* imp =
+ V8Proxy::DOMWrapperToNative<DOMStringList>(args.Holder());
+ if (index >= imp->length())
+ return v8::Null();
+
+ return v8String(imp->item(index));
+}
+
+
CALLBACK_FUNC_DECL(DOMWindowAddEventListener) {
INC_STATS("DOM.DOMWindow.addEventListener()");
DOMWindow* imp = V8Proxy::ToNativeObject<DOMWindow>(
diff --git a/webkit/port/bindings/v8/v8_custom.h b/webkit/port/bindings/v8/v8_custom.h
index a2555bc..c839939 100644
--- a/webkit/port/bindings/v8/v8_custom.h
+++ b/webkit/port/bindings/v8/v8_custom.h
@@ -339,6 +339,9 @@ DECLARE_CALLBACK(NodeIteratorPreviousNode)
// Custom implementation of NodeFilter function
DECLARE_CALLBACK(NodeFilterAcceptNode)
+DECLARE_INDEXED_PROPERTY_GETTER(DOMStringList)
+DECLARE_CALLBACK(DOMStringListItem)
+
DECLARE_NAMED_PROPERTY_GETTER(DOMWindow)
DECLARE_INDEXED_PROPERTY_GETTER(DOMWindow)
DECLARE_NAMED_ACCESS_CHECK(DOMWindow)
diff --git a/webkit/port/bindings/v8/v8_index.cpp b/webkit/port/bindings/v8/v8_index.cpp
index 5da9c23..29ff3aa 100644
--- a/webkit/port/bindings/v8/v8_index.cpp
+++ b/webkit/port/bindings/v8/v8_index.cpp
@@ -148,6 +148,7 @@
#include "V8TextEvent.h"
#include "V8DOMCoreException.h"
#include "V8DOMParser.h"
+#include "V8DOMStringList.h"
#include "V8DOMWindow.h"
#include "V8Event.h"
#include "V8EventException.h"
diff --git a/webkit/port/bindings/v8/v8_index.h b/webkit/port/bindings/v8/v8_index.h
index 13337d3..159932d 100644
--- a/webkit/port/bindings/v8/v8_index.h
+++ b/webkit/port/bindings/v8/v8_index.h
@@ -257,6 +257,7 @@ typedef v8::Persistent<v8::FunctionTemplate> (*FunctionTemplateFactory)();
V(DOMIMPLEMENTATION, DOMImplementation) \
V(DOMPARSER, DOMParser) \
V(DOMSELECTION, DOMSelection) \
+ V(DOMSTRINGLIST, DOMStringList) \
V(DOMWINDOW, DOMWindow) \
V(EVENT, Event) \
V(EVENTEXCEPTION, EventException) \
diff --git a/webkit/port/bindings/v8/v8_proxy.cpp b/webkit/port/bindings/v8/v8_proxy.cpp
index b040809..19ce50a 100644
--- a/webkit/port/bindings/v8/v8_proxy.cpp
+++ b/webkit/port/bindings/v8/v8_proxy.cpp
@@ -74,6 +74,7 @@
#include "DOMImplementation.h"
#include "DOMParser.h"
#include "DOMSelection.h"
+#include "DOMStringList.h"
#include "DOMWindow.h"
#include "Entity.h"
#include "EventListener.h"